diff --git a/nix-conf/home-manager/base/alacritty.nix b/nix-conf/home-manager/base/alacritty.nix new file mode 100644 index 0000000..a2c201a --- /dev/null +++ b/nix-conf/home-manager/base/alacritty.nix @@ -0,0 +1,35 @@ +{ config +, proj_root +, myLib +, ... +}: +let + inherit (myLib) fromYaml; + actualConfig = fromYaml (builtins.readFile "${proj_root}//alacritty/alacritty.yml"); + cfg = config.base.alacritty; +in +{ + options.base.alacritty.font.family = myLib.mkOption { + type = myLib.types.singleLineStr; + default = actualConfig.font.normal.family; + description = '' + The font family for Alacritty + ''; + example = "DroidSansMono NF"; + }; + options.base.alacritty.enable = myLib.mkOption { + type = myLib.types.bool; + default = true; + description = '' + Enables alacritty + ''; + example = true; + }; + + config.programs.alacritty = { + enable = cfg.enable; + settings = actualConfig // { + font.normal.family = cfg.font.family; + }; + }; +} diff --git a/nix-conf/home-manager/base/default.nix b/nix-conf/home-manager/base/default.nix new file mode 100644 index 0000000..14bdb9b --- /dev/null +++ b/nix-conf/home-manager/base/default.nix @@ -0,0 +1,3 @@ +{ + +} diff --git a/nix-conf/home-manager/base/git.nix b/nix-conf/home-manager/base/git.nix new file mode 100644 index 0000000..8665a30 --- /dev/null +++ b/nix-conf/home-manager/base/git.nix @@ -0,0 +1,3 @@ +{ + +}: diff --git a/nix-conf/home-manager/base/mkModuleArgs.nix b/nix-conf/home-manager/base/mkModuleArgs.nix new file mode 100644 index 0000000..3dd7b84 --- /dev/null +++ b/nix-conf/home-manager/base/mkModuleArgs.nix @@ -0,0 +1,12 @@ +{ pkgs +, lib ? pkgs.lib +, ... +}@inputs: +let + _lib = lib // import ../../lib { inherit pkgs lib; }; +in +# TODO: Unpollute inputs +inputs // { + proj_root = builtins.toString ./../../..; + myLib = _lib; +} diff --git a/nix-conf/home-manager/base/shells.nix b/nix-conf/home-manager/base/shells.nix new file mode 100644 index 0000000..e69de29 diff --git a/nix-conf/home-manager/base/ssh.nix b/nix-conf/home-manager/base/ssh.nix new file mode 100644 index 0000000..e69de29 diff --git a/nix-conf/home-manager/flake.nix b/nix-conf/home-manager/flake.nix index 40a727d..5d2dad1 100644 --- a/nix-conf/home-manager/flake.nix +++ b/nix-conf/home-manager/flake.nix @@ -27,7 +27,8 @@ inherit system overlays; config = { allowUnfree = true; }; }; - lib = (import ../lib { inherit pkgs; lib = pkgs.lib; }); + # lib = (import ../lib { inherit pkgs; lib = pkgs.lib; }); + mkModuleArgs = import ./base/mkModuleArgs.nix; in { homeConfigurations = @@ -46,8 +47,8 @@ # optionally pass inarguments to module # we migrate this from in-place modules to allow flexibility # in this case, we can add "home" to input arglist of home.nix - extraSpecialArgs = { - myLib = lib; + extraSpecialArgs = mkModuleArgs { + inherit pkgs; myHome = { username = "hungtr"; homeDirectory = "/home/hungtr"; @@ -62,8 +63,8 @@ # optionally pass inarguments to module # we migrate this from in-place modules to allow flexibility # in this case, we can add "home" to input arglist of home.nix - extraSpecialArgs = { - myLib = lib; + extraSpecialArgs = mkModuleArgs { + inherit pkgs; myHome = { username = "nixos"; homeDirectory = "/home/nixos"; @@ -94,9 +95,13 @@ inherit pkgs; modules = [ ./home.nix + ./base/alacritty.nix + { + base.alacritty.font.family = "BitstreamVeraSansMono Nerd Font"; + } ]; - extraSpecialArgs = { - myLib = lib; + extraSpecialArgs = mkModuleArgs { + inherit pkgs; myHome = { username = "hwtr"; homeDirectory = "/home/hwtr"; diff --git a/nix-conf/home-manager/home.nix b/nix-conf/home-manager/home.nix index 70a1561..112654f 100644 --- a/nix-conf/home-manager/home.nix +++ b/nix-conf/home-manager/home.nix @@ -74,11 +74,6 @@ in programs.jq = { enable = true; }; - programs.alacritty = myHome.programs.alacritty or { - enable = true; - # settings = myLib.fromYaml (builtins.readFile "${proj_root}/alacritty/alacritty.yml"); - settings = fromYaml (builtins.readFile "${proj_root}//alacritty/alacritty.yml"); - }; # nix: Propagates the environment with packages and vars when enter (children of) # a directory with shell.nix-compatible and .envrc programs.direnv = { diff --git a/nix-conf/lib/default.nix b/nix-conf/lib/default.nix index 6876ca0..8a45061 100644 --- a/nix-conf/lib/default.nix +++ b/nix-conf/lib/default.nix @@ -1,5 +1,5 @@ { pkgs -, lib +, lib ? pkgs.lib , ... }@flake_import: let serde = import ./serde { inherit pkgs lib; }; in