Skip to content

Commit b209bfe

Browse files
committed
feat(installers): install shell completions and man pages (bat, fd, lsd, rg, watchexec, zoxide)
Install bash/fish/zsh completions from release archive into pkg_src_dir/share/, and man pages into pkg_src_dir/share/man/man1/.
1 parent 9f28505 commit b209bfe

10 files changed

Lines changed: 138 additions & 1 deletion

File tree

bat/install.sh

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,22 @@ __init_bat() {
2828
# chmod a+x ~/.local/opt/bat-v0.15.4/bin/bat
2929
chmod a+x "$pkg_src_cmd"
3030

31+
# install completions if present (autocomplete/)
32+
if test -d ./bat-*/autocomplete; then
33+
mkdir -p "$pkg_src_dir/share/bash-completion/completions"
34+
mkdir -p "$pkg_src_dir/share/fish/vendor_completions.d"
35+
mkdir -p "$pkg_src_dir/share/zsh/site-functions"
36+
mv ./bat-*/autocomplete/bat.bash "$pkg_src_dir/share/bash-completion/completions/bat" 2>/dev/null || true
37+
mv ./bat-*/autocomplete/bat.fish "$pkg_src_dir/share/fish/vendor_completions.d/bat.fish" 2>/dev/null || true
38+
mv ./bat-*/autocomplete/bat.zsh "$pkg_src_dir/share/zsh/site-functions/_bat" 2>/dev/null || true
39+
fi
40+
41+
# install man page if present
42+
if test -f ./bat-*/bat.1; then
43+
mkdir -p "$pkg_src_dir/share/man/man1"
44+
mv ./bat-*/bat.1 "$pkg_src_dir/share/man/man1/bat.1"
45+
fi
46+
3147
if ! [ -e ~/.config/bat/config ]; then
3248
mkdir -p ~/.config/bat/
3349
touch ~/.config/bat/config

fd/install.sh

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,22 @@ __init_fd() {
2727

2828
# chmod a+x "$HOME/.local/opt/fd-v8.1.1/bin/fd"
2929
chmod a+x "$pkg_src_cmd"
30+
31+
# install completions if present (autocomplete/{fd.bash,fd.fish,_fd})
32+
if test -d ./fd-*/autocomplete; then
33+
mkdir -p "$pkg_src_dir/share/bash-completion/completions"
34+
mkdir -p "$pkg_src_dir/share/fish/vendor_completions.d"
35+
mkdir -p "$pkg_src_dir/share/zsh/site-functions"
36+
mv ./fd-*/autocomplete/fd.bash "$pkg_src_dir/share/bash-completion/completions/fd" 2>/dev/null || true
37+
mv ./fd-*/autocomplete/fd.fish "$pkg_src_dir/share/fish/vendor_completions.d/fd.fish" 2>/dev/null || true
38+
mv ./fd-*/autocomplete/_fd "$pkg_src_dir/share/zsh/site-functions/_fd" 2>/dev/null || true
39+
fi
40+
41+
# install man page if present
42+
if test -f ./fd-*/fd.1; then
43+
mkdir -p "$pkg_src_dir/share/man/man1"
44+
mv ./fd-*/fd.1 "$pkg_src_dir/share/man/man1/fd.1"
45+
fi
3046
}
3147
}
3248

gh/install.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,12 @@ __init_gh() {
2525

2626
# mv ./gh-*/gh ~/.local/opt/gh-v0.99.9/bin/gh
2727
mv ./"$pkg_cmd_name"*/bin/gh "$pkg_src_cmd"
28+
29+
# install man pages if present
30+
if test -d ./"$pkg_cmd_name"*/share/man; then
31+
mkdir -p "$pkg_src_dir/share"
32+
mv ./"$pkg_cmd_name"*/share/man "$pkg_src_dir/share/man"
33+
fi
2834
}
2935

3036
# pkg_get_current_version is recommended, but (soon) not required

