1
0
mirror of https://github.com/nix-community/home-manager synced 2024-07-05 21:03:27 +02:00
home-manager/tests/modules/programs/nix-index/integrations.nix
2021-08-06 22:55:57 +02:00

50 lines
1.2 KiB
Nix

{ lib, pkgs, ... }:
let
fishRegex = ''
function __fish_command_not_found_handler --on-event fish_command_not_found
/nix/store/.*command-not-found $argv
end
'';
in {
config = {
programs.bash.enable = true;
programs.fish.enable = true;
programs.zsh.enable = true;
# Needed to avoid error with dummy fish package.
xdg.dataFile."fish/home-manager_generated_completions".source =
lib.mkForce (builtins.toFile "empty" "");
nixpkgs.overlays = [
(self: super:
let dummy = pkgs.writeScriptBin "dummy" "";
in {
zsh = dummy;
fish = dummy;
})
];
programs.nix-index.enable = true;
nmt.script = ''
# Bash integration
assertFileExists home-files/.bashrc
assertFileRegex \
home-files/.bashrc \
'source /nix/store/.*nix-index.*/etc/profile.d/command-not-found.sh'
# Zsh integration
assertFileExists home-files/.zshrc
assertFileRegex \
home-files/.zshrc \
'source /nix/store/.*nix-index.*/etc/profile.d/command-not-found.sh'
# Fish integration
assertFileExists home-files/.config/fish/config.fish
assertFileRegex \
home-files/.config/fish/config.fish '${fishRegex}'
'';
};
}