aboutsummaryrefslogtreecommitdiff
path: root/gui/fish.nix
diff options
context:
space:
mode:
authorAdrian Kummerlaender2023-03-04 20:04:11 +0100
committerAdrian Kummerlaender2023-03-04 20:04:11 +0100
commite06e83a6c5eafe884a63f8714c247e209c1e5dc4 (patch)
tree22753a7c832704a833b27cd59157756cbb90a1da /gui/fish.nix
parente6d6f34ad917d0746f96f91d886bd1a29093bcd3 (diff)
downloadnixos_home-e06e83a6c5eafe884a63f8714c247e209c1e5dc4.tar
nixos_home-e06e83a6c5eafe884a63f8714c247e209c1e5dc4.tar.gz
nixos_home-e06e83a6c5eafe884a63f8714c247e209c1e5dc4.tar.bz2
nixos_home-e06e83a6c5eafe884a63f8714c247e209c1e5dc4.tar.lz
nixos_home-e06e83a6c5eafe884a63f8714c247e209c1e5dc4.tar.xz
nixos_home-e06e83a6c5eafe884a63f8714c247e209c1e5dc4.tar.zst
nixos_home-e06e83a6c5eafe884a63f8714c247e209c1e5dc4.zip
Add fish config moved from system
Diffstat (limited to 'gui/fish.nix')
-rw-r--r--gui/fish.nix84
1 files changed, 84 insertions, 0 deletions
diff --git a/gui/fish.nix b/gui/fish.nix
new file mode 100644
index 0000000..bdbec69
--- /dev/null
+++ b/gui/fish.nix
@@ -0,0 +1,84 @@
+{ pkgs, ... }:
+
+{
+ programs.fish = {
+ enable = true;
+
+ shellAliases = {
+ ns = "persistent-nix-shell -s";
+ cat = "bat --plain";
+ };
+
+ shellInit = ''
+ set fish_greeting ""
+ '';
+
+ interactiveShellInit = ''
+ eval (dircolors -c ${./conf/dir_colors})
+
+ set fish_color_normal white
+ set fish_color_command magenta --bold
+ set fish_color_param green
+ set fish_color_error brred
+ set fish_color_operator cyan
+ set fish_color_comment white
+ set fish_color_cwd green
+ set fish_color_quote brown
+ set fish_color_autosuggestion 555
+ set fish_color_redirection white
+
+ function fish_prompt
+ if test $TERM = "dumb"
+ echo "\$ "
+ return 0
+ end
+
+ set last_status $status
+
+ if not set -q __fish_prompt_normal
+ set -g __fish_prompt_normal (set_color normal)
+ end
+
+ switch $USER
+ case root
+ if not set -q __fish_prompt_cwd
+ if set -q fish_color_cwd_root
+ set -g __fish_prompt_cwd (set_color $fish_color_cwd_root)
+ else
+ set -g __fish_prompt_cwd (set_color $fish_color_cwd)
+ end
+ end
+
+ case '*'
+ if not set -q __fish_prompt_cwd
+ set -g __fish_prompt_cwd (set_color $fish_color_cwd)
+ end
+ end
+
+ echo -n -s 'λ ' "$__fish_prompt_cwd" (prompt_pwd) "$__fish_prompt_normal"
+
+ if test $IN_NIX_SHELL
+ if test $name
+ echo -n -s ' (' $name ')'
+ else
+ echo -n -s ' (nix-shell)'
+ end
+ end
+
+ if test $last_status -gt 0
+ set_color $fish_color_cwd_root
+ echo -n -s ' • '
+ set_color normal
+ else
+ echo -n -s ' • '
+ end
+ end
+
+ function fish_right_prompt
+ set_color $fish_color_autosuggestion
+ date '+%H:%M:%S'
+ set_color normal
+ end
+ '';
+ };
+}