diff --git a/flake.nix b/flake.nix index d9cce9e..999e79b 100644 --- a/flake.nix +++ b/flake.nix @@ -1,31 +1,41 @@ { - description = "My NixOS system configuration"; + description = "My NixOS system configuration"; - inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - nix-software-center.url = "github:vlinkz/nix-software-center"; - nix-doom-emacs.url = "github:nix-community/nix-doom-emacs"; - home-manager = { - url = "github:nix-community/home-manager"; - inputs.nixpkgs.follows = "nixpkgs"; + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + nix-software-center.url = "github:vlinkz/nix-software-center"; + nix-doom-emacs.url = "github:nix-community/nix-doom-emacs"; + home-manager = { + url = "github:nix-community/home-manager"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; - }; - outputs = { self, nixpkgs, home-manager, ... }@inputs: { - nixosConfigurations.ultrapc = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - specialArgs = { inherit inputs; }; - modules = [ - ./ultrapc/configuration.nix - ]; + outputs = { self, nixpkgs, home-manager, ... }@inputs: { + nixosConfigurations.ultrapc = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + specialArgs = { inherit inputs; }; + modules = [ + ./ultrapc/configuration.nix + { + environment.etc."nix/inputs/nixpkgs".source = nixpkgs.outPath; + nix.nixPath = [ "nixpkgs=/etc/nix/inputs/nixpkgs" ]; + } + ]; + }; + defaultPackage.x86_64-linux = home-manager.defaultPackage.x86_64-linux; + homeConfigurations = { + ultra = home-manager.lib.homeManagerConfiguration { + pkgs = nixpkgs.legacyPackages.x86_64-linux; + extraSpecialArgs = { inherit inputs; }; + modules = [ + ./ultrapc/home.nix + (args: { # https://ayats.org/blog/channels-to-flakes + xdg.configFile."nix/inputs/nixpkgs".source = nixpkgs.outPath; + home.sessionVariables.NIX_PATH = "nixpkgs=${args.config.xdg.configHome}/nix/inputs/nixpkgs$\{NIX_PATH:+:$NIX_PATH}"; + }) + ]; + }; + }; }; - defaultPackage.x86_64-linux = home-manager.defaultPackage.x86_64-linux; - homeConfigurations = { - ultra = home-manager.lib.homeManagerConfiguration { - pkgs = nixpkgs.legacyPackages.x86_64-linux; - extraSpecialArgs = { inherit inputs; }; - modules = [ ./ultrapc/home.nix ]; - }; - }; - }; } diff --git a/ultrapc/home.nix b/ultrapc/home.nix index dabeda9..c5ec189 100644 --- a/ultrapc/home.nix +++ b/ultrapc/home.nix @@ -76,6 +76,7 @@ in { ghostwriter skypeforlinux man-pages + ckan ]; }; programs = {