-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpostinstall-10_base
executable file
·255 lines (235 loc) · 6.06 KB
/
postinstall-10_base
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
#!/bin/bash
export DEBIAN_FRONTEND=noninteractive
export NEEDRESTART_MODE=a
CODENAME=$(lsb_release -sc)
if [[ ! -f "/etc/apt/sources.list.d/backports.list" ]]; then
echo "Activation des dépôts backports"
echo "deb http://deb.debian.org/debian $CODENAME-backports main contrib non-free" | sudo tee -a /etc/apt/sources.list.d/backports.list
sudo apt-get update >/dev/null
fi
if ! dpkg-query -W -f='${Status}' deb-multimedia-keyring >/dev/null; then
echo "Installation deb-multimedia-keyring"
wget -q http://www.deb-multimedia.org/pool/main/d/deb-multimedia-keyring/deb-multimedia-keyring_2016.8.1_all.deb -O /tmp/deb-multimedia-keyring.deb
sudo apt-get install -y /tmp/deb-multimedia-keyring.deb >/dev/null
fi
if [[ ! -f "/etc/apt/sources.list.d/deb-multimedia.list" ]]; then
echo "Installation depot multimedia"
echo "deb https://www.deb-multimedia.org $CODENAME main non-free" | sudo tee -a /etc/apt/sources.list.d/deb-multimedia.list
echo "deb https://www.deb-multimedia.org $CODENAME-backports main" | sudo tee -a /etc/apt/sources.list.d/deb-multimedia.list
sudo apt-get update >/dev/null
fi
PKGS=(
atool
anacron
apticron
backupninja
build-essential
clang
clang-tools
curl
detox
dkms
dos2unix
ffmpeg
ffmpegthumbnailer
firmware-linux
firmware-linux-free
firmware-linux-nonfree
ftp
gdebi
git
jq
ldap-utils
libproxychains4
libssl-dev
libx11-dev
linux-headers-amd64
lldb
locate
mariadb-client
moreutils
needrestart
neofetch
newsboat
nodejs
notcurses-bin
npm
odt2txt
okular
openvpn
pdftk
pkg-config
poppler-utils
proxychains4
putty-tools
python3-ldap
python3-pil
python3-pip
python3-venv
ranger
rdiff-backup
rsync
ruby-dev
ruby-notify
samba-common
shellcheck
strace
sudo
tcpdump
tig
tshark
unrar
vim
w3m
xorriso
)
echo "Installation APT: " "${PKGS[@]}"
sudo apt-get -y install "${PKGS[@]}" >/dev/null
PKGS=(
golang
duf
)
echo "Installation APT backports: " "${PKGS[@]}"
sudo apt-get -y install "${PKGS[@]}" -t bullseye-backports >/dev/null
python3 -m pip install --user pipx >/dev/null
export PATH="$PATH:$HOME/.local/bin"
PIPX_PKGS=(
diffoscope
gita
mdcat
pywal
pywhat
reindent
updog
yt-dlp
)
echo "Installation logiciels pipx: " "${PIPX_PKGS[@]}"
for PKG in "${PIPX_PKGS[@]}"; do
if [[ ! -d "$HOME/.local/pipx/venvs/$PKG" ]]; then
pipx install "$PKG" >/dev/null
fi
done
if [[ ! -f "/etc/bash_completion.d/gita" ]]; then
sudo wget -q https://raw.githubusercontent.com/nosarthur/gita/master/.gita-completion.bash -O /etc/bash_completion.d/gita
fi
PATH=$HOME/.local/bin:$PATH
if [[ ! -d "$HOME/.local/share/fonts/NerdFonts" ]]; then
echo "Installing Nerd Fonts"
sudo apt-get install -y subversion-tools >/dev/null
mkdir -p /tmp/nerd-fonts/patched-fonts
cd /tmp/nerd-fonts/patched-fonts || exit
svn export https://github.com/ryanoasis/nerd-fonts/trunk/patched-fonts/JetBrainsMono >/dev/null
cd /tmp/nerd-fonts/ || exit
wget -q https://raw.githubusercontent.com/ryanoasis/nerd-fonts/master/install.sh
bash install.sh JetBrainsMono >/dev/null
fi
if [[ ! -f "$HOME/.nix-profile/etc/profile.d/nix.sh" ]]; then
echo "Installation nix"
curl -sSL https://nixos.org/nix/install | sh
. "$HOME"/.nix-profile/etc/profile.d/nix.sh
fi
NIX_PKGS=(
bash-completion
delta
direnv
docker-compose
dogdns
fzf
icdiff
miller
navi
swaks
yadm
)
sudo -E sh -c 'echo 1 > /proc/sys/vm/overcommit_memory' # probleme memoire
for PKG in "${NIX_PKGS[@]}"; do
if [[ ! -L "$HOME/.nix-profile/bin/$PKG" ]]; then
echo "Installation pkg nix $PKG"
"$HOME"/.nix-profile/bin/nix-env --quiet -i "$PKG" >/dev/null
fi
done
if [[ ! -f "$HOME/.config/broot/launcher/bash/br" ]]; then
broot --install
fi
/usr/bin/curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --no-modify-path -q -y
source "$HOME"/.cargo/env
echo "Installation pkgs cargo"
CARGO_PKGS=(
bat
bottom
broot
cargo-edit
cargo-update
cargo-watch
choose
du-dust
exa
fd-find
git-delta
gitui
gping
procs
ripgrep
sd
shellharden
skim
starship
topgrade
tre-command
viu
xh
xsv
zoxide
)
for PKG in "${CARGO_PKGS[@]}"; do
echo " pkg $PKG"
cargo -q install "$PKG"
done
cargo -q install nu --features=extra
PKGS_GO=(
github.com/akavel/up
github.com/claudiodangelis/qrcp
github.com/jesseduffield/lazygit
mvdan.cc/sh/v3/cmd/shfmt
)
echo "Installation go get"
for PKG in "${PKGS_GO[@]}"; do
/usr/bin/go install "$PKG"@latest
done
if [[ ! -d $HOME/dev/src/github.com/humboldtux ]]; then
mkdir -p "$HOME"/{bin,dev,pkg} \
"$HOME"/dev/src/github.com/humboldtux
fi
git clone https://github.com/humboldtux/cheats "$HOME"/dev/src/github.com/humboldtux/cheats 2>/dev/null
git clone https://github.com/humboldtux/scripts "$HOME"/dev/src/github.com/humboldtux/scripts 2>/dev/null
"$HOME"/.local/bin/gita add "$HOME"/dev/src/github.com/humboldtux/{cheats,scripts}*
if ! dpkg-query -W -f='${Status}' sysdig >/dev/null; then
echo "Installation sysdig"
curl -sSL https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash
fi
if ! dpkg-query -W -f='${Status}' docker-ce >/dev/null; then
echo "Installation Docker"
curl -sSL https://get.docker.com/ | sh
sudo usermod -aG docker "$USER" >/dev/null
sudo systemctl -q enable docker
sudo systemctl -q restart docker
fi
if [[ ! -f "/etc/apt/sources.list.d/microsoft.list" ]]; then
echo "Installation Powershell"
curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-debian-$CODENAME-prod $CODENAME main" | sudo tee -a /etc/apt/sources.list.d/microsoft.list
fi
sudo apt-get update >/dev/null
sudo apt-get install -y powershell gss-ntlmssp >/dev/null
if [[ ! -d "$HOME/.local/share/yadm/repo.git" ]]; then
echo "Installation Yadm"
"$HOME"/.nix-profile/bin/yadm clone "https://github.com/humboldtux/dotfiles.git"
"$HOME"/.nix-profile/bin/yadm reset --hard
fi
#if [[ ! -d "${HOME}/.cache/wal" ]];then
# ${HOME}/.local/bin/wal -q --theme vscode
#fi
if ! dpkg-query -W -f='${Status}' crowdsec >/dev/null; then
curl -s https://packagecloud.io/install/repositories/crowdsec/crowdsec/script.deb.sh | sudo bash
sudo apt-get install -y crowdsec >/dev/null
fi