-
Notifications
You must be signed in to change notification settings - Fork 6
/
postinstall-debian-tui
297 lines (227 loc) · 5.02 KB
/
postinstall-debian-tui
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
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
#!/bin/bash
###### ADD SOURCE HERE ######
source ./source/scripts-tui.sh
######
# Root checker
function root_check() {
echo "Utilisateur du script : $(whoami)"
if [[ $EUID -ne 0 ]]; then
echo "Accès root interdit."
if [[ -f /usr/bin/sudo ]]; then
echo "Sudo installé"
is_user_sudo=$(sudo -k)
if [[ $is_user_sudo == "" ]] ; then
echo "Sudo configuré pour l'utilisateur."
run_with_sudo
exit 1
else
sudo_help
fi
else
sudo_help
fi
else
menu1
fi
}
function sudo_help() {
clear
echo "Le script necessite les droits d'administration pour fonctionner.
"
is_user_sudo=$(sudo -k)
if [[ $is_user_sudo == "" ]] ; then
echo "Votre utilisateur ne fait pas partie du groupe Sudo."
echo "Cette configuration est optionnelle mais recommandée."
read -p "Voulez vous ajouter votre utilisateur maintenant au groupe SUDO [o/N] ? " sudo_configure
case $sudo_configure in
o|O)
if [[ ! -f /usr/bin/sudo ]]; then
echo "Sudo non installé, installation..."
su - -c "apt install -y sudo > /dev/null"
fi
echo "Ajout de l'utilisateur au groupe SUDO"
su - -c "usermod -aG sudo $(who | grep tty | cut -d " " -f 1)"
echo "
Vous devrez vous relogguer pour que les modifications prennent effet. Lancement du script avec root.
"
sleep 2
run_script
exit 1
;;
n|N|*)
run_script
exit 1
;;
esac
fi
run_script
exit 1
}
function run_script() {
clear
echo "Lancement du script avec le compte ROOT "
su root -c "bash $homedir/postinstall-debian-tui"
exit 1
}
function run_with_sudo() {
echo "
Le script à besoin des droits ROOT pour fonctionner. Utilisation de sudo pour exécuter le script.
"
sudo chmod +x $homedir/postinstall-debian-tui
sudo $homedir/postinstall-debian-tui
exit 1
}
function menu1() {
clear
echo " ------------------ POSTINSTALL DEBIAN TUI ------------------
1- Configurer SECUREBOOT et installer les Signatures
2- Installer les drivers Nvidia
3- Installer les drivers AMD
4- Programmes Utilitaires / Additionnels
T- Postinstall Debian TESTING / SID (Bêta)
0- Quitter
"
read -n2 -p "Choix ? " choix
case "$choix" in
1) secureboot
;;
2) nvidia1
;;
3) amd1
;;
4) tools1
;;
t|T) debian_testing
;;
f|F) neofrog
;;
0) export success="2"
clear && exit 1
;;
*) menu1
;;
esac
}
function nvidia1() {
clear
echo " -------------------------- NVIDIA --------------------------
1- Installer driver Nvidia Stable LTS (Recommandé)
2- Autres drivers Nvidia (Pour utilisateurs Expérimentés !!)
3- Supprimer driver Nvidia
0- Retour
"
read -n2 -p "Choix ? " choix
case "$choix" in
1) nvidia-stable
;;
2) nvidia2
;;
3) nvidia-rollback
;;
0) menu1
;;
*) nvidia1
;;
esac
}
function nvidia2() {
clear
echo " -------------------------- NVIDIA - Autres Drivers --------------------------
1- Installer driver (DERNIERE VERSION) + dépôt Nvidia (Recommandé/Officiel Nvidia) (Compatible Testing/Sid/Backports)
----------------------- NVIDIA - Version TEST/DEV -----------------------
2- Installer driver Nvidia de Testing en pin 10 (Pour Debian Stable UNIQUEMENT !!)
3- Installer driver Nvidia Experimental (Nvidia-dev, Necessite Sid pin 10 !)
0- Retour
"
read -n2 -p "Choix ? " choix
case "$choix" in
1) nvidia-cuda
;;
2) nvidia-testing-on-stable
;;
3) nvidia-experimental
;;
0) menu1
;;
*) nvidia2
;;
esac
}
function amd1() {
clear
echo " ---------------------------- AMD ---------------------------
1- Installer Mesa Kisak Fresh
2- Installer AMD Vulkan
3- Installer ROCM opencl et ROCM HIP
0- Retour
"
read -n2 -p "Choix ? " choix
case "$choix" in
1) mesa-kisak
;;
2) amd-vulkan
;;
3) rocm
;;
0) menu1
;;
*) amd1
;;
esac
}
function tools1() {
clear
echo " ---------------------------- TOOLS --------------------------
--- Gestionnaires de paquets ---
1- Installer Deb-Get (Debian Stable uniquement)
2- Installer Pacstall (AUR pour Debian)
--- Applications Gaming ---
3- Installer Steam
4- Installer Lutris (Dépôt additionnel OBS officiel)
5- Installer Wine-Staging (Dépôt additionnel officiel)
--- Applications Supplémentaires ---
D- Installer Discord (Dépot additionnel "Javinator9889")
--- Outils Linux ---
6- Mettre à jour les Firmware-Linux à la dernière version GIT
7- Ajouter les dépôts Backports pour Debian Stable
--- Outils Supplémentaires ---
8- Installer les repository de Sid (pin 10)
9- Utiliser l'outil d'ajout de PPA pour Debian (EXPERTS !!)
--- Outils Laptop ---
E- Installer Envycontrol
0- Retour
"
read -n2 -p "Choix ? " choix
case "$choix" in
1) deb-get
;;
2) pacstall
;;
3) steam
;;
4) lutris
;;
d|D) discord
;;
5) wine-staging
;;
6) update-firmware
;;
7) backports
;;
8) install-sid
;;
9) add-ppa-debian
;;
e|E) envycontrol
;;
0) menu1
;;
*) tools1
;;
esac
}
clear
export homedir=$(pwd)
chmod +x $homedir/data/*.sh
root_check