refactor(fish): assemble the interactive init in Nix, not at runtime

Fold the done plugin tuning back into config.fish and drop the conf.d
fragment: config.fish is read whole into interactiveShellInit, so Nix
assembles the interactive init at build time instead of fish autoloading
a separate conf.d file. functions/copy.fish stays a function file, the
idiomatic home for a lazily-autoloaded function.
This commit is contained in:
2026-07-18 18:56:07 -04:00
parent 5a89d4addb
commit 95869fb11f
4 changed files with 5 additions and 7 deletions

View File

@@ -1,3 +0,0 @@
# Tune the done plugin: only notify for commands past 10s, at low urgency.
set -g __done_min_cmd_duration 10000
set -g __done_notification_urgency_level low

View File

@@ -8,6 +8,10 @@ set -gx VISUAL nvim
set -x MANROFFOPT "-c"
set -x MANPAGER "sh -c 'col -bx | bat -l man -p'"
# Tune the done plugin: only notify for commands past 10s, at low urgency.
set -g __done_min_cmd_duration 10000
set -g __done_notification_urgency_level low
# Prepend ~/.local/bin to PATH when it exists.
if test -d ~/.local/bin
fish_add_path ~/.local/bin

View File

@@ -37,9 +37,6 @@ in
wget # non-interactive HTTP downloader; backs the wget abbreviation
];
# done's tuning lives in its own conf.d snippet, mirroring ~/.config/fish.
xdg.configFile."fish/conf.d/done.fish".source = ./conf.d/done.fish;
programs.fish = {
enable = true;