Eric Bower
·
2026-01-03
config.fish
1fish_config theme choose "dracula"
2
3fish_add_path ~/.local/bin /usr/local/go/bin ~/.cargo/bin ~/.yarn/bin ~/.npm-packages/bin
4
5switch (uname)
6 case Darwin
7 fish_add_path /opt/homebrew/opt/node@20/bin
8 fish_add_path /opt/homebrew/bin
9 fish_add_path ~/.local/bin
10 fish_add_path /opt/homebrew/opt/libpq/bin
11
12 set -xg AWS_PROFILE "prod-PowerUserAccess"
13 set -xg CLAUDE_CODE_USE_BEDROCK "1"
14 set -xg AWS_REGION "us-east-1"
15
16 # Generated by sdxcli
17 if command -v sdxcli &>/dev/null
18 eval (sdxcli output-shell-commands --shell fish)
19 end
20 case Linux
21 set -xg OPENAI_API_BASE "http://0.0.0.0:8080"
22 # set -xg OPENAI_API_BASE "http://192.168.88.109:8080"
23 set -xg OPENAI_API_KEY ""
24 case '*'
25 # do things for other OSs
26end
27
28# remove fish greeting
29set -U fish_greeting
30set -xg LANG en_US.UTF-8
31set -xg EDITOR nvim
32set -xg VISUAL nvim
33set -xg GPG_TTY (tty)
34set -xg XDG_CONFIG_HOME ~/.config
35set -xg VDIRSYNCER_CONFIG ~/.config/vdirsyncer/config
36set -xg MDIR ~/mail
37
38abbr -a pushall "git remote | xargs -I R git push R"
39abbr -a scratch nvim ~/scratch.md
40abbr -a rcp rsync -avzu --progress
41abbr -a sway sway --unsupported-gpu
42abbr -a tre "tree -CF --dirsfirst -L2"
43abbr -a pp PA_DIR=/home/erock/dev/pico/pico-pass pa
44abbr -a logs "ssh pipe sub /pico/log-drain -k | jq -r"
45abbr -a ash "autossh -M 0 -q"
46abbr -a picodb "ssh -L 5432:localhost:5432 pico.ash.0"
47abbr -a gpt "llama-server -hf unsloth/gpt-oss-120b-GGUF:Q4_K_S -ngl 99 -c 4096 -t 16 --host 0.0.0.0 --port 8080"
48abbr -a code "llama-server -hf unsloth/Qwen3-Coder-30B-A3B-Instruct-GGUF:Q4_K_XL -ngl 15 --host 0.0.0.0 --jinja --threads -1 --ctx-size 32000 --temp 0.7 --min-p 0.0 --top-p 0.80 --top-k 20 --repeat-penalty 1.05 --context-shift"
49abbr -a zmount zfs mount -a
50abbr -a keys "keychain --eval --quiet --agents ssh,gpg ~/.ssh/id_ed25519 76D3FD02 | source"
51abbr -a mdfmt uvx --with=mdformat-gfm --with=mdformat-frontmatter --with=mdformat-gfm-alerts mdformat --wrap no
52abbr -a sm sudo systemctl
53abbr -a smu systemctl --user
54abbr -a jm sudo journalctl
55abbr -a jmu journalctl --user
56abbr -a gemini npx @google/gemini-cli
57abbr -a amp npx @sourcegraph/amp
58
59function pw
60 tr -dc 'A-Za-z0-9!"#$%&'\''()*+,-./:;<=>?@[\]^_`{|}~' </dev/urandom | head -c 16; echo
61end
62
63function sys_fzf
64 systemctl --user list-unit-files --no-legend | fzf | awk '{print $1}'
65end
66
67function syst
68 systemctl --user status -l --no-pager (sys_fzf)
69end
70
71function sysc
72 systemctl --user cat --no-pager (sys_fzf)
73end
74
75function sysj
76 journalctl --user -u (sys_fzf)
77end
78
79if type -q direnv
80 direnv hook fish | source
81end
82
83functions -c fish_prompt _original_fish_prompt 2>/dev/null
84
85function fish_prompt --description 'Write out the prompt'
86 if set -q ZMX_SESSION
87 echo -n "[$ZMX_SESSION] "
88 end
89 _original_fish_prompt
90end