diff options
author | Franck Cuny <franck@fcuny.net> | 2024-12-16 09:25:23 -0800 |
---|---|---|
committer | Franck Cuny <franck@fcuny.net> | 2024-12-16 09:25:23 -0800 |
commit | 1bbd4e19c5595e6a6c310bd36fac5b4bd97ff39f (patch) | |
tree | e5ec852d0aa9378a5fae766f70d4c133acd5f8d1 /nix/users/fcuny/shell.nix | |
parent | move gitotlite to vm-synology (diff) | |
download | world-1bbd4e19c5595e6a6c310bd36fac5b4bd97ff39f.tar.gz |
refactor home-manager
Only install what's needed for specific OSes.
Diffstat (limited to '')
-rw-r--r-- | nix/users/fcuny/shell.nix | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/nix/users/fcuny/shell.nix b/nix/users/fcuny/shell.nix new file mode 100644 index 0000000..09fbc40 --- /dev/null +++ b/nix/users/fcuny/shell.nix @@ -0,0 +1,90 @@ +{ config, pkgs, ... }: { + home.packages = with pkgs; [ + # shell + shellcheck + + # shell utils + coreutils + direnv + dust + procs + ripgrep + tree + wget + + # network + bandwhich + + # data manipulation + jless + jq + yq + ]; + + programs.fish = { + enable = true; + interactiveShellInit = '' + # Configure classic prompt + set fish_color_user --bold blue + set fish_color_cwd --bold white + + # Enable colour hints in VCS prompt: + set __fish_git_prompt_showcolorhints yes + set __fish_git_prompt_color_prefix purple + set __fish_git_prompt_color_suffix purple + + set fish_greeting "" + ''; + shellAbbrs = { ncg = "nix-collect-garbage -d"; }; + shellAliases = { + c = "clear"; + ls = "eza -l -L=1 --git --color=always --group-directories-first"; + la = "eza -la --git --color=always --group-directories-first"; + ll = "eza -la -L=1 --git --color=always --group-directories-first"; + lt = "eza -aT -L=2 --git --color=always --group-directories-first"; + k = "kubectl"; + kctx = "kubie ctx"; + }; + }; + + # an alternative to ls + programs.eza = { + enable = true; + icons = "never"; + enableFishIntegration = false; + extraOptions = [ + "--group-directories-first" + "--no-quotes" + "--git-ignore" + "--icons=never" + ]; + }; + + # an alternative to find + programs.fd = { + enable = true; + hidden = true; + ignores = [ ".git/" ".direnv/" ]; + }; + + programs.direnv = { + enable = true; + nix-direnv.enable = true; + enableZshIntegration = true; + config = { + global.disable_stdin = true; + global.strict_env = true; + }; + }; + + home.sessionVariables = { + ASPELL_CONF = "conf ${config.xdg.configHome}/aspell/config;"; + EDITOR = "emacsclient -a="; + HOMEBREW_NO_AUTO_UPDATE = 1; + LESS = "-FRSXM"; + LESSCHARSET = "utf-8"; + PAGER = "less"; + SHELL = "${pkgs.fish}/bin/fish"; + VISUAL = "emacsclient -a="; + }; +} |