From 9834d4f970bf49ec073db2d98723e88192e9ba17 Mon Sep 17 00:00:00 2001 From: Olaf <github@dacht.net> Date: Thu, 8 May 2025 18:33:15 +0200 Subject: [PATCH] order in zshrc to prevent ls alias overwrite --- modules/shared/home-manager.nix | 87 +++++++++++++++++++-------------- 1 file changed, 50 insertions(+), 37 deletions(-) diff --git a/modules/shared/home-manager.nix b/modules/shared/home-manager.nix index c53cd6b..1bb3665 100644 --- a/modules/shared/home-manager.nix +++ b/modules/shared/home-manager.nix @@ -10,6 +10,7 @@ let email = "olaf@xolx.nl"; in { + # Shared shell configuration zsh = { enable = true; @@ -18,55 +19,67 @@ in oh-my-zsh = { enable = true; plugins = [ ]; - # theme = "agnoster"; - theme = "ys"; + # theme = "fishy"; + # theme = "ys"; + theme = "mrtazz"; }; - plugins = [ + # plugins = [ ]; - ]; - initExtraFirst = '' - if [[ -f /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh ]]; then - . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh - . /nix/var/nix/profiles/default/etc/profile.d/nix.sh - fi + initContent = + let + zshConfigEarlyInit = lib.mkOrder 500 '' + if [[ -f /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh ]]; then + . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh + . /nix/var/nix/profiles/default/etc/profile.d/nix.sh + fi - # Define variables for directories - export PATH=$HOME/.pnpm-packages/bin:$HOME/.pnpm-packages:$PATH - export PATH=$HOME/.npm-packages/bin:$HOME/bin:$PATH - export PATH=$HOME/.local/share/bin:$PATH + # Define variables for directories + export PATH=$HOME/.pnpm-packages/bin:$HOME/.pnpm-packages:$PATH + export PATH=$HOME/.npm-packages/bin:$HOME/bin:$PATH + export PATH=$HOME/.local/share/bin:$PATH - # Remove history data we don't want to see - export HISTIGNORE="pwd:ls:cd" + # Remove history data we don't want to see + export HISTIGNORE="pwd:ls:cd" - # Ripgrep alias - alias search=rg -p --glob '!node_modules/*' $@ + # Ripgrep alias + alias search=rg -p --glob '!node_modules/*' $@ - # Emacs is my editor - export ALTERNATE_EDITOR="" - export EDITOR="emacsclient -t" - export VISUAL="emacsclient -c -a emacs" + # Emacs is my editor + export ALTERNATE_EDITOR="" + export EDITOR="emacsclient -t" + export VISUAL="emacsclient -c -a emacs" - e() { - emacsclient -t "$@" - } + e() { + emacsclient -t "$@" + } - # nix shortcuts - shell() { - nix-shell '<nixpkgs>' -A "$1" - } + # nix shortcuts + shell() { + nix-shell '<nixpkgs>' -A "$1" + } - # pnpm is a javascript package manager - alias pn=pnpm - alias px=pnpx + # pnpm is a javascript package manager + alias pn=pnpm + alias px=pnpx - # Use difftastic, syntax-aware diffing - alias diff=difft - - # Always color ls and group directories - alias ls='ls --color=auto' + # Use difftastic, syntax-aware diffing + alias diff=difft - ''; + + + ''; + zshConfigLastInit = lib.mkOrder 1500 '' + # Always color ls and group directories + alias ls='ls --color=auto' + + ''; + in + lib.mkMerge [ + zshConfigEarlyInit + zshConfigLastInit + ]; + }; git = {