| options.chimera.shell.zsh = { |
| enable = lib.mkEnableOption "Enable ZSH Shell"; |
| description = "Set as default shell"; |
| extraAliases = lib.mkOption { |
| type = lib.types.attrsOf lib.types.str; |
| description = "Attrset of extra shell aliases"; |
| dirHashes = lib.mkOption { |
| type = lib.types.attrsOf lib.types.str; |
| description = "Attrset of ~DIR's"; |
| ohMyZsh.extraPlugins = lib.mkOption { |
| type = lib.types.listOf lib.types.str; |
| description = "List of plugins as strs"; |
| config = lib.mkIf config.chimera.shell.zsh.enable { |
| autosuggestion.enable = true; |
| syntaxHighlighting.enable = true; |
| shellAliases = config.chimera.shell.zsh.extraAliases; |
| dirHashes = config.chimera.shell.zsh.dirHashes; |
| historySubstringSearch.enable = true; |
| plugins = [ "git" ] ++ config.chimera.shell.zsh.ohMyZsh.extraPlugins; |