diff options
| author | Seth Flynn <[email protected]> | 2025-02-14 01:18:47 -0500 |
|---|---|---|
| committer | Seth Flynn <[email protected]> | 2025-02-14 01:29:06 -0500 |
| commit | 3e208d20934bedd8cd7769f23f35cfae9d8e7d0d (patch) | |
| tree | 452399d770df6be2589be3c92771b1999dd1b93a /users/seth/programs/fish.nix | |
| parent | c1bea770122a7cf2dea5113387265f59010d5a7f (diff) | |
seth: simplify module structure
Moving to mixins generally reduces the boilerplate in all
configurations, and less custom "stuff"
These are then enabled by the regular options in programs.nix for
example
Many of the other options (like desktops) also had little use in being
abstracted as there's no situation where I'd *not* want them to be
applied when said desktop is in use
Diffstat (limited to 'users/seth/programs/fish.nix')
| -rw-r--r-- | users/seth/programs/fish.nix | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/users/seth/programs/fish.nix b/users/seth/programs/fish.nix deleted file mode 100644 index f853b1b..0000000 --- a/users/seth/programs/fish.nix +++ /dev/null @@ -1,72 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -let - cfg = config.seth.programs.fish; -in -{ - options.seth.programs.fish = { - enable = lib.mkEnableOption "Fish configuration"; - hydro.enable = lib.mkEnableOption "Hydra prompt" // { - default = true; - }; - }; - - config = lib.mkIf cfg.enable ( - lib.mkMerge [ - { - programs.fish = { - enable = true; - - functions = { - last_history_item.body = "echo $history[1]"; - }; - - shellAbbrs = { - nixgc = "sudo nix-collect-garbage -d && nix-collect-garbage -d"; - "!!" = { - position = "anywhere"; - function = "last_history_item"; - }; - }; - }; - } - - (lib.mkIf cfg.hydro.enable { - programs.fish = { - interactiveShellInit = '' - set --global hydro_symbol_prompt ">" - - set --global hydro_color_duration $fish_color_end - set --global hydro_color_error $fish_color_error - set --global hydro_color_git cba6f7 - set --global hydro_color_prompt $fish_color_cwd - set --global hydro_color_pwd $fish_color_user - ''; - - plugins = [ - { - name = "hydro"; - inherit (pkgs.fishPlugins.hydro) src; - } - ]; - }; - }) - - # TODO: do i still need this weird sourcing? - (lib.mkIf config.seth.standalone.enable { - programs.fish = { - interactiveShellInit = '' - set -l nixfile ${config.home.homeDirectory}/.nix-profile/etc/profile.d/nix.fish - if test -e $nixfile - source $nixfile - end - ''; - }; - }) - ] - ); -} |
