diff --git a/flake.nix b/flake.nix index 06ed081..1bb6817 100644 --- a/flake.nix +++ b/flake.nix @@ -84,6 +84,7 @@ }; homeModules = mapAttrs (_: f: ./. + "/home-modules/${f}") { common = "common.nix"; + gui = "gui.nix"; }; in # Platform independent stuff diff --git a/home-modules/common.nix b/home-modules/common.nix index 4addeac..0a6e8d0 100644 --- a/home-modules/common.nix +++ b/home-modules/common.nix @@ -25,17 +25,6 @@ mkMerge [ enable = mkDefault true; }; - lsd = { - enable = mkDefault true; - }; - - starship = { - enable = mkDefault true; - settings = { - aws.disabled = true; - }; - }; - direnv = { enable = mkDefault true; nix-direnv.enable = true; @@ -53,6 +42,10 @@ mkMerge [ iperf3 ]; + sessionVariables = { + EDITOR = "vim"; + }; + language.base = mkDefault "en_IE.UTF-8"; # The flake passes a default setting, but we don't care about that @@ -70,6 +63,8 @@ mkMerge [ }; }; + fonts.fontconfig.enable = true; + home = { packages = with pkgs; [ nix diff --git a/home-modules/gui.nix b/home-modules/gui.nix new file mode 100644 index 0000000..395c885 --- /dev/null +++ b/home-modules/gui.nix @@ -0,0 +1,36 @@ +{ lib, pkgs, config, ... }: +let + inherit (lib) mkIf mkDefault; + inherit (lib.my) mkBoolOpt'; + + cfg = config.my.gui; +in +{ + options.my.gui = { + enable = mkBoolOpt' true "Enable settings and packages meant for graphical systems"; + }; + + config = mkIf cfg.enable { + programs = { + lsd = { + enable = mkDefault true; + enableAliases = mkDefault true; + }; + + starship = { + enable = mkDefault true; + settings = { + aws.disabled = true; + }; + }; + }; + + home = { + packages = with pkgs; [ + (pkgs.nerdfonts.override { + fonts = [ "DroidSansMono" "SourceCodePro" ]; + }) + ]; + }; + }; +}