41 lines
943 B
Nix
41 lines
943 B
Nix
{
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
createDummyTmuxSessionScript = ./fish/create_dummy_tmux_session.nu;
|
|
in
|
|
{
|
|
options = {
|
|
modules.fish.enable = lib.mkEnableOption "fish";
|
|
};
|
|
|
|
config = lib.mkIf config.modules.fish.enable {
|
|
home.packages = [
|
|
pkgs.lsd
|
|
];
|
|
|
|
programs.fish = {
|
|
enable = true;
|
|
shellInit = ''
|
|
# this creates a dummy tmux session if none exists
|
|
# it is for loading the continuum restore plugin
|
|
${lib.getExe pkgs.nushell} ${createDummyTmuxSessionScript}
|
|
fish_vi_key_bindings
|
|
set -g fish_color_command brblue
|
|
set fish_greeting
|
|
'';
|
|
shellAliases = {
|
|
v = "nvim";
|
|
ls = "lsd";
|
|
nix-shell = "nix-shell --command 'fish'";
|
|
nix-dev = "nix develop --command fish";
|
|
gnome-control-center = "nix-shell -p gnome-control-center --run 'XDG_CURRENT_DESKTOP=GNOME gnome-control-center'";
|
|
};
|
|
};
|
|
|
|
};
|
|
}
|