diff --git a/modules/default.nix b/modules/default.nix index 2cdbfa8..e8e95f8 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -2,6 +2,10 @@ imports = [ ./system ./flake - ./home ]; + + flake.homeModules = rec { + settei = ./home; + default = settei; + }; } diff --git a/modules/home/default.nix b/modules/home/default.nix index e959440..550d089 100644 --- a/modules/home/default.nix +++ b/modules/home/default.nix @@ -1,5 +1,64 @@ +# TODO: Make this module not rely on OS config being present { - flake.homeModules = { - settei = ./settei; + osConfig, + pkgs, + lib, + inputs', + machineName, + ... +}@args: +let + # TODO: Conditionally define based on whether we're in a system configuration or not + fishOverlayModule = lib.mkIf (!args ? osConfig) { + # See modules/system/common/default.nix for reasoning. + nixpkgs.overlays = [ (_: _: { inherit (inputs'.settei.packages) fish; }) ]; }; +in +{ + _file = ./default.nix; + + imports = [ + ./desktop + fishOverlayModule + ./xdg.nix + ]; + + programs.fish.enable = true; + programs.nix-index.enable = true; + programs.ssh = { + enable = true; + addKeysToAgent = "yes"; + }; + programs.git = { + enable = true; + difftastic.enable = true; + lfs.enable = true; + userName = "Nikodem Rabuliński"; + userEmail = lib.mkDefault "nikodem@rabulinski.com"; + # TODO: settei options for home-manager module + signing = { + key = osConfig.settei.sane-defaults.allSshKeys.${machineName}; + signByDefault = true; + }; + extraConfig = { + gpg.format = "ssh"; + push.followTags = true; + diff.algorithm = "histogram"; + diff.submodule = "log"; + status.submoduleSummary = true; + help.autocorrect = "prompt"; + merge.conflictstyle = "zdiff3"; + branch.sort = "-committerdate"; + tag.sort = "taggerdate"; + log.date = "iso"; + rebase.missingCommitsCheck = "error"; + }; + }; + + home.packages = [ + inputs'.settei.packages.base-packages + pkgs.nh + ]; + + home.sessionVariables.EDITOR = "hx"; } diff --git a/modules/home/settei/desktop/default.nix b/modules/home/desktop/default.nix similarity index 100% rename from modules/home/settei/desktop/default.nix rename to modules/home/desktop/default.nix diff --git a/modules/home/settei/desktop/zellij.nix b/modules/home/desktop/zellij.nix similarity index 100% rename from modules/home/settei/desktop/zellij.nix rename to modules/home/desktop/zellij.nix diff --git a/modules/home/settei/default.nix b/modules/home/settei/default.nix deleted file mode 100644 index 550d089..0000000 --- a/modules/home/settei/default.nix +++ /dev/null @@ -1,64 +0,0 @@ -# TODO: Make this module not rely on OS config being present -{ - osConfig, - pkgs, - lib, - inputs', - machineName, - ... -}@args: -let - # TODO: Conditionally define based on whether we're in a system configuration or not - fishOverlayModule = lib.mkIf (!args ? osConfig) { - # See modules/system/common/default.nix for reasoning. - nixpkgs.overlays = [ (_: _: { inherit (inputs'.settei.packages) fish; }) ]; - }; -in -{ - _file = ./default.nix; - - imports = [ - ./desktop - fishOverlayModule - ./xdg.nix - ]; - - programs.fish.enable = true; - programs.nix-index.enable = true; - programs.ssh = { - enable = true; - addKeysToAgent = "yes"; - }; - programs.git = { - enable = true; - difftastic.enable = true; - lfs.enable = true; - userName = "Nikodem Rabuliński"; - userEmail = lib.mkDefault "nikodem@rabulinski.com"; - # TODO: settei options for home-manager module - signing = { - key = osConfig.settei.sane-defaults.allSshKeys.${machineName}; - signByDefault = true; - }; - extraConfig = { - gpg.format = "ssh"; - push.followTags = true; - diff.algorithm = "histogram"; - diff.submodule = "log"; - status.submoduleSummary = true; - help.autocorrect = "prompt"; - merge.conflictstyle = "zdiff3"; - branch.sort = "-committerdate"; - tag.sort = "taggerdate"; - log.date = "iso"; - rebase.missingCommitsCheck = "error"; - }; - }; - - home.packages = [ - inputs'.settei.packages.base-packages - pkgs.nh - ]; - - home.sessionVariables.EDITOR = "hx"; -} diff --git a/modules/home/settei/xdg.nix b/modules/home/xdg.nix similarity index 100% rename from modules/home/settei/xdg.nix rename to modules/home/xdg.nix