39 lines
1,022 B
Nix
39 lines
1,022 B
Nix
|
{ 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;
|
||
|
|
||
|
nixpkgs.overlays =
|
||
|
[ (self: super: { zsh = pkgs.writeScriptBin "dummy-zsh" ""; }) ];
|
||
|
|
||
|
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}'
|
||
|
'';
|
||
|
};
|
||
|
}
|