{ description = "flake for nixos-pulse"; inputs = { nixpkgs = { url = "github:NixOS/nixpkgs/nixos-23.05"; }; tuxedo-nixos = { url = "github:blitz/tuxedo-nixos"; }; home-manager = { url = "github:nix-community/home-manager/release-23.05"; inputs.nixpkgs.follows = "nixpkgs"; }; emacs-overlay = { url = "github:nix-community/emacs-overlay"; inputs.nixpkgs.follows = "nixpkgs"; }; disko = { url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; }; nur = { url = "github:nix-community/NUR"; inputs.nixpkgs.follows = "nixpkgs"; }; nix-wallpaper = { url = "github:lunik1/nix-wallpaper"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = inputs: let system = "x86_64-linux"; customPkgs = import inputs.nixpkgs { system = "${system}"; overlays = [inputs.emacs-overlay.overlay]; config = { allowUnfree = true; }; }; pkgs = inputs.nixpkgs.legacyPackages.${system}; in { formatter = { x86_64-linux = inputs.nixpkgs.legacyPackages.x86_64-linux.alejandra; }; diskoConfigurations = { nixos-pulse = import ./disko.nix; }; homeConfigurations = { "tristand" = inputs.home-manager.lib.homeManagerConfiguration { inherit pkgs; modules = [ ./home.nix inputs.nur.hmModules.nur { _module.args.customPkgs = customPkgs; _module.args.inputs = inputs; # inherit customPkgs; # pkgs.pkgs = customPkgs; # home-manager.useUserPackages = true; # home-manager.useGlobalPkgs = true; } ]; }; }; nixosConfigurations = { nixos-pulse = inputs.nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ ./configuration.nix ./users.nix ./disko.nix inputs.disko.nixosModules.disko inputs.home-manager.nixosModules.home-manager inputs.tuxedo-nixos.nixosModules.default inputs.nur.nixosModules.nur { _module.args.customPkgs = customPkgs; # _module.args.nix-wallpaper = nix-wallpaper; _module.args.inputs = inputs; nixpkgs.pkgs = customPkgs; home-manager.useUserPackages = true; home-manager.useGlobalPkgs = true; hardware.tuxedo-control-center.enable = true; hardware.tuxedo-control-center.package = inputs.tuxedo-nixos.packages.x86_64-linux.default; } ]; }; }; }; }