diff --git a/flake.nix b/flake.nix index 14d92518..521861d6 100644 --- a/flake.nix +++ b/flake.nix @@ -20,7 +20,7 @@ user = "xenia"; system = "x86_64-linux"; group = "users"; - shell = "fish"; + shell = "zsh"; systemModules = [ ./system/hyprland.nix ]; homeModules = [ ./home/accounts/default.nix @@ -106,7 +106,6 @@ targets = { chromium.enable = true; console.enable = true; - fish.enable = true; lightdm.enable = true; }; image = ./wallpapers/space.png; diff --git a/home/default.nix b/home/default.nix index 4cf0ab45..414d4398 100644 --- a/home/default.nix +++ b/home/default.nix @@ -31,29 +31,6 @@ }; programs = rec { bash.enable = true; - fish.enable = true; - zellij.enable = true; - zsh.initExtra = '' - xdg-query-program () { - FILETYPE=$(xdg-mime query filetype $@) - DEFAULT=$(xdg-mime query default $FILETYPE) - echo "$FILETYPE -> $DEFAULT" - } - rsync-local-config () { - HOST=$1 - for TARGET in bat/themes/tokyonight_night.tmTheme git/config starship.toml; do - SOURCE="${config.xdg.configHome}/$TARGET" - TMP_TARGET=/tmp/rsync-local-config - if [[ -e ${config.xdg.configHome}/$TARGET ]]; then - ${pkgs.rsync}/bin/rsync -avzL $SOURCE $TMP_TARGET - ${pkgs.coreutils}/bin/chmod u+rw -R $TMP_TARGET - ${pkgs.gnused}/bin/sed -i 's|/nix/.*/bin/||g' $TMP_TARGET - ${pkgs.rsync}/bin/rsync -avzL --delete $TMP_TARGET $HOST:.config/$TARGET - ${pkgs.coreutils}/bin/rm -rf $TMP_SOURCE - fi - done - } - ''; bat = { enable = true; config.theme = "Catppuccin-mocha"; @@ -104,11 +81,12 @@ enable = true; nix-direnv.enable = true; enableBashIntegration = true; + enableZshIntegration = true; }; fzf = { enable = true; enableBashIntegration = true; - enableFishIntegration = true; + enableZshIntegration = true; }; git = { enable = true; @@ -177,7 +155,7 @@ starship = { enable = true; enableBashIntegration = true; - enableFishIntegration = true; + enableZshIntegration = true; enableTransience = true; settings = { command_timeout = 1000; @@ -262,5 +240,56 @@ }; }; }; + + zellij = { + enable = true; + enableBashIntegration = true; + enableZshIntegration = true; + }; + zsh = { + enable = true; + enableAutosuggestions = true; + enableCompletion = true; + syntaxHighlighting.enable = true; + enableVteIntegration = true; + autocd = true; + dotDir = ".config/zsh"; + historySubstringSearch.enable = true; + history.path = "${config.xdg.dataHome}/zsh/history"; + initExtra = '' + xdg-query-program () { + FILETYPE=$(xdg-mime query filetype $@) + DEFAULT=$(xdg-mime query default $FILETYPE) + echo "$FILETYPE -> $DEFAULT" + } + rsync-local-config () { + HOST=$1 + for TARGET in bat git emacs/init.el emacs/templates starship.toml; do + SOURCE="${config.xdg.configHome}/$TARGET" + TMP_TARGET=/tmp/rsync-local-config + TMP_SOURCE=$TMP_TARGET + NIX_SED="${pkgs.gnused}/bin/sed -i 's|/nix/.*/bin/||g'" + NIX_REPLACE="$NIX_SED $TMP_TARGET" + if [[ -e ${config.xdg.configHome}/$TARGET ]]; then + if [[ -d $SOURCE ]]; then + SOURCE=$SOURCE/ + TMP_SOURCE=$TMP_SOURCE/ + NIX_REPLACE="${pkgs.fd}/bin/fd -g '**' $TMP_TARGET -tfile -x $NIX_SED {};" + fi + ${pkgs.rsync}/bin/rsync -avzL --exclude=".git*" $SOURCE $TMP_TARGET + ${pkgs.coreutils}/bin/chmod u+rw -R $TMP_SOURCE + ${pkgs.bash}/bin/sh -c "$NIX_REPLACE" + ${pkgs.rsync}/bin/rsync -avzL --delete --exclude=".git*" $TMP_SOURCE $HOST:.config/$TARGET + ${pkgs.coreutils}/bin/rm -rf $TMP_SOURCE + fi + done + } + ''; + oh-my-zsh = { + enable = true; + plugins = [ "colored-man-pages" "lol" "rand-quote" ]; + theme = ""; + }; + }; }; }