2.home-manager/tests/modules/programs/scmpuff/no-aliases.nix
novenary e4e25a8c31 fish: ensure generated completions considered last
home-manager's generated completions shadow built-in completion scripts.
fish actually has logic to deal with this when the path ends with
/generated_completions, so let's take advantage of it.

Link: 47c773300a/src/autoload.rs (L421-L424)
2025-11-30 17:12:04 -06:00

33 lines
895 B
Nix

{ lib, ... }:
{
programs = {
scmpuff.enable = true;
scmpuff.enableAliases = false;
bash.enable = true;
fish.enable = true;
zsh.enable = true;
};
# Needed to avoid error with dummy fish package.
xdg.dataFile."fish/home-manager/generated_completions".source = lib.mkForce (
builtins.toFile "empty" ""
);
nmt.script = ''
assertFileExists home-files/.bashrc
assertFileContains \
home-files/.bashrc \
'eval "$(@scmpuff@/bin/scmpuff init --shell=bash --aliases=false)"'
assertFileExists home-files/.zshrc
assertFileContains \
home-files/.zshrc \
'eval "$(@scmpuff@/bin/scmpuff init --shell=zsh --aliases=false)"'
assertFileExists home-files/.config/fish/config.fish
assertFileContains \
home-files/.config/fish/config.fish \
'@scmpuff@/bin/scmpuff init --shell=fish --aliases=false | source'
'';
}