2.3 KiB
2.3 KiB
| id | type | title | tags | importance | confidence | created | updated | relations | |||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 055aea5f-7084-48ae-a096-69ee1c35e114 | configuration | Fish shell + Starship prompt setup on Nobara workstation |
|
0.65 | 0.8 | 2026-02-27T05:32:57.893367+00:00 | 2026-03-01T22:02:48.108105+00:00 |
|
Fish shell + Starship prompt setup on Nobara FC43
Summary
Migrated interactive shell from zsh to fish on Nobara FC43 (Linux 6.18 kernel). Full setup for fish + Starship with bash-for-scripts hybrid strategy.
Installation
- Fish installed via
dnf - Set as default login shell:
chsh -s /usr/bin/fish - Starship installed via
dnf(starshippackage innobara-updatesrepo)
Fish config (~/.config/fish/config.fish)
if status is-interactive
set -x SHELL /bin/bash # Keep Claude Code and scripts on bash
starship init fish | source
end
Key detail: set -x SHELL /bin/bash is set inside config.fish so Claude Code's Bash tool, shebang scripts, and any tool that respects $SHELL continue using bash — not fish (which is POSIX-incompatible).
Starship config (~/.config/starship.toml)
- AWS module disabled (not used)
git_commitdisabled (too noisy)git_metricsenabled withonly_nonzero_diffs = false(always shows +N -N stats)
Compatibility Notes
- Fish is POSIX-incompatible: no
export, different variable syntax, different conditionals - Scripts with
#!/bin/bashshebangs are completely unaffected - Claude Code shell execution unaffected due to the SHELL override
- Starship works identically across fish, zsh, and bash — config is shell-agnostic