diff options
Diffstat (limited to 'users/seth/shell')
| -rw-r--r-- | users/seth/shell/bash.nix | 38 | ||||
| -rw-r--r-- | users/seth/shell/default.nix | 45 | ||||
| -rw-r--r-- | users/seth/shell/fish.nix | 60 | ||||
| -rw-r--r-- | users/seth/shell/nu.nix | 45 | ||||
| -rw-r--r-- | users/seth/shell/zsh.nix | 120 |
5 files changed, 0 insertions, 308 deletions
diff --git a/users/seth/shell/bash.nix b/users/seth/shell/bash.nix deleted file mode 100644 index bf5b377..0000000 --- a/users/seth/shell/bash.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ config, lib, ... }: -let - cfg = config.seth.shell.bash; -in -{ - options.seth.shell.bash = { - enable = lib.mkEnableOption "Bash configuration" // { - default = config.seth.enable; - defaultText = lib.literalExpression "config.seth.enable"; - }; - }; - - config = lib.mkIf cfg.enable { - programs.bash = { - enable = true; - - # TODO: find out if i need this anymore with standalone HM - bashrcExtra = '' - nixfile=${config.home.homeDirectory}/.nix-profile/etc/profile.d/nix.sh - [ -e "$nixfile" ] && source "$nixfile" - ''; - - historyFile = "${config.xdg.stateHome}/bash/history"; - historyFileSize = 1000; - historySize = 100; - - shellOptions = [ - "cdspell" - "checkjobs" - "checkwinsize" - "dirspell" - "globstar" - "histappend" - "no_empty_cmd_completion" - ]; - }; - }; -} diff --git a/users/seth/shell/default.nix b/users/seth/shell/default.nix deleted file mode 100644 index 34b1a98..0000000 --- a/users/seth/shell/default.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ config, lib, ... }: -let - cfg = config.seth.shell; -in -{ - options.seth.shell = { - aliases.enable = lib.mkEnableOption "shell aliases" // { - default = config.seth.enable; - defaultText = lib.literalExpression "config.seth.enable"; - }; - - variables.enable = lib.mkEnableOption "shell variables" // { - default = config.seth.enable; - defaultText = lib.literalExpression "config.seth.enable"; - }; - }; - - imports = [ - ./bash.nix - ./fish.nix - ./nu.nix - ./zsh.nix - ]; - - config = { - home = lib.mkMerge [ - (lib.mkIf cfg.variables.enable { - sessionVariables = rec { - EDITOR = "nvim"; - VISUAL = EDITOR; - CARGO_HOME = "${config.xdg.dataHome}/cargo"; - LESSHISTFILE = "${config.xdg.stateHome}/less/history"; - }; - }) - - (lib.mkIf cfg.aliases.enable { - shellAliases = { - diff = "diff --color=auto"; - g = "git"; - gs = "g status"; - }; - }) - ]; - }; -} diff --git a/users/seth/shell/fish.nix b/users/seth/shell/fish.nix deleted file mode 100644 index 0f101cd..0000000 --- a/users/seth/shell/fish.nix +++ /dev/null @@ -1,60 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -let - cfg = config.seth.shell.fish; -in -{ - options.seth.shell.fish = { - enable = lib.mkEnableOption "Fish configuration"; - withPlugins = lib.mkEnableOption "Fish plugins" // { - default = true; - }; - }; - - config = lib.mkIf cfg.enable { - programs.fish = lib.mkMerge [ - { - enable = true; - - interactiveShellInit = - '' - ${lib.getExe pkgs.nix-your-shell} fish | source - '' - # TODO: do i still need this weird sourcing? - + lib.optionalString config.seth.standalone.enable '' - set -l nixfile ${config.home.homeDirectory}/.nix-profile/etc/profile.d/nix.fish - if test -e $nixfile - source $nixfile - end - ''; - - functions = { - last_history_item.body = "echo $history[1]"; - }; - - shellAbbrs = { - nixgc = "sudo nix-collect-garbage -d && nix-collect-garbage -d"; - "!!" = { - position = "anywhere"; - function = "last_history_item"; - }; - }; - } - - (lib.mkIf cfg.withPlugins { - plugins = - let - mkFishPlugins = map (plugin: { - name = plugin; - inherit (pkgs.fishPlugins.${plugin}) src; - }); - in - mkFishPlugins [ "autopair" ]; - }) - ]; - }; -} diff --git a/users/seth/shell/nu.nix b/users/seth/shell/nu.nix deleted file mode 100644 index f52f049..0000000 --- a/users/seth/shell/nu.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -let - cfg = config.seth.shell.nushell; - theme = "catppuccin-${config.catppuccin.flavor}"; -in -{ - options.seth.shell.nushell = { - enable = lib.mkEnableOption "Nushell configuration"; - }; - - config = lib.mkIf cfg.enable { - programs = { - nushell = { - enable = true; - - configFile.text = '' - def "nixgc" [] { - sudo nix-collect-garbage -d; nix-collect-garbage -d - } - ''; - - envFile.text = '' - use ${pkgs.nu_scripts}/share/nu_scripts/themes/nu-themes/${theme}.nu - $env.config.color_config = (${theme}) - ''; - - inherit (config.home) shellAliases; - }; - - bash.initExtra = lib.mkAfter '' - if [[ $(ps --no-header --pid=$PPID --format=comm) != "nu" && -z ''${BASH_EXECUTION_STRING} ]]; then - exec ${lib.getExe config.programs.nushell.package} - fi - ''; - - # builtin `ls` is good here! - eza.enable = lib.mkForce false; - }; - }; -} diff --git a/users/seth/shell/zsh.nix b/users/seth/shell/zsh.nix deleted file mode 100644 index 5c0bc69..0000000 --- a/users/seth/shell/zsh.nix +++ /dev/null @@ -1,120 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -let - cfg = config.seth.shell.zsh; -in -{ - options.seth.shell.zsh = { - enable = lib.mkEnableOption "Zsh configuration"; - withPlugins = lib.mkEnableOption "Zsh plugins" // { - default = true; - }; - }; - - config = lib.mkIf cfg.enable { - programs.zsh = lib.mkMerge [ - { - enable = true; - - completionInit = '' - autoload -Uz bashcompinit compinit - local zdump="${config.xdg.cacheHome}/zsh/zdump" - bashcompinit - compinit -d "$zdump" - if [[ ! "$zdump.zwc" -nt "$zdump" ]] - then - zcompile "$zdump" - fi - unset zdump - ''; - - defaultKeymap = "emacs"; - dotDir = ".config/zsh"; - - initExtra = '' - if [[ -r "$XDG_CACHE_HOME/p10k-instant-prompt-*.zsh" ]]; then - source "$XDG_CACHE_HOME/p10k-instant-prompt-*.zsh" - fi - autoload -Uz promptinit colors - promptinit - colors - - zmodload zsh/zutil - zmodload zsh/complist - zstyle ":completion::*" group-name "" - zstyle ":completion:*" menu "select" - zstyle ":completion:*" squeeze-slashes "true" - zstyle ":completion::*" use-cache "true" - zstyle ":completion::*" cache-path "$zdump" - - unsetopt beep - unsetopt hist_beep - unsetopt ignore_braces - unsetopt list_beep - setopt always_to_end - setopt prompt_subst - setopt share_history - - # clear backbuffer with ctrl-l - function clear-screen-and-scrollback() { - echoti civis >"$TTY" - printf '%b' '\e[H\e[2J' >"$TTY" - zle .reset-prompt - zle -R - printf '%b' '\e[3J' >"$TTY" - echoti cnorm >"$TTY" - } - - zle -N clear-screen-and-scrollback - bindkey '^L' clear-screen-and-scrollback - - ${lib.getExe pkgs.nix-your-shell} zsh | source /dev/stdin - - [[ ! -f ~/.config/zsh/.p10k.zsh ]] || source ~/.config/zsh/.p10k.zsh - ''; - - history = { - expireDuplicatesFirst = true; - path = "${config.xdg.stateHome}/zsh/zsh_history"; - save = 1000; - size = 100; - }; - } - - (lib.mkIf cfg.withPlugins { - plugins = [ - { - name = "nix-zsh-completions"; - src = pkgs.nix-zsh-completions; - file = "share/zsh/plugins/nix/nix-zsh-completions.plugin.zsh"; - } - - { - name = "powerlevel10k"; - src = pkgs.zsh-powerlevel10k; - file = "share/zsh-powerlevel10k/powerlevel10k.zsh-theme"; - } - - { - name = "zsh-autopair"; - src = pkgs.zsh-autopair; - file = "share/zsh/zsh-autopair/autopair.zsh"; - } - - { - name = "zsh-completions"; - src = pkgs.zsh-completions; - file = "share/zsh-completions/zsh-completions.plugin.zsh"; - } - ]; - - autosuggestion.enable = true; - syntaxHighlighting.enable = true; - }) - ]; - }; -} |
