1
1
#! /bin/bash
2
2
3
+ set -eu
4
+
3
5
_timestamp=$( date +%s)
4
6
5
7
# ahoy
6
8
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/ahoy-cli/ahoy/releases/latest" | sed ' s/.*tag\/v//g' )
9
+ [ -n " $VERSION " ]
7
10
echo " ahoy version: $VERSION "
8
11
perl -pi -e " s@AHOY_VERSION=.*@AHOY_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
9
12
10
13
# fzf*
11
14
VERSION=$( curl -s " https://github.com/junegunn/fzf/commits" | grep -o ' commit/[a-f0-9]\{40\}' | head -1 | cut -d' /' -f2)
15
+ [ -n " $VERSION " ]
12
16
echo " fzf latest commit SHA1: $VERSION "
13
17
perl -pi -e " s@FZF_SHA1=.*@FZF_SHA1=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
14
18
VERSION=$( curl -s " https://github.com/junegunn/fzf-git.sh/commits" | grep -o ' commit/[a-f0-9]\{40\}' | head -1 | cut -d' /' -f2)
@@ -17,101 +21,125 @@ perl -pi -e "s@FZFGIT_SHA1=.*@FZFGIT_SHA1=${VERSION}; \\\\@g" web-build/Dockerfi
17
21
18
22
# bat
19
23
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/sharkdp/bat/releases/latest" | sed ' s/.*tag\/v//g' )
20
- echo " bat version: $VERSION "
21
- perl -pi -e " s@BAT_VERSION=.*@BAT_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
24
+ [ -n " $VERSION " ]
25
+ if [ -n " $VERSION " ]; then
26
+ echo " bat version: $VERSION "
27
+ perl -pi -e " s@BAT_VERSION=.*@BAT_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
28
+ fi
22
29
23
30
# z.lua
24
31
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/skywind3000/z.lua/releases/latest" | sed ' s/.*tag\///g' )
25
- echo " z.lua version: $VERSION "
26
- perl -pi -e " s@ZLUA_VERSION=.*@ZLUA_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
32
+ [ -n " $VERSION " ]
33
+ if [ -n " $VERSION " ]; then
34
+ echo " z.lua version: $VERSION "
35
+ perl -pi -e " s@ZLUA_VERSION=.*@ZLUA_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
36
+ fi
27
37
28
38
# starship (bash)
29
39
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/starship/starship/releases/latest" | sed ' s/.*tag\/v//g' )
40
+ [ -n " $VERSION " ]
30
41
echo " starship version: $VERSION "
31
42
perl -pi -e " s@STARSHIP_VERSION=.*@STARSHIP_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
32
43
33
44
# gum
34
45
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/charmbracelet/gum/releases/latest" | sed ' s/.*tag\/v//g' )
46
+ [ -n " $VERSION " ]
35
47
echo " gum version: $VERSION "
36
48
perl -pi -e " s@GUM_VERSION=.*@GUM_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
37
49
38
50
# fish
39
51
VERSION=$( curl -Ls " https://download.opensuse.org/download/repositories/shells:/fish:/release:/3/Debian_12/?jsontable&_=${_timestamp} " | jq -r ' .data | .[] | select(.name | endswith(".dsc")) | .name' | sed ' s/fish_\(.*\)\.dsc/\1/g' )
52
+ [ -n " $VERSION " ]
40
53
echo " fish debian version from opensuse: $VERSION "
41
54
perl -pi -e " s@FISH_VERSION=.*@FISH_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
42
55
43
56
# eza
44
57
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/eza-community/eza/releases/latest" | sed ' s/.*tag\/v//g' )
58
+ [ -n " $VERSION " ]
45
59
echo " eza version: $VERSION "
46
60
perl -pi -e " s@EZA_VERSION=.*@EZA_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
47
61
48
62
# go
49
63
VERSION=$( curl -Ls " https://go.dev/VERSION?m=text" | head -1 | sed " s/go//" )
64
+ [ -n " $VERSION " ]
50
65
echo " go version: $VERSION "
51
66
perl -pi -e " s@GO_VERSION=.*@GO_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
52
67
53
68
# fisher
54
69
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/jorgebucaran/fisher/releases/latest" | sed ' s/.*tag\///g' )
70
+ [ -n " $VERSION " ]
55
71
echo " fisher (fish) version: $VERSION "
56
72
perl -pi -e " s@FISHER_VERSION=.*@FISHER_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
57
73
58
74
# tide
59
75
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/IlanCosman/tide/releases/latest" | sed ' s/.*tag\/v//g' )
76
+ [ -n " $VERSION " ]
60
77
echo " tide (fish) version: $VERSION "
61
78
perl -pi -e " s@TIDE_VERSION=.*@TIDE_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
62
79
63
80
# bass
64
81
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/edc/bass/releases/latest" | sed ' s/.*tag\/v//g' )
82
+ [ -n " $VERSION " ]
65
83
echo " bass (fish) version: $VERSION "
66
84
perl -pi -e " s@BASS_VERSION=.*@BASS_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
67
85
68
86
# bun
69
87
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/oven-sh/bun/releases/latest" | sed ' s/.*tag\/bun-v//g' )
88
+ [ -n " $VERSION " ]
70
89
echo " bun version: $VERSION "
71
90
perl -pi -e " s@BUN_VERSION=.*@BUN_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
72
91
73
92
# sysbox
74
93
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/skx/sysbox/releases/latest" | sed ' s/.*tag\/release-//g' )
94
+ [ -n " $VERSION " ]
75
95
echo " sysbox (go) version: $VERSION "
76
96
perl -pi -e " s@SYSBOX_VERSION=.*@SYSBOX_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
77
97
78
98
# recur
79
99
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/dbohdan/recur/releases/latest" | sed ' s/.*tag\/v//g' )
100
+ [ -n " $VERSION " ]
80
101
echo " recur (go) version: $VERSION "
81
102
perl -pi -e " s@RECUR_VERSION=.*@RECUR_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
82
103
83
104
# rust
84
105
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/rust-lang/rust/releases/latest" | sed ' s/.*tag\///g' )
106
+ [ -n " $VERSION " ]
85
107
echo " rust version: $VERSION "
86
108
perl -pi -e " s@RUST_VERSION=.*@RUST_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
87
109
88
110
# spacer
89
111
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/samwho/spacer/releases/latest" | sed ' s/.*tag\/v//g' )
112
+ [ -n " $VERSION " ]
90
113
echo " spacer (rust) version: $VERSION "
91
114
perl -pi -e " s@SPACER_VERSION=.*@SPACER_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
92
115
93
116
# delta
94
117
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/dandavison/delta/releases/latest" | sed ' s/.*tag\///g' )
118
+ [ -n " $VERSION " ]
95
119
echo " git-delta (rust) version: $VERSION "
96
120
perl -pi -e " s@DELTA_VERSION=.*@DELTA_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
97
121
98
122
# kitty
99
123
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/kovidgoyal/kitty/releases/latest" | sed ' s/.*tag\/v//g' )
124
+ [ -n " $VERSION " ]
100
125
echo " kitty version: $VERSION "
101
126
perl -pi -e " s@KITTY_VERSION=.*@KITTY_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
102
127
103
128
# terminaltexteffects
104
129
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/ChrisBuilds/terminaltexteffects/releases/latest" | sed ' s/.*tag\/release-//g' )
130
+ [ -n " $VERSION " ]
105
131
echo " terminaltexteffects version: $VERSION "
106
132
perl -pi -e " s@TTE_VERSION=.*@TTE_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
107
133
108
134
# lazygit
109
135
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/jesseduffield/lazygit/releases/latest" | sed ' s/.*tag\/v//g' )
136
+ [ -n " $VERSION " ]
110
137
echo " lazygit version: $VERSION "
111
138
perl -pi -e " s@LAZYGIT_VERSION=.*@LAZYGIT_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
112
139
113
140
# ov
114
141
VERSION=$( curl -Ls -o /dev/null -w %{url_effective} " https://github.com/noborus/ov/releases/latest" | sed ' s/.*tag\/v//g' )
142
+ [ -n " $VERSION " ]
115
143
echo " ov - feature rich terminal pager version: $VERSION "
116
144
perl -pi -e " s@OV_VERSION=.*@OV_VERSION=${VERSION} ; \\\\ @g" web-build/Dockerfile.pimp-my-shell
117
145
0 commit comments