goreleaser/install.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,23 @@ __init_goreleaser() {
2525

2626
# mv ./goreleaser-*/goreleaser ~/.local/opt/goreleaser-v1.21.2/bin/goreleaser
2727
mv ./goreleaser "$pkg_src_cmd"
28+
29+
# install completions if present (completions/{goreleaser.bash,.fish,.zsh})
30+
if test -d ./completions; then
31+
mkdir -p "$pkg_src_dir/share/bash-completion/completions"
32+
mkdir -p "$pkg_src_dir/share/fish/vendor_completions.d"
33+
mkdir -p "$pkg_src_dir/share/zsh/site-functions"
34+
mv ./completions/goreleaser.bash "$pkg_src_dir/share/bash-completion/completions/goreleaser" 2>/dev/null || true
35+
mv ./completions/goreleaser.fish "$pkg_src_dir/share/fish/vendor_completions.d/goreleaser.fish" 2>/dev/null || true
36+
mv ./completions/goreleaser.zsh "$pkg_src_dir/share/zsh/site-functions/_goreleaser" 2>/dev/null || true
37+
fi
38+
39+
# install man page if present (manpages/goreleaser.1.gz)
40+
if test -d ./manpages; then
41+
mkdir -p "$pkg_src_dir/share/man/man1"
42+
mv ./manpages/*.1.gz "$pkg_src_dir/share/man/man1/" 2>/dev/null || true
43+
mv ./manpages/*.1 "$pkg_src_dir/share/man/man1/" 2>/dev/null || true
44+
fi
2845
}
2946

3047
# pkg_get_current_version is recommended, but (soon) not required

lsd/install.sh

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,22 @@ __init_lsd() {
2525

2626
# mv ./lsd-*/lsd ~/.local/opt/lsd-v0.17.0/bin/lsd
2727
mv ./lsd-*/lsd "$pkg_src_cmd"
28+
29+
# install completions if present (autocomplete/{_lsd,lsd.fish,lsd.bash-completion})
30+
if test -d ./lsd-*/autocomplete; then
31+
mkdir -p "$pkg_src_dir/share/bash-completion/completions"
32+
mkdir -p "$pkg_src_dir/share/fish/vendor_completions.d"
33+
mkdir -p "$pkg_src_dir/share/zsh/site-functions"
34+
mv ./lsd-*/autocomplete/lsd.bash-completion "$pkg_src_dir/share/bash-completion/completions/lsd" 2>/dev/null || true
35+
mv ./lsd-*/autocomplete/lsd.fish "$pkg_src_dir/share/fish/vendor_completions.d/lsd.fish" 2>/dev/null || true
36+
mv ./lsd-*/autocomplete/_lsd "$pkg_src_dir/share/zsh/site-functions/_lsd" 2>/dev/null || true
37+
fi
38+
39+
# install man page if present
40+
if test -f ./lsd-*/lsd.1; then
41+
mkdir -p "$pkg_src_dir/share/man/man1"
42+
mv ./lsd-*/lsd.1 "$pkg_src_dir/share/man/man1/lsd.1"
43+
fi
2844
}
2945

3046
# pkg_get_current_version is recommended, but (soon) not required

pandoc/install.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,12 @@ __init_pandoc() {
2525

2626
# mv ./pandoc-*/pandoc ~/.local/opt/pandoc-v2.10.1/bin/pandoc
2727
mv ./pandoc-*/bin/pandoc "$pkg_src_cmd"
28+
29+
# install man pages if present (share/man/man1/pandoc*.1.gz)
30+
if test -d ./pandoc-*/share/man; then
31+
mkdir -p "$pkg_src_dir/share"
32+
mv ./pandoc-*/share/man "$pkg_src_dir/share/man"
33+
fi
2834
}
2935

3036
# pkg_get_current_version is recommended, but (soon) not required

