{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs"; # hyprland.url = "github:hyprwm/Hyprland"; zen-browser = { url = "github:youwen5/zen-browser-flake"; inputs.nixpkgs.follows = "nixpkgs"; }; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, zen-browser, ... } @inputs: let system = "x86_64-linux"; inherit (inputs) nixpkgs; eachSystem = nixpkgs.lib.genAttrs (import inputs.systems); pkgsFor = eachSystem (system: import nixpkgs {localSystem = system;}); in { nixosConfigurations.nixos = nixpkgs.lib.nixosSystem { inherit system; modules = [ ./configuration.nix ./hardware-configuration.nix inputs.home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.extraSpecialArgs = { inherit self; }; home-manager.users.user = import ./home-manager/home.nix; home-manager.backupFileExtension = "backup"; # Optionally, use home-manager.extraSpecialArgs to pass arguments to home.nix } (let inputs = { zen = zen-browser; }; in { config, pkgs, ... }: { environment.systemPackages = [ pkgs.git inputs.zen.packages.${pkgs.stdenv.hostPlatform.system}.default ]; } ) ]; }; }; }