home-manager/tests/modules/programs/zellij/enable-shells.nix
Erik Krieg cc9f65d104
zellij: adds options to integrate with zsh, bash and fish shells (#3926)
* zellij: adds options to integrate with zsh, bash and fish shells

* zellij: add tests for shell integration options

* zellij: eval setup auto start for fish integration

* zellij: use interactiveShellInit for fish integration

* zellij: fixes format issues

* zellij: enable shell integrations by default

* zellij: compresses shell integration test cases

* zellij: removes the disabled shell integration tests

* zellij: formats tests
2023-05-11 21:25:46 +02:00

37 lines
930 B
Nix

{ lib, ... }:
{
programs = {
# All shell integratons are enabled by default.
zellij.enable = true;
bash.enable = true;
zsh.enable = true;
fish.enable = true;
};
# Needed to avoid error with dummy fish package.
xdg.dataFile."fish/home-manager_generated_completions".source =
lib.mkForce (builtins.toFile "empty" "");
test.stubs = {
zsh = { };
zellij = { };
};
nmt.script = ''
assertFileExists home-files/.bashrc
assertFileContains \
home-files/.bashrc \
'eval "$(zellij setup --generate-auto-start bash)"'
assertFileExists home-files/.zshrc
assertFileContains \
home-files/.zshrc \
'eval "$(zellij setup --generate-auto-start zsh)"'
assertFileExists home-files/.config/fish/config.fish
assertFileContains \
home-files/.config/fish/config.fish \
'eval (zellij setup --generate-auto-start fish | string collect)'
'';
}