rg/install.sh

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,22 @@ __init_rg() {
2626
# mv ./ripgrep-*/rg ~/.local/opt/rg-v12.1.1/bin/rg
2727
mv ./ripgrep-*/rg "$pkg_src_cmd"
2828

29+
# install completions if present (complete/_rg, complete/rg.bash, complete/rg.fish)
30+
if test -d ./ripgrep-*/complete; then
31+
mkdir -p "$pkg_src_dir/share/bash-completion/completions"
32+
mkdir -p "$pkg_src_dir/share/fish/vendor_completions.d"
33+
mkdir -p "$pkg_src_dir/share/zsh/site-functions"
34+
mv ./ripgrep-*/complete/rg.bash "$pkg_src_dir/share/bash-completion/completions/rg" 2>/dev/null || true
35+
mv ./ripgrep-*/complete/rg.fish "$pkg_src_dir/share/fish/vendor_completions.d/rg.fish" 2>/dev/null || true
36+
mv ./ripgrep-*/complete/_rg "$pkg_src_dir/share/zsh/site-functions/_rg" 2>/dev/null || true
37+
fi
38+
39+
# install man page if present
40+
if test -f ./ripgrep-*/doc/rg.1; then
41+
mkdir -p "$pkg_src_dir/share/man/man1"
42+
mv ./ripgrep-*/doc/rg.1 "$pkg_src_dir/share/man/man1/rg.1"
43+
fi
44+
2945
if ! [ -e ~/.ripgreprc ]; then
3046
touch ~/.ripgreprc
3147
fi

sd/install.sh

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,21 @@ __init_sd() {
2929
# ~/.local/opt/sd-v0.99.9/bin
3030
mkdir -p "$(dirname "$pkg_src_cmd")"
3131
mv sd-*/sd "$pkg_src_cmd"
32+
33+
# install completions if present (completions/{sd.bash,sd.fish,_sd})
34+
if test -d sd-*/completions; then
35+
mkdir -p "$pkg_src_dir/share/bash-completion/completions"
36+
mkdir -p "$pkg_src_dir/share/fish/vendor_completions.d"
37+
mkdir -p "$pkg_src_dir/share/zsh/site-functions"
38+
mv sd-*/completions/sd.bash "$pkg_src_dir/share/bash-completion/completions/sd" 2>/dev/null || true
39+
mv sd-*/completions/sd.fish "$pkg_src_dir/share/fish/vendor_completions.d/sd.fish" 2>/dev/null || true
40+
mv sd-*/completions/_sd "$pkg_src_dir/share/zsh/site-functions/_sd" 2>/dev/null || true
41+
fi
42+
43+
# install man page if present
3244
if test -f sd-*/sd.1; then
3345
mkdir -p "$pkg_src_dir/share/man/man1"
34-
mv sd-*/sd.1 "$pkg_src_dir/share/man/man1"
46+
mv sd-*/sd.1 "$pkg_src_dir/share/man/man1/sd.1"
3547
fi
3648
elif test -d sd-*/bin; then
3749
mv sd-* "$pkg_src_dir"

watchexec/install.sh

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,22 @@ __init_watchexec() {
2525

2626
# mv ./watchexec-*/watchexec ~/.local/opt/watchexec-v0.99.9/bin/watchexec
2727
mv ./watchexec-*/watchexec "$pkg_src_cmd"
28+
29+
# install completions if present (completions/{bash,fish,zsh})
30+
if test -d ./watchexec-*/completions; then
31+
mkdir -p "$pkg_src_dir/share/bash-completion/completions"
32+
mkdir -p "$pkg_src_dir/share/fish/vendor_completions.d"
33+
mkdir -p "$pkg_src_dir/share/zsh/site-functions"
34+
mv ./watchexec-*/completions/bash "$pkg_src_dir/share/bash-completion/completions/watchexec" 2>/dev/null || true
35+
mv ./watchexec-*/completions/fish "$pkg_src_dir/share/fish/vendor_completions.d/watchexec.fish" 2>/dev/null || true
36+
mv ./watchexec-*/completions/zsh "$pkg_src_dir/share/zsh/site-functions/_watchexec" 2>/dev/null || true
37+
fi
38+
39+
# install man page if present
40+
if test -f ./watchexec-*/watchexec.1; then
41+
mkdir -p "$pkg_src_dir/share/man/man1"
42+
mv ./watchexec-*/watchexec.1 "$pkg_src_dir/share/man/man1/watchexec.1"
43+
fi
2844
}
2945

3046
# pkg_get_current_version is recommended, but (soon) not required

zoxide/install.sh

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,22 @@ __init_zoxide() {
2525

2626
# mv ./zoxide "~/.local/opt/zoxide-v0.99.9/bin/zoxide"
2727
mv ./zoxide "$pkg_src_cmd"
28+
29+
# install completions if present
30+
if test -d ./completions; then
31+
mkdir -p "$pkg_src_dir/share/bash-completion/completions"
32+
mkdir -p "$pkg_src_dir/share/fish/vendor_completions.d"
33+
mkdir -p "$pkg_src_dir/share/zsh/site-functions"
34+
mv ./completions/zoxide.bash "$pkg_src_dir/share/bash-completion/completions/zoxide" 2>/dev/null || true
35+
mv ./completions/zoxide.fish "$pkg_src_dir/share/fish/vendor_completions.d/zoxide.fish" 2>/dev/null || true
36+
mv ./completions/_zoxide "$pkg_src_dir/share/zsh/site-functions/_zoxide" 2>/dev/null || true
37+
fi
38+
39+
# install man pages if present
40+
if test -d ./man; then
41+
mkdir -p "$pkg_src_dir/share"
42+
mv ./man "$pkg_src_dir/share/man"
43+
fi
2844
}
2945

3046
# pkg_get_current_version is recommended, but (soon) not required

0 commit comments

Comments
 (0)