Merge pull request 'fix(deps): clean up dependency catalog tiers and remove dead installer code' (#46) from fix/deps-catalog-uv-pipx into main
Generate documentation / build-docs (push) Successful in 37s

Reviewed-on: #46
This commit was merged in pull request #46.
This commit is contained in:
2026-06-12 03:54:36 +00:00
3 changed files with 23 additions and 37 deletions
+18 -14
View File
@@ -845,18 +845,16 @@ Add -i (interactive confirmation) to destructive commands:
3. system PM (paru/apt/brew/etc.)
4. git clone (fzf)
5. curl installer (starship, fisher, uv)
6. pipx (Python tools)
When multiple methods are available you are prompted to choose.
Dependencies are grouped into three tiers:
Required uv, cargo, fish, fisher, starship, fzf, zoxide,
direnv, paru/yay
Required fish, fzf, zoxide
Integrations wakatime, tailscale
Recommended eza, lsd, bat, btop, dust, duf, prettyping, ov,
ripgrep, lazygit, lazydocker, trash, kitty, wezterm,
python3
Recommended cargo, starship, uv, direnv, paru, yay, eza, lsd, bat,
btop, dust, duf, prettyping, ov, ripgrep, lazygit,
lazydocker, trash, kitty, wezterm, python3
fish-deps
fish-deps install
@@ -1349,16 +1347,9 @@ fish-deps manages these tools. Run `fish-deps` to check status, or
## Required
uv Python package manager (Astral)
cargo Rust toolchain (via rustup)
fish Fish shell >= 4.0
fisher Fish plugin manager
starship Cross-shell prompt
fzf Fuzzy finder
zoxide Smart cd with frecency
direnv Per-directory environment loading
paru AUR helper (Arch only; preferred)
yay AUR helper (Arch only; fallback)
## Integrations
@@ -1367,6 +1358,20 @@ fish-deps manages these tools. Run `fish-deps` to check status, or
## Recommended
cargo Rust toolchain (via rustup); used by fish-deps to install
Rust-based tools and to build fish from source. All paths
are gated on type -q cargo and degrade gracefully.
starship Cross-shell prompt; loaded via type -q starship guard.
Without it fish falls back to its built-in default prompt.
uv Python package and project manager (Astral); used by the
fish-from-source build path in fish-deps. All consumers
degrade gracefully without it.
direnv Per-directory environment loading; integration is fully
guarded with type -q direnv. Without it the direnv hook
is simply not loaded and auto-venv activates normally.
paru AUR helper (Arch only; preferred); guarded throughout —
non-Arch systems silently skip AUR-specific paths.
yay AUR helper (Arch only; fallback to paru); same guards apply.
eza Modern ls replacement
lsd ls replacement (fallback to eza)
bat Syntax-highlighted cat
@@ -1396,7 +1401,6 @@ The install priority for each tool:
system PM paru / apt / brew / dnf / etc. — for tools without a crate
git clone fzf — installed from GitHub to ~/.fzf/
curl starship installer, fisher bootstrap, uv installer
pipx Python-based tools
---
+5 -5
View File
@@ -14,27 +14,27 @@
# echo $_fdc_bins
function _fish_deps_catalog
set -g _fdc_bins \
uv cargo fish fisher starship fzf zoxide direnv paru yay \
uv cargo fish starship fzf zoxide direnv paru yay \
wakatime tailscale \
eza lsd bat btop dust duf prettyping ov rg lazygit lazydocker trash kitty wezterm python3
set -g _fdc_tiers \
req req req req req req req req rec rec \
rec rec req rec req req rec rec rec \
int int \
rec rec rec rec rec rec rec rec rec rec rec rec rec rec rec
set -g _fdc_cargo \
"" "" "" "" starship "" zoxide "" "" "" \
"" "" "" starship "" zoxide "" "" "" \
"" "" \
eza lsd bat "" du-dust "" "" ov ripgrep "" "" trashy "" "" ""
set -g _fdc_pm \
uv cargo fish "" starship fzf zoxide direnv "" yay \
uv cargo fish starship fzf zoxide direnv "" yay \
wakatime tailscale \
eza lsd bat btop dust duf prettyping ov ripgrep lazygit lazydocker trash kitty wezterm python
set -g _fdc_special \
curl-uv rustup-installer git-cargo-fish fisher-bootstrap curl-installer fzf-update "" "" paru-build yay-build \
curl-uv rustup-installer git-cargo-fish curl-installer fzf-update "" "" paru-build yay-build \
wakatime-binary "" \
"" "" "" "" "" "" "" "" "" "" curl-lazydocker "" "" "" ""
end
-18
View File
@@ -92,9 +92,6 @@ function _fish_deps_install
case fzf-update
set -a methods special-fzf
set -a method_labels "git clone (~/.fzf)"
case fisher-bootstrap
set -a methods special-fisher
set -a method_labels "curl bootstrap (fisher)"
case curl-installer
set -a methods special-curl
set -a method_labels "curl installer"
@@ -117,14 +114,6 @@ function _fish_deps_install
set -a methods special-yay
set -a method_labels "build from AUR (makepkg)"
end
case pipx
if type -q pipx
set -a methods special-pipx
set -a method_labels "pipx ($bin)"
else if type -q pip
set -a methods special-pip
set -a method_labels "pip install --user ($bin)"
end
end
if test (count $methods) -eq 0
@@ -210,9 +199,6 @@ function _fish_deps_install
rm -rf "$_tmpdir"
case special-fzf
fzf-update
case special-fisher
curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source
fisher update
case special-curl
if test "$bin" = starship
curl -sS https://starship.rs/install.sh | sh
@@ -264,10 +250,6 @@ function _fish_deps_install
popd 2>/dev/null
rm -rf "$_tmpdir"
test $_build_ok -eq 1
case special-pipx
pipx install $bin
case special-pip
pip install --user $bin
end
if test $status -eq 0