diff --git a/modules/zsh.nix b/modules/zsh.nix index 99a9222..aab62c3 100644 --- a/modules/zsh.nix +++ b/modules/zsh.nix @@ -1,4 +1,28 @@ { config, pkgs, ... }: +let + zsh-config = { + enable = true; + shellAliases = { + #ll = "ls -l"; + #update = "sudo nixos-rebuild switch"; + }; + history.size = 1000; + history.ignoreDups = true; + #history.ignoreAllDups = true; + + oh-my-zsh = { + enable = true; + plugins = [ + # Provides many aliases and a few useful functions. + #"git" + # Easily prefix your current or previous commands with sudo by pressing `esc` twice. + #"sudo" + ]; + #theme = "robbyrussell"; + theme = "agnoster"; + }; + }; +in { # https://nixos.wiki/wiki/Command_Shell # https://nixos.wiki/wiki/Zsh @@ -8,31 +32,15 @@ # Inside the following Home Manager configuration block, # `config` refers to Home Manager configuration. home-manager.users.yoda = { osConfig, config, pkgs, ... }: { - programs.zsh = { - enable = true; - shellAliases = { - #ll = "ls -l"; - #update = "sudo nixos-rebuild switch"; - }; - history.size = 1000; - history.ignoreDups = true; - #history.ignoreAllDups = true; - + programs.zsh = zsh-config // { # nix-repl: config.home-manager.users.yoda.programs.zsh.history.path - # -> /home/yoda/.local/share/.histfile + # -> ~/.local/share/.histfile + history.path = "${config.xdg.dataHome}/.histfile"; + }; + }; + home-manager.users.root = { osConfig, config, pkgs, ... }: { + programs.zsh = zsh-config // { history.path = "${config.xdg.dataHome}/.histfile"; - - oh-my-zsh = { - enable = true; - plugins = [ - # Provides many aliases and a few useful functions. - #"git" - # Easily prefix your current or previous commands with sudo by pressing `esc` twice. - #"sudo" - ]; - #theme = "robbyrussell"; - theme = "agnoster"; - }; }; }; }