diff --git a/flake.nix b/flake.nix index bb93793..06a0799 100644 --- a/flake.nix +++ b/flake.nix @@ -60,116 +60,100 @@ wayland.inputs.nixpkgs.follows = "nixpkgs"; }; - outputs = - { self - , nixos - , nixos-hardware - , agenix - , bud - , deploy - , digga - , emacs - , fenix - , home - , neovim - , nur - , nvfetcher - , wayland - , ... - }@inputs: - digga.lib.mkFlake - { - inherit self inputs; + outputs = { self, nixos, nixos-hardware, agenix, bud, deploy, digga, emacs + , fenix, home, neovim, nur, nvfetcher, wayland, ... }@inputs: + digga.lib.mkFlake { + inherit self inputs; - channelsConfig = { allowUnfree = true; }; + channelsConfig = { allowUnfree = true; }; - supportedSystems = [ "x86_64-linux" ]; + supportedSystems = [ "x86_64-linux" ]; - channels = { - nixos = { - imports = [ (digga.lib.importOverlays ./overlays) ]; - overlays = [ ./pkgs/default.nix ]; - }; - latest = { }; + channels = { + nixos = { + imports = [ (digga.lib.importOverlays ./overlays) ]; + overlays = [ ./pkgs/default.nix ]; + }; + latest = { }; - nixpkgs = { - imports = [ (digga.lib.importOverlays ./overlays) ]; - overlays = [ ./pkgs/default.nix ]; - }; + nixpkgs = { + imports = [ (digga.lib.importOverlays ./overlays) ]; + overlays = [ ./pkgs/default.nix ]; + }; + }; + + lib = import ./lib { lib = digga.lib // nixos.lib; }; + + sharedOverlays = [ + (final: prev: { + __dontExport = true; + lib = prev.lib.extend (lfinal: lprev: { our = self.lib; }); + }) + agenix.overlay + emacs.overlay + fenix.overlay + neovim.overlay + nur.overlay + nvfetcher.overlay + + ]; + + nixos = { + hostDefaults = { + system = "x86_64-linux"; + channelName = "nixpkgs"; + imports = [ (digga.lib.importExportableModules ./modules) ]; + modules = [ + { lib.our = self.lib; } + digga.nixosModules.bootstrapIso + digga.nixosModules.nixConfig + home.nixosModules.home-manager + agenix.nixosModules.age + bud.nixosModules.bud + ]; }; - lib = import ./lib { lib = digga.lib // nixos.lib; }; - - sharedOverlays = [ - (final: prev: { - __dontExport = true; - lib = prev.lib.extend (lfinal: lprev: { our = self.lib; }); - }) - agenix.overlay - emacs.overlay - fenix.overlay - neovim.overlay - nur.overlay - nvfetcher.overlay - - ]; - - nixos = { - hostDefaults = { + imports = [ (digga.lib.importHosts ./hosts) ]; + hosts = { + zaphod = { system = "x86_64-linux"; channelName = "nixpkgs"; - imports = [ (digga.lib.importExportableModules ./modules) ]; - modules = [ - { lib.our = self.lib; } - digga.nixosModules.bootstrapIso - digga.nixosModules.nixConfig - home.nixosModules.home-manager - agenix.nixosModules.age - bud.nixosModules.bud - ]; - }; - - imports = [ (digga.lib.importHosts ./hosts) ]; - hosts = { - zaphod = { - system = "x86_64-linux"; - channelName = "nixpkgs"; - }; - }; - importables = rec { - profiles = digga.lib.rakeLeaves ./profiles // { - users = digga.lib.rakeLeaves ./users; - }; - suites = with profiles; rec { - base = [ core users.mrhedgehog users.root ]; - }; }; }; - - home = { - imports = [ (digga.lib.importExportableModules ./users/modules) ]; - modules = [ ]; - importables = rec { - profiles = digga.lib.rakeLeaves ./users/profiles; - suites = with profiles; rec { - base = [ atuin direnv fish git gpg home misc ssh starship ]; - }; + importables = rec { + profiles = digga.lib.rakeLeaves ./profiles // { + users = digga.lib.rakeLeaves ./users; + }; + suites = with profiles; rec { + base = [ core users.mrhedgehog users.root ]; }; - users = { mrhedgehog = { suites, ... }: { imports = suites.base; }; }; }; + }; - devshell = ./shell; + home = { + imports = [ (digga.lib.importExportableModules ./users/modules) ]; + modules = [ ]; + importables = rec { + profiles = digga.lib.rakeLeaves ./users/profiles; + suites = with profiles; rec { + base = [ atuin direnv fish git gpg home misc ssh starship ]; + }; + }; + users = { mrhedgehog = { suites, ... }: { imports = suites.base; }; }; + }; - homeConfigurations = - digga.lib.mkHomeConfigurations self.nixosConfigurations; + devshell = ./shell; - deploy.nodes = digga.lib.mkDeployNodes self.nixosConfigurations { }; + homeConfigurations = + digga.lib.mkHomeConfigurations self.nixosConfigurations; - defaultTemplate = self.templates.bud; - templates.bud.path = ./.; - templates.bud.description = "bud template"; + deploy.nodes = digga.lib.mkDeployNodes self.nixosConfigurations { }; - } // { + defaultTemplate = self.templates.bud; + templates.bud.path = ./.; + templates.bud.description = "bud template"; + + } // { budModules = { devos = import ./shell/bud; }; }; }