-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathinstall.sh
executable file
·561 lines (468 loc) · 14.1 KB
/
install.sh
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
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
#!/usr/bin/env bash
show_msg () {
echo -e '\e[32m'$1'\e[0m'
}
install_update(){
sudo pkcon -y refresh && sudo pkcon -y update
sudo apt -y update && sudo apt -y upgrade
sudo apt install -y net-tools htop
}
install_flatpak(){
sudo apt -y install flatpak
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
sudo apt -y install gnome-software-plugin-flatpak
}
install_wine(){
sudo dpkg --add-architecture i386
curl -s https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add -
sudo add-apt-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main'
sudo add-apt-repository -y ppa:cybermax-dexter/sdl2-backport
sudo apt -y update && sudo apt -y install --install-recommends winehq-stable
sudo apt install -y playonlinux winbind winetricks
wine64 uninstaller
}
install_terminator(){
sudo apt -y install terminator
mkdir -p $HOME/.config/terminator/plugins
# wget https://git.io/v5Zww -O $HOME"/.config/terminator/plugins/terminator-themes.py"
# cp $(pwd)/config/config ~/.config/terminator/
}
install_brave(){
sudo apt -y install apt-transport-https
curl -s https://brave-browser-apt-release.s3.brave.com/brave-core.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-release.gpg add -
echo "deb [arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main" | sudo tee /etc/apt/sources.list.d/brave-browser-release.list
sudo apt -y update && sudo apt -y install brave-browser
}
install_conky(){
sudo apt -y install conky conky-all
mkdir -p ~/.conky
sudo tar -xvzf $(pwd)/config/conky.tar.gz -C ~/.conky
chmod +x $(pwd)/config/conky-manager_2.7_amd64.deb
sudo dpkg -i $(pwd)/config/conky-manager_2.7_amd64.deb
sudo apt -y --fix-broken install
}
install_chrome(){
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb -O chrome.deb
sudo chmod +x chrome.deb && sudo dpkg -i chrome.deb && rm chrome.deb
}
install_teamviewer(){
sudo apt -y install teamviewer
sudo apt -y --fix-broken install
}
install_code(){
curl -L "https://code.visualstudio.com/sha/download?build=stable&os=linux-deb-x64" -o code.deb
sudo chmod +x code.deb && sudo dpkg -i code.deb && rm code.deb
}
install_vnc(){
sudo chmod +x $(pwd)/config/VNC-Server-6.7.2-Linux-x64.deb && sudo dpkg -i $(pwd)/config/VNC-Server-6.7.2-Linux-x64.deb
}
install_parcellite(){
sudo apt -y install parcellite
}
install_flameshot(){
sudo apt -y install flameshot
}
install_ncdu(){
sudo apt -y install ncdu
}
install_xfce_profiles(){
sudo apt -y install xfce4-panel-profiles
}
install_vlc(){
sudo apt -y install vlc
}
install_stacer(){
sudo apt -y install stacer
}
install_kazam(){
sudo apt -y install kazam
}
install_audacity(){
sudo apt -y install audacity
}
install_clamav(){
sudo apt -y install clamav clamtk
}
install_ffmpeg(){
sudo apt -y install ffmpeg
}
install_remmina(){
sudo apt-add-repository -y ppa:remmina-ppa-team/remmina-next
sudo apt -y update
sudo apt -y install remmina
}
install_grub_customizer(){
sudo apt -y install grub-customizer
}
install_cifs_utils(){
sudo apt -y install cifs-utils pst-utils
}
install_gparted(){
sudo apt -y install gparted
}
install_bashrc() {
if [[ $(cat ~/.bashrc | grep -o dotfiles) == dotfiles ]]; then
echo "bashrc is already sourced"
else
echo 'source ~/.doty/.bashrc' >> ~/.bashrc
fi
source "$HOME"/.bashrc
}
install_resolvconf(){
sudo apt -y install resolvconf
sudo systemctl enable resolvconf.service
sudo systemctl start resolvconf.service
if [[ $(cat /etc/resolvconf/resolv.conf.d/head | grep "nameserver 8.8.8.8") == 'nameserver 8.8.8.8' ]]; then
echo "resolvconf is updated"
else
curl -sk https://gist.githubusercontent.com/Sy3Omda/fdd65bbe455b4da93b66ef348b3bd15f/raw/f5250d59d68553c2a4f0b7d88d207bdb0f8bf8af/resolvers.txt | sudo tee -a /etc/resolvconf/resolv.conf.d/head
fi
sleep 1
}
install_hp_printers(){
sudo apt -y install cups hplip avahi-daemon printer-driver-gutenprint
wget -O foo2zjs.tar.gz http://foo2zjs.rkkda.com/foo2zjs.tar.gz && tar zxf foo2zjs.tar.gz && cd foo2zjs
sudo make install && sudo make install-hotplug
cd - && rm -rf foo2zjs*
}
install_timeshift(){
sudo apt -y install timeshift
}
install_peek(){
sudo apt -y install peek
}
install_kubuntu_driver_manager(){
# Proprietary/Nvidia Driver Installer
sudo apt -y install kubuntu-driver-manager
}
install_qapt_deb_installer(){
# (.deb) GUI Installer
sudo apt -y install qapt-deb-installer
}
install_nodejs(){
curl -sL https://deb.nodesource.com/setup_15.x | sudo -E bash -
sudo apt -y install nodejs
}
install_libreoffice(){
sudo add-apt-repository -y ppa:libreoffice/ppa
sudo apt -y update
sudo apt-get -y install libreoffice libreoffice-gtk3 libreoffice-style-*
sudo apt -y install fonts-crosextra-carlito fonts-crosextra-caladea
rm ~/.cache/icon-cache.kcache
}
install_thunderbird(){
sudo apt -y install thunderbird
}
install_nativefier(){
# Check if nodejs installed
if [ $(node -v) ]
then
echo "nodejs is installed"
else
echo "installing nodejs"
curl -sL https://deb.nodesource.com/setup_15.x | sudo -E bash -
sudo apt -y install nodejs
fi
# Check if nativefier installed
if [ $(nativefier -v) ]
then
echo "nativefier is installed"
else
echo "installing nativefier"
sudo npm install -g nativefier
fi
# Check the path exists.
[ -d "/opt/nativefier" ] || sudo mkdir -p "/opt/nativefier"
cd "/opt/nativefier"
# Enable choice for now
read -p "Install FaceBook webapp (y/n)?" choice
case "$choice" in
y|Y ) sudo nativefier --name 'FaceBook' 'www.facebook.com';;
n|N ) show_msg "\nSkipped FaceBook !";;
esac
read -p "Install WhatsApp webapp (y/n)?" choice
case "$choice" in
y|Y ) sudo nativefier --name 'WhatsApp' 'web.whatsapp.com';;
n|N ) show_msg "\nSkipped WhatsApp !";;
esac
read -p "Install Telegram webapp (y/n)?" choice
case "$choice" in
y|Y ) sudo nativefier --name 'Telegram' 'web.telegram.org';;
n|N ) show_msg "\nSkipped Telegram !";;
esac
read -p "Install Gmail webapp (y/n)?" choice
case "$choice" in
y|Y ) sudo nativefier --name 'Gmail' 'mail.google.com';;
n|N ) show_msg "\nSkipped Gmail !";;
esac
read -p "Install Twitter webapp (y/n)?" choice
case "$choice" in
y|Y ) sudo nativefier --name 'Twitter' 'twitter.com';;
n|N ) show_msg "\nSkipped Twitter !";;
esac
read -p "Install Github webapp (y/n)?" choice
case "$choice" in
y|Y ) sudo nativefier --name 'Github' 'github.com';;
n|N ) show_msg "\nSkipped Github !";;
esac
cd -
}
install_obs(){
sudo add-apt-repository -y ppa:obsproject/obs-studio
sudo apt update -y
sudo apt install -y obs-studio
}
install_power_management_tools(){
sudo add-apt-repository -y ppa:linuxuprising/apps
sudo add-apt-repository -y ppa:slimbook/slimbook
sudo apt install -y tlp powertop tlpui slimbookbattery
}
install_powershell(){
sudo snap install powershell --classic
}
install_NoiseTorch(){
curl https://api.github.com/repos/lawl/NoiseTorch/releases/latest | grep -E 'browser_download_url' | grep "NoiseTorch_x64" | cut -d '"' -f 4 | wget -qi -
tar -C $HOME -xzf NoiseTorch_x64.tgz
rm NoiseTorch_x64.tgz
gtk-update-icon-cache
sudo setcap 'CAP_SYS_RESOURCE=+ep' ~/.local/bin/noisetorch
}
install_all(){
install_update
install_flatpak
install_terminator
install_bashrc
install_brave
install_conky
install_chrome
install_code
install_parcellite
install_flameshot
install_ncdu
install_vlc
install_stacer
install_kazam
install_audacity
install_clamav
install_ffmpeg
install_remmina
install_grub_customizer
install_cifs_utils
install_gparted
install_wine
install_resolvconf
install_timeshift
install_peek
install_kubuntu_driver_manager
install_qapt_deb_installer
install_nodejs
install_libreoffice
install_thunderbird
install_nativefier
install_obs
install_power_management_tools
install_powershell
install_NoiseTorch
}
read -p "Install All Programs. Are you sure (y/n)?" choice
case "$choice" in
y|Y ) install_all;;
n|N ) show_msg "\nInstall programs seperatly." &&
read -p "Install update (y/n)?" choice
case "$choice" in
y|Y ) install_update;;
n|N ) show_msg "\nSkipped update !";;
esac
read -p "Install flatpak (y/n)?" choice
case "$choice" in
y|Y ) install_flatpak;;
n|N ) show_msg "\nSkipped flatpak !";;
esac
read -p "Install terminator (y/n)?" choice
case "$choice" in
y|Y ) install_terminator;;
n|N ) show_msg "\nSkipped terminator !";;
esac
read -p "Install bashrc (y/n)?" choice
case "$choice" in
y|Y ) install_bashrc;;
n|N ) show_msg "\nSkipped bashrc !";;
esac
read -p "Install brave (y/n)?" choice
case "$choice" in
y|Y ) install_brave;;
n|N ) show_msg "\nSkipped brave !";;
esac
read -p "Install conky (y/n)?" choice
case "$choice" in
y|Y ) install_conky;;
n|N ) show_msg "\nSkipped conky !";;
esac
read -p "Install chrome (y/n)?" choice
case "$choice" in
y|Y ) install_chrome;;
n|N ) show_msg "\nSkipped chrome !";;
esac
read -p "Install teamviewer (y/n)?" choice
case "$choice" in
y|Y ) install_teamviewer;;
n|N ) show_msg "\nSkipped teamviewer !";;
esac
read -p "Install code (y/n)?" choice
case "$choice" in
y|Y ) install_code;;
n|N ) show_msg "\nSkipped code !";;
esac
read -p "Install vnc (y/n)?" choice
case "$choice" in
y|Y ) install_vnc;;
n|N ) show_msg "\nSkipped vnc !";;
esac
read -p "Install parcellite (y/n)?" choice
case "$choice" in
y|Y ) install_parcellite;;
n|N ) show_msg "\nSkipped parcellite !";;
esac
read -p "Install flameshot screenshot (y/n)?" choice
case "$choice" in
y|Y ) install_flameshot;;
n|N ) show_msg "\nSkipped flameshot screenshot !";;
esac
read -p "Install ncdu (y/n)?" choice
case "$choice" in
y|Y ) install_ncdu;;
n|N ) show_msg "\nSkipped ncdu !";;
esac
read -p "Install xfce profiles (y/n)?" choice
case "$choice" in
y|Y ) install_xfce_profiles;;
n|N ) show_msg "\nSkipped xfce profiles !";;
esac
read -p "Install vlc (y/n)?" choice
case "$choice" in
y|Y ) install_vlc;;
n|N ) show_msg "\nSkipped vlc !";;
esac
read -p "Install stacer (y/n)?" choice
case "$choice" in
y|Y ) install_stacer;;
n|N ) show_msg "\nSkipped stacer !";;
esac
read -p "Install kazam (y/n)?" choice
case "$choice" in
y|Y ) install_kazam;;
n|N ) show_msg "\nSkipped kazam !";;
esac
read -p "Install audacity (y/n)?" choice
case "$choice" in
y|Y ) install_audacity;;
n|N ) show_msg "\nSkipped audacity !";;
esac
read -p "Install clamav (y/n)?" choice
case "$choice" in
y|Y ) install_clamav;;
n|N ) show_msg "\nSkipped clamav !";;
esac
read -p "Install ffmpeg (y/n)?" choice
case "$choice" in
y|Y ) install_ffmpeg;;
n|N ) show_msg "\nSkipped ffmpeg !";;
esac
read -p "Install remmina (y/n)?" choice
case "$choice" in
y|Y ) install_remmina;;
n|N ) show_msg "\nSkipped remmina !";;
esac
read -p "Install grub customizer (y/n)?" choice
case "$choice" in
y|Y ) install_grub_customizer;;
n|N ) show_msg "\nSkipped grub customizer !";;
esac
read -p "Install cifs utils (y/n)?" choice
case "$choice" in
y|Y ) install_cifs_utils;;
n|N ) show_msg "\nSkipped cifs utils !";;
esac
read -p "Install gparted (y/n)?" choice
case "$choice" in
y|Y ) install_gparted;;
n|N ) show_msg "\nSkipped gparted !";;
esac
read -p "Install wine (y/n)?" choice
case "$choice" in
y|Y ) install_wine;;
n|N ) show_msg "\nSkipped wine !";;
esac
read -p "Install resolvconf (y/n)?" choice
case "$choice" in
y|Y ) install_resolvconf;;
n|N ) show_msg "\nSkipped resolvconf !";;
esac
read -p "Install HP Printers (y/n)?" choice
case "$choice" in
y|Y ) install_hp_printers;;
n|N ) show_msg "\nSkipped HP Printers !";;
esac
read -p "Install timeshift (y/n)?" choice
case "$choice" in
y|Y ) install_timeshift;;
n|N ) show_msg "\nSkipped timeshift !";;
esac
read -p "Install peek (y/n)?" choice
case "$choice" in
y|Y ) install_peek;;
n|N ) show_msg "\nSkipped peek !";;
esac
read -p "install Kubuntu Driver Manager (y/n)?" choice
case "$choice" in
y|Y ) install_kubuntu_driver_manager;;
n|N ) show_msg "\nSkipped Kubuntu !";;
esac
read -p "install qapt deb installer (y/n)?" choice
case "$choice" in
y|Y ) install_qapt_deb_installer;;
n|N ) show_msg "\nSkipped qapt deb installer !";;
esac
read -p "install nodejs (y/n)?" choice
case "$choice" in
y|Y ) install_nodejs;;
n|N ) show_msg "\nSkipped nodejs !";;
esac
read -p "install libreoffice (y/n)?" choice
case "$choice" in
y|Y ) install_libreoffice;;
n|N ) show_msg "\nSkipped libreoffice !";;
esac
read -p "install thunderbird (y/n)?" choice
case "$choice" in
y|Y ) install_thunderbird;;
n|N ) show_msg "\nSkipped thunderbird !";;
esac
read -p "install nativefier (y/n)?" choice
case "$choice" in
y|Y ) install_nativefier;;
n|N ) show_msg "\nSkipped nativefier !";;
esac
read -p "install OBS (y/n)?" choice
case "$choice" in
y|Y ) install_obs;;
n|N ) show_msg "\nSkipped OBS !";;
esac
read -p "install Power Management Tools (y/n)?" choice
case "$choice" in
y|Y ) install_power_management_tools;;
n|N ) show_msg "\nSkipped Power Management Tools !";;
esac
read -p "install PowerShell (y/n)?" choice
case "$choice" in
y|Y ) install_powershell;;
n|N ) show_msg "\nSkipped PowerShell !";;
esac
read -p "install NoiseTorch (y/n)?" choice
case "$choice" in
y|Y ) install_NoiseTorch;;
n|N ) show_msg "\nSkipped NoiseTorch !";;
esac
echo "Script ended !" & exit;;
* ) show_msg "\nType y or n !!! \nScript ended" && exit;;
esac