-
Notifications
You must be signed in to change notification settings - Fork 14
/
restore-packagelist-Ubuntu.bash
executable file
·2998 lines (2673 loc) · 153 KB
/
restore-packagelist-Ubuntu.bash
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
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#!/bin/bash
#######################################################################################################
# UEFI guidelines,tips and tricks (updated in June 2017):
#######################################################################################################
# !!!!! STEP 1) Method to boot 2GB USB stick in UEFI compatible mode in order to
# !!!!! create dual boot install where both Windows 10 and Ubuntu are booting in UEFI+SecureBoot mode:
# !!!!! Install Rufus USB utility in Windows 10 64-bit using chocolatey. Format USB stick in FAT32 disk format.
# !!!!! Write .iso image to USB stick in Rufus using GPT partitioning (not MBR partitioning) to ensure
# !!!!! it can boot in UEFI SecureBoot mode. Reboot into UEFI BIOS settings. Make sure to move new
# !!!!! UEFI USB partition to top of UEFI boot list.Save change to UEFI BIOS settings.
# !!!!! STEP 2) Fix UEFI boot loader issues where Windows 10 skips the Ubuntu EFI bootloader
# !!!!! by using BCDEdit in Windows 10 or by installing efibootmgr Ubuntu package
# !!!!! in an Ubuntu LiveUSB session and then following these instructions:
# !!!!! https://www.lifewire.com/fix-uefi-bootloader-issues-when-dual-booting-2200655
# !!!!! Also try changing the OS boot loader order in the UEFI settings screen after installing Ubuntu
# !!!!! in UEFI+SecureBoot mode. Make sure Ubuntu EFI bootloader is put above the Windows EFI bootloader.
# !!!!! Disable QuickBoot/FastBoot and Intel Smart Response Technology (SRT) in the UEFI settings screen.
#######################################################################################################
# !!!!! Mac OS X users (v10.9 or newer) should install and use homebrew cask command line tool to install software:
# !!!!! https://github.com/MarkRijckenberg/shell-scripts/blob/master/OSX-restore-packagelist.bash
# !!!!! for semi-automated OS X application deployments and updates
# !!!!! WINDOWS 8.1 64-bit users should use ninite.com and
# !!!!! https://github.com/MarkRijckenberg/shell-scripts/blob/master/Windows-restore-packagelist.cmd
# !!!!! for semi-automated Windows application deployments and updates
# !!!!! WINDOWS 8.1 64-bit users should install "Classic Start" utility
# !!!!! and disable Superfetch Windows service to avoid hard disk thrashing and excessive memory use
# !!!!! WINDOWS 8.1 64-bit users should use http://www.pendrivelinux.com/yumi-multiboot-usb-creator/ to
# !!!!! to add operating systems one by one in a flexible manner onto a multi-boot multi-OS USB stick
# !!!!! WINDOWS 8.1 64-bit users should install new games via Steam and via www.pokki.com
# !!!!! WINDOWS 8.1 64-bit App Store URL: http://windows.microsoft.com/en-us/windows-8/apps#Cat=t1
# !!!!! WINDOWS 8.1 64-bit Second App Store URL: http://www.pokki.com/
# !!!!! WINDOWS 10 64-bit: to avoid memory leaks in svchost process: disable the BITS (background intelligent transfer
# !!!!! service) and Windows Superfetch/prefetch service in services.msc !!!
# Run this script using this command: time bash restore-packagelist-Ubuntu.bash
# TYPE: Bash Shell script.
# PURPOSE: This bash shell script allows you to easily restore packages into a clean install of
# neon-useredition-20160630-1018-amd64.iso or Lubuntu 16.04 LTS 64-bit:
# RECOMMENDS: minimum of 2 gigabytes of RAM memory
# REQUIRES: Lubuntu 17.10 64-bit or newer
# (to support UEFI+SecureBoot+biber+bibtex+bluetooth),
# cinnamon-bluetooth,
# wget, apt, unp, wine, biber, biblatex
# REQUIRES: kernel version 4.10 or newer
# CONFLICTS: with Kubuntu, Linux Mint and DistroAstro packages!!!!!!! Do not use any package repository except for
# Ubuntu package repositories -> Linux Mint and DistroAstro packages destabilize the GUI interface
# Use Cinnamon instead of Unity interface, because Unity causes Teamviewer sessions to slow down due to window
# animation in Unity
# REQUIRED FREE DISKSPACE FOR Lubuntu 16.04 LTS 64-bit : 2.7 GB of free disk space in root partition
# REQUIRED FREE DISKSPACE FOR BASEPACKAGES: 6.4 GB of free disk space in root partition after installing Lubuntu 16.04 LTS 64-bit
# REQUIRED FREE DISKSPACE FOR ASTRONOMY PACKAGES: 2.340 GB of free disk space in root partition after installing Lubuntu/Xubuntu 14.04 LTS 64-bit
# TOTAL REQUIRED DISKSPACE IN ROOT (/) WITHOUT INSTALLING ASTRONOMY SOFTWARE: 2.7 GB + 6.4 GB = 9.1 GB
# TOTAL REQUIRED DISKSPACE IN ROOT (/) WHEN INSTALLING BASEPACKAGES + ASTRONOMY SOFTWARE: 9.1 GB + 2.340 GB = 11.44 GB
# INSTALLATION DURATION WITHOUT INSTALLING ASTRONOMY SOFTWARE: around 30 minutes on a modern laptop without SSD storage
# COMPATIBILITY WITH WIRELESS BLUETOOTH SPEAKERS: bluetooth speakers fully work in Linux Mint 16 Cinnamon
# thanks to cinnamon-bluetooth package.
# To make bluetooth speakers work in lxqt desktop, run these 4 Terminal commands:
# 1) pactl list | grep -i module-bluetooth-discover
# 2) pactl load-module module-bluetooth-discover
# 3) pavucontrol
# 4) sudo apt remove blueman
# -> select bluetooth speakers as output in pavucontrol
# INSTALL DURATION: 20 minutes for install of Lubuntu/Xubuntu 14.04 LTS 64-bit + 74 minutes for install of base packages and PPA packages
# Author: Mark Rijckenberg
# INITIAL REVISION DATE: 20120812
# LAST REVISION DATE: June 2017
# regarding the HP Laserjet 1020 in Berlin:
# procedure to install printer driver for HP Laserjet 1020 without needing access to openprinting.org website:
# see https://github.com/MarkRijckenberg/shell-scripts/blob/master/hplip-to-foo2zjs-driver-install.bash
#sudo su
PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin
#Prerequisites: USB drives SAMSUNG and IOMEGA need to be mounted correctly in order for this script to work correctly!
LogDay=`date -I`
MACHINE_TYPE=`uname -m`
# define Astronomy filename variables
SCISOFTFILENAME="7.7.0"
C2AFILENAME="c2a_full_2_1_3.zip"
AUDELAFILENAME="audela-2.1.0"
WEKAFILENAME=
#define source directories
HOME=$(eval echo ~${SUDO_USER})
SOURCE2=/etc/
SOURCE3=/media/windows/rsync/
#define target directories where backup will be stored
cd $HOME
TARGET1=/media/SAMSUNG/$HOME/
TARGET2=/media/IOMEGA/$HOME/
TARGET3=/media/SAMSUNG/etc/
TARGET4=/media/IOMEGA/etc/
TARGET5=/media/SAMSUNG/media/windowsdata/rsync/
TARGET6=/media/IOMEGA/media/windowsdata/rsync/
ZIP=zip/
TAR=tar/
PDF=pdf/
DEB=deb/
KMZ=kmz/
mkdir $ZIP
mkdir $TAR
mkdir $PDF
mkdir $DEB
mkdir $KMZ
mkdir triatlas
# clean up current directory
echo "Performing file cleanup"
cd $HOME
mv *.deb $DEB
rm *.exe
mv *.km? $KMZ
mv *.pdf $PDF
mv *gz $TAR
mv *.zip $ZIP
rm *.cab
rm *.crt
rm .goutputstrea*
rm *.html
rm *.sh
rm *.xpi
rm ica_*
rm google*
# sudo rm /etc/apt/sources.list.d/*
sudo rm /etc/apt/trusted.gpg.d/*
# uninstall packagekit because packagekitd consumes too much CPU
sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes packagekit
# clean up old install of vlc player:
sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes libvlccore8 libvlccore9
#sudo /usr/bin/rsync -quvra --exclude='.*' --exclude "$HOME.gvfs" --max-size='100M' $TARGET1 $HOME
#sudo /usr/bin/rsync -quvra --exclude='.*' --exclude "$HOME.gvfs" --max-size='100M' $TARGET2 $HOME
#sudo /usr/bin/rsync -quvra --exclude='.*' --exclude "$HOME.gvfs" --max-size='100M' $TARGET3 $SOURCE2
#sudo /usr/bin/rsync -quvra --exclude='.*' --exclude "$HOME.gvfs" --max-size='100M' $TARGET4 $SOURCE2
# not required during restore: sudo /usr/bin/rsync -quvra --exclude='.*' --exclude "$HOME.gvfs" --max-size='100M' $TARGET5 $SOURCE3
# not required during restore: sudo /usr/bin/rsync -quvra --exclude='.*' --exclude "$HOME.gvfs" --max-size='100M' $TARGET6 $SOURCE3
#sudo DEBIAN_FRONTEND=noninteractive apt install dselect rsync -y
#sudo DEBIAN_FRONTEND=noninteractive apt-key add $TARGET1/Repo.keys
# sudo DEBIAN_FRONTEND=noninteractive apt-key add Repo.keys
#sudo dpkg --set-selections < $TARGET1/Package.list
#sudo dpkg --set-selections < Package.list
#sudo dselect
#sudo cp /etc/apt/sources.list /etc/apt/sources.list.$LogDay.backup
#sudo cp sources.list.12.04 /etc/apt/sources.list
###############################################################################################
# BASE PACKAGES SECTION #
###############################################################################################
# 20170805: disable systemd service / timer which causes apt-get update to fail in AppVM or TemplateVM
# running Ubuntu 17.04 on Xen hypervisor in Qubes OS
sudo systemctl disable apt-daily.service # disable run when system boot
sudo systemctl disable apt-daily.timer # disable timer run
# https://www.maketecheasier.com/fix-windows-linux-show-different-times/
timedatectl set-local-rtc 1 --adjust-system-clock
# show filelist before installing
cd
comm -23 <(apt-mark showmanual | sort -u) <(gzip -dc /var/log/installer/initial-status.gz | sed -n 's/^Package: //p' | sort -u) > filelist-before-installing.txt
# store start time when running script
start=$(date +%s)
# delete old custom aliases in ~/.bashrc file
egrep -v 'apt|d-u|wget|googler|streamlink' ~/.bashrc > ~/.bashrc.$LogDay.backup
cp ~/.bashrc.$LogDay.backup ~/.bashrc
# define custom aliases in ~/.bashrc file
echo "alias apti='sudo apt update;sudo apt install '" >> ~/.bashrc
echo "alias aptr='sudo apt remove '" >> ~/.bashrc
echo "alias aptp='sudo apt purge '" >> ~/.bashrc
echo "alias aptu='sudo apt update'" >> ~/.bashrc
echo "alias apts='apt search '" >> ~/.bashrc
echo "alias d-u='sudo apt update;sudo apt upgrade'" >> ~/.bashrc
echo "alias wget='wget --no-check-certificate'" >> ~/.bashrc
echo "alias g='googler -n 10 -c be -x '" >> ~/.bashrc
echo "alias s='streamlink'" >> ~/.bashrc
alias wget="wget --no-check-certificate"
# define custom config in .streamlinkrc file
rm ~/.streamlinkrc
touch ~/.streamlinkrc
echo "player=vlc" >> ~/.streamlinkrc
# turn off apport error/crash reporting
sudo sed -i s/enabled=1/enabled=0/ /etc/default/apport
# lower swappiness value to 10
# Decrease swap usage to a more reasonable level
rm /tmp/sysctl.conf
rm /tmp/sysctl.conf.1
cp /etc/sysctl.conf /tmp/sysctl.conf
grep -v vm.swappiness /tmp/sysctl.conf > /tmp/sysctl.conf.1
echo 'vm.swappiness=10' >> /tmp/sysctl.conf.1
sudo cp /tmp/sysctl.conf.1 /etc/sysctl.conf
# enable new Quad9 (9.9.9.9) DNS and DNSSEC service
# in Ubuntu 17.10 64-bit using a bash shell script
sudo apt purge unbound
LogTime=$(date '+%Y-%m-%d_%Hh%Mm%Ss')
cp /etc/resolv.conf $HOME/resolv.conf_$LogTime
cp /etc/nsswitch.conf $HOME/nsswitch.conf_$LogTime
cp /etc/systemd/resolved.conf $HOME/resolved.conf_$LogTime
cp /etc/network/interfaces $HOME/interfaces_$LogTime
sudo service resolvconf stop
sudo update-rc.d resolvconf remove
cp /etc/resolv.conf /tmp/resolv.conf
grep -v nameserver /tmp/resolv.conf > /tmp/resolv.conf.1
echo 'nameserver 9.9.9.9' >> /tmp/resolv.conf.1
echo 'nameserver 2620:fe::fe' >> /tmp/resolv.conf.1
echo 'domain dnsknowledge.com' >> /tmp/resolv.conf.1
echo 'options rotate' >> /tmp/resolv.conf.1
sudo cp /tmp/resolv.conf.1 /etc/resolv.conf
sudo service resolvconf start
# configure DNS server on Ubuntu 16.04 LTS:
cp /etc/network/interfaces /tmp/interfaces
grep -v nameservers /tmp/interfaces > /tmp/interfaces.1
grep -v search /tmp/interfaces.1 > /tmp/interfaces.2
grep -v options /tmp/interfaces.2 > /tmp/interfaces.3
echo 'dns-nameservers 9.9.9.9 2620:fe::fe' >> /tmp/interfaces.3
echo 'dns-search dnsknowledge.com' >> /tmp/interfaces.3
echo 'dns-options rotate' >> /tmp/interfaces.3
sudo cp /tmp/interfaces.3 /etc/network/interfaces
# replace DNS resolution via /etc/resolv.conf by DNS resolution via systemd in order to use DNS server 9.9.9.9:
# sudo rm /etc/resolv.conf
# comment out the next line to avoid breaking DNS resolution in Ubuntu/Fedora running in Qubes OS 3.2
#sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
# enable systemd caching DNS resolver
rm /tmp/nsswitch.conf
rm /tmp/nsswitch.conf.1
cp /etc/nsswitch.conf /tmp/nsswitch.conf
grep -v hosts /tmp/nsswitch.conf > /tmp/nsswitch.conf.1
# dns must be mentioned in next line, or else wget does not work
echo 'hosts: files mdns4_minimal [NOTFOUND=return] resolv dns myhostname mymachines' >> /tmp/nsswitch.conf.1
sudo cp /tmp/nsswitch.conf.1 /etc/nsswitch.conf
# set DNS server to 9.9.9.9
rm /tmp/resolved.conf
rm /tmp/resolved.conf.1
cp /etc/systemd/resolved.conf /tmp/resolved.conf
grep -v DNS /tmp/resolved.conf > /tmp/resolved.conf.1
# enable new Quad9 (9.9.9.9) DNS and DNSSEC service
# https://arstechnica.com/information-technology/2017/11/new-quad9-dns-service-blocks-malicious-domains-for-everyone/
echo 'DNS=9.9.9.9' >> /tmp/resolved.conf.1
echo 'DNSSEC=yes' >> /tmp/resolved.conf.1
sudo cp /tmp/resolved.conf.1 /etc/systemd/resolved.conf
sudo systemd-resolve --flush-caches
sudo systemctl restart systemd-resolved
sudo systemd-resolve --flush-caches
sudo systemd-resolve --status
# It is probably also necessary to manually set
# the DNS server to 9.9.9.9 in the router's configuration
# and in the NetworkManager GUI
# test DNSSEC validation using dig command-line tool
# see: https://docs.menandmice.com/display/MM/How+to+test+DNSSEC+validation
dig pir.org +dnssec +multi
host dnsknowledge.com
#######################################################################################################################
# https://www.cyberciti.biz/cloud-computing/increase-your-linux-server-internet-speed-with-tcp-bbr-congestion-control/
# REQUIRES: kernel version 4.9 or newer
rm /tmp/10-custom-kernel-bbr.conf
touch /tmp/10-custom-kernel-bbr.conf
echo 'net.core.default_qdisc=fq' >> /tmp/10-custom-kernel-bbr.conf
echo 'net.ipv4.tcp_congestion_control=bbr' >> /tmp/10-custom-kernel-bbr.conf
sudo cp /tmp/10-custom-kernel-bbr.conf /etc/sysctl.d/10-custom-kernel-bbr.conf
sudo sysctl --system
##########################################################################################################
# only disable touchpad on certain PC
##########################################################################################################
if [ `echo $HOSTNAME|grep ulysses` == "" ]
then
echo "not my PC"
else
sudo rm /tmp/blacklist-elan_i2c.conf
sudo rm /etc/modprobe.d/blacklist-elan_i2c.conf
sudo touch /etc/modprobe.d/blacklist-elan_i2c.conf
echo 'blacklist elan_i2c' >> /tmp/blacklist-elan_i2c.conf
sudo cp /tmp/blacklist-elan_i2c.conf /etc/modprobe.d/blacklist-elan_i2c.conf
echo "customized for specific pc"
fi
##########################################################################################################
# add base PPA repositories
##########################################################################################################
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes software-properties-common
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:hsoft/ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:lubuntu-dev/lubuntu-daily
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:gilir/q-project
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:danielrichter2007/grub-customizer
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:libreoffice/ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:mjblenner/ppa-hal
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:flexiondotorg/hal-flash
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:nemh/gambas3
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:peterlevi/ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:linrunner/tlp
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:kazam-team/stable-series
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:dhor/myway
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:webupd8team/atom
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:webupd8team/brackets
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:philip5/extra
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:stebbins/handbrake-releases
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:lyc256/sopcast-player-ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:surfernsk/internet-software
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:makson96/desurium
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:ubuntuhandbook1/apps
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:tualatrix/ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:webupd8team/y-ppa-manager
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:ubuntu-wine/ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:videolan/master-daily
# deprecated: sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:wine/wine-builds
wget -nc https://dl.winehq.org/wine-builds/Release.key
sudo apt-key add Release.key
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n https://dl.winehq.org/wine-builds/ubuntu/
# disable oibaf PPA which wants to install newer linux-image package that kills wireless on new Asus N551VW laptop!
# sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:oibaf/graphics-drivers
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:noobslab/apps
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:gertvdijk/opensc-backports
# very important security related PPA that was the first repository to fix the
# CVE-2014-6277 bash shellshock vulnerability on October 8, 2014:
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:ubuntu-security-proposed/ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:numix/ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:fish-shell/release-2
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:marutter/rrutter
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:marutter/c2d4u
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:stellarium/stellarium-releases
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:clipgrab-team/ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:qbittorrent-team/qbittorrent-stable
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:heyarje/libav-11
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:niko2040/e19
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:git-core/ppa
# sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:budgie-remix/ppa
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:nilarimogard/webupd8
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:strukturag/libde265
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:twodopeshaggy/jarun
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:webupd8team/tor-browser
# sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:openshot.developers/ppa
# sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:fyrmir/livewallpaper-daily
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:jonathonf/vlc
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:mc3man/mpv-tests
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n "deb [arch=amd64] https://osquery-packages.s3.amazonaws.com/bionic bionic main"
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:flexiondotorg/audio
##########################################################################################################
# add astronomy PPA repositories
##########################################################################################################
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:mutlaqja/astrometry.net
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:mutlaqja/ppa
# Do NOT add repository for distroastro software packages
# Distroastro v3.0.1 breaks the windowing functionality of metacity and does not work well
# Distroastro mixes packages from Ubuntu and Linux Mint, causing severe issues
# replace codename (for example: trusty) with right Ubuntu codename
#RELEASE=`awk -F'[" ]' '/VERSION=/{print $3}' /etc/os-release| awk '{print tolower($0)}'`
#sudo touch /etc/apt/sources.list.d/distroastro.list
#sudo sh -c 'echo "deb http://packages.distroastro.org/distroastro juno free non-free" >> /etc/apt/sources.list.d/distroastro.list'
#sudo sh -c 'echo "deb-src http://packages.distroastro.org/distroastro juno free non-free" >> /etc/apt/sources.list.d/distroastro.list'
#wget -qO - http://packages.distroastro.org/key | sudo apt-key add -
# add repository for eid-mw and eid-viewer software packages
# replace codename (for example: trusty) with right Ubuntu codename
RELEASE=`cat /etc/os-release |tail -n 1|cut -d"=" -f2`
sudo rm /etc/apt/sources.list.d/eid.list
sudo touch /etc/apt/sources.list.d/eid.list
#sudo sh -c 'echo "deb http://files.eid.belgium.be/debian bionic main" >> /etc/apt/sources.list.d/eid.list'
#sudo sh -c 'echo "deb http://files2.eid.belgium.be/debian bionic main" >> /etc/apt/sources.list.d/eid.list'
# add repository for google music manager software package
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo sh -c 'echo "deb http://dl.google.com/linux/musicmanager/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
# 1. Add the Spotify repository signing key to be able to verify downloaded packages
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys BBEBDCB318AD50EC6865090613B00F1FD2C19886
# 2. Add the Spotify repository
echo deb http://repository.spotify.com stable non-free | sudo tee /etc/apt/sources.list.d/spotify.list
# add osquery repository signing key to be able to verify downloaded packages
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B
# add partner repository for skype software package
# replace codename (for example: trusty) with right Ubuntu codename
#sudo touch /etc/apt/sources.list.d/partner.list
#sudo sh -c 'echo "deb http://archive.canonical.com/ubuntu bionic partner" >> /etc/apt/sources.list.d/partner.list'
#sudo sh -c 'echo "deb-src http://archive.canonical.com/ubuntu bionic partner" >> /etc/apt/sources.list.d/partner.list'
# add repository for Google Chrome browser
sudo touch /etc/apt/sources.list.d/googlechrome.list
sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/googlechrome.list'
##########################################################################################################
# refresh list of available packages in Ubuntu repositories
sudo DEBIAN_FRONTEND=noninteractive apt-key add Repo.keys
sudo DEBIAN_FRONTEND=noninteractive apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv ED75B5A4483DA07C
sudo DEBIAN_FRONTEND=noninteractive apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9A2FD067A2E3EF7B
sudo DEBIAN_FRONTEND=noninteractive apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2EA8F35793D8809A
sudo DEBIAN_FRONTEND=noninteractive apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9D6D8F6BC857C906
sudo DEBIAN_FRONTEND=noninteractive apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 8B48AD6246925553
sudo DEBIAN_FRONTEND=noninteractive apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7638D0442B90D010
sudo DEBIAN_FRONTEND=noninteractive apt update
##########################################################################################################
##########################################################################################################
# install base packages using basepackages files
cd $HOME/shell-scripts
sudo DEBIAN_FRONTEND=noninteractive apt install aptitude
# following aptitude command works in Ubuntu 16.04 LTS, but not in Ubuntu 17.04 or higher:
sudo DEBIAN_FRONTEND=noninteractive aptitude install `cat basepackages` -o APT::Install-Suggests="false"
# following apt command works in Ubuntu 17.04:
sudo DEBIAN_FRONTEND=noninteractive apt install `cat basepackages-extra`
# following apt command works in Debian 9:
sudo DEBIAN_FRONTEND=noninteractive apt install `cat basepackages-debian`
cd $HOME
##########################################################################################################
# install list of packages defined in packages files
# allpackages = basepackages + astropackages
# sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes `cat allpackages` -o APT::Install-Suggests="false"
# install osquery
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes osquery
# install mp3gain and aacgain
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes aacgain mp3gain
# commented out following line, because it will break bluetooth support in Lubuntu/Xubuntu 14.04 LTS 64-bit
# sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes pulseaudio*
sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes arno-iptables-firewall
#sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes ufw
sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes blueman
sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes vlc-data vlc vlc-nox vlc-bin browser-plugin-vlc sopcast-player
sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes vlc vlc-nox
# install newest version of avconf
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libav-tools
# install Enlightenment 17 (e17) GUI/desktop
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes e17
# Make A Bootable Windows 10 USB Install Stick On Linux using WinUSB Fork from Github
# source: https://github.com/slacka/WinUSB
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes winusb
# status: 20170620:
##########################################################################################################
# install Citrix Receiver icaclient version 13.4.0.10109380 in Ubuntu 16.04.2 64-bit
# Citrix Receiver icaclient version 13.5 and above cause SSL error 4 when trying to connect to corporate
# website
# Only works using Mozilla Firefox, not using Google Chrome
# source 1: http://ubuntuforums.org/showthread.php?t=2181903
# source 2: http://blog.vinnymac.org/?p=351
# source 3: https://help.ubuntu.com/community/CitrixICAClientHowTo
##########################################################################################################
#cd $HOME
#mv $HOME/.ICAClient $HOME/.ICAClient_save
#sudo dpkg -P icaclient
#sudo rm -rf $HOME/foo
#sudo dpkg --add-architecture i386 # only needed once
# sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes firefox apt-file git openssl ca-certificates
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes firefox apt-file git nspluginwrapper lib32z1 libc6-i386 libxml2:i386 libstdc++6:i386 libxerces-c3.1:i386 libcanberra-gtk-module:i386 libcurl3:i386 libasound2-plugins:i386 libgstreamer-plugins-base0.10-0:i386 openssl ca-certificates
#sudo apt-file update --architecture i386
#sudo apt-file update --architecture amd64
#git clone https://github.com/CloCkWeRX/citrix-receiver-ubuntu-fixed.git foo
#find foo/opt/Citrix/ICAClient/ -exec file {} ';' | grep "ELF" | grep "executable" > ica_elf_list
#cat ica_elf_list | while read f; do arch=$(echo "$f" | grep -o '..-bit' | sed 's/32-bit/i386/' | sed 's/64-bit/amd64/'); file=$(echo "$f" | awk '{print $1}' | sed 's/://g'); ldd "$file" | sed "s/^/$arch/g"; done | sort | uniq > ica_so_list
#cat ica_so_list | awk '{print $4}' | grep '^/' | sort | uniq | while read f; do dpkg -S "$f"; done > ica_deb_list
#cat ica_deb_list | awk '{print $1}' | sed 's/:$//g' | sort | uniq > ica_deb_list_final
#cat ica_so_list | grep "not found" > ica_so_missing
#cat ica_so_missing | while read f; do arch=$(echo "$f" | awk '{print $1}'); file=$(echo "$f" | awk '{print $2}'); apt-file find -x "$file$" -a $arch | sed "s/: /:$arch provides /g"; done > ica_missing_packages
#cat ica_missing_packages | awk '{print $3}' | sort | uniq | while read provided; do providers=$(grep "provides $provided" ica_missing_packages | awk '{print $1}'); count=$(echo $providers | wc -w); selected=$providers; if [ $count -gt 1 ]; then echo "Multiple packages can provide $provided, please select one:" >&2; select selected in $providers; do break; done < /dev/tty; echo "You selected $selected" >&2; fi; echo $selected; done > ica_selected_packages
#missing=$(cat ica_selected_packages | awk '{print $1}'); sudo DEBIAN_FRONTEND=noninteractive apt --yes --force-yes install $missing
#cat ica_elf_list | while read f; do arch=$(echo "$f" | grep -o '..-bit' | sed 's/32-bit/i386/' | sed 's/64-bit/amd64/'); file=$(echo "$f" | awk '{print $1}' | sed 's/://g'); ldd "$file" | sed "s/^/$arch/g"; done | sort | uniq > ica_so_list
#cat ica_so_list | awk '{print $4}' | grep '^/' | sort | uniq | while read f; do dpkg -S "$f"; done > ica_deb_list
#cat ica_deb_list | awk '{print $1}' | sed 's/:$//g' | sort | uniq > ica_deb_list_final
#cat ica_so_list | grep "not found" > ica_so_missing
#cat ica_so_missing | while read f; do arch=$(echo "$f" | awk '{print $1}'); file=$(echo "$f" | awk '{print $2}'); apt-file find -x "$file$" -a $arch | sed "s/: /:$arch provides /g"; done > ica_missing_packages
# make sure ica_so_missing file is now empty:
#cat ica_so_missing
#checked=""; unnecessary=""; unchecked="$(cat ica_deb_list_final) EOF"; while read -d ' ' f <<< $unchecked; do checked="$f $checked"; candidates=$(apt-cache depends "$f" | grep '\sDepends' | awk '{print $2}' | sed 's/[<>]//g'); unchecked="$(for d in $candidates; do if ! grep -q $d <<< $checked; then echo -n "$d "; fi; done) $unchecked"; unchecked="$(echo $unchecked | sed "s/$f //g")"; unnecessary="$(for d in $candidates; do if ! grep -q $d <<< $unnecessary; then echo -n "$d "; fi; done) $unnecessary"; done; for u in $unnecessary; do echo "$u"; done > ica_implicit_dependencies
#original=$(cat ica_deb_list_final); for f in $original; do if ! grep -q $f ica_implicit_dependencies; then echo "$f"; fi; done > ica_explicit_dependencies
#sed -i 's/grep "i\[0-9\]86"/grep "i\\?[x0-9]86"/g' foo/DEBIAN/postinst
#new_depends="$(cat ica_explicit_dependencies | tr '\n' ',') nspluginwrapper"; sed -i "s/^Depends: .*$/Depends: $new_depends/" foo/DEBIAN/control
#rm -rf foo/opt/Citrix/ICAClient/keystore/cacerts
#ln -s /etc/ssl/certs foo/opt/Citrix/ICAClient/keystore/cacerts
#mkdir -p foo/usr/share/applications
#printf '[Desktop Entry]\nName=Citrix ICA client\nComment="Launch Citrix applications from .ica files"\nCategories=Network;\nExec=/opt/Citrix/ICAClient/wfica\nTerminal=false\nType=Application\nNoDisplay=true\nMimeType=application/x-ica' > foo/usr/share/applications/wfica.desktop
#dpkg -b foo icaclient_amd64_fixed_for_14.04_LTS.deb
#sudo dpkg -i icaclient_amd64_fixed_for_14.04_LTS.deb
#sudo DEBIAN_FRONTEND=noninteractive apt install -f
#sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts
#sudo c_rehash /opt/Citrix/ICAClient/keystore/cacerts/
#xdg-mime default wfica.desktop application/x-ica
# Thank you Michael May for reminding me to add the following step:
# Click on the “open menu” icon in the top right corner of the Mozilla Firefox interface.
# Then click on the Add-ons icon
# Click on Plugins and then on “Citrix Receiver for Linux”
# Choose “Always activate” option next to “Citrix Receiver for Linux”
# Attempt to access your Citrix site. If Firefox prompts you to open a .ica file, choose
# to open it with /opt/Citrix/ICAClient/wfica.sh, and tell Firefox to remember that choice.
# Install Spotify
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes spotify-client
# Install Live Wallpaper
# sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes livewallpaper livewallpaper-config livewallpaper-indicator
# Install dupeguru-me which can find and delete similar music filenames using fuzzy logic
# rerun dupeguru-me on /media/IOMEGA/downloads/Youtube-playlists after each mp3 conversion using YouTubeToMP3
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:hsoft/ppa
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes dupeguru-me
# install clipgrab, a friendly downloader for YouTube and other sites
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes clipgrab
# install Tor browser
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes tor-browser
# Install lxqt desktop environment => merge of lxde and razorqt desktops
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:lubuntu-dev/lubuntu-daily
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:gilir/q-project
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes lxqt-metapackage lxqt-panel openbox
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes liblxqt0 libqtxdg0 libqtxdg-data
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes pcmanfm-qt lxsession lximage-qt lxrandr-qt
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes lxqt-about lxqt-appswitcher lxqt-config lxqt-lightdm-greeter
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes lxqt-notificationd lxqt-policykit lxqt-power lxqt-powermanagement lxqt-runner lxqt-session
#sudo rm -rf /etc/xdg/lxlauncher
#sudo rm -rf /etc/xdg/lxpanel
#sudo rm -rf /etc/xdg/lxqt
#sudo rm -rf /etc/xdg/lxsession
#sudo rm -rf /etc/xdg/razor
#rm -rf ~/.config/razor*
#rm -rf ~/.config/pcman*
#rm -rf ~/.config/compiz*
#rm -rf ~/.config/lxpanel
#rm -rf ~/.config/lxsession/
#rm -rf ~/.config/lxterminal/
#rm -rf ~/.config/openbox*
#rm -rf ~/.config/unity*
# the following lxqt commands are dangerous and can cause network-manager to get uninstalled!
#sudo apt purge lxqt-metapackage lxqt-common lximage-qt pcmanfm-qt
#sudo apt install lxqt-metapackage lxqt-common
# installing budgie desktop causes serious issues on mother's desktop pc
# Install budgie desktop environment with excellent font management (even on 40 inch Full HD TV screen)
#dconf reset -f /com/solus-project/budgie-panel/
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes budgie-desktop
#dconf reset -f /com/solus-project/budgie-panel/
#install numix-icon-theme-circle (choose numix circle icon theme via lxqt start menu button
# then click on Preferences::Appearance::Icons Theme::Numix Circle Light
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes numix-icon-theme-circle
sudo DEBIAN_FRONTEND=noninteractive apt remove --yes --force-yes chromium-codecs-ffmpeg-extra
sudo DEBIAN_FRONTEND=noninteractive apt remove --yes --force-yes kaccounts-providers
# Install TLP - advanced power management command line tool for Linux
# TLP saves more laptop power than standard Ubuntu package laptop-mode-tools
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:linrunner/tlp
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo apt install tlp
sudo apt install tlp-rdw
##########################################################################################################
# install eid card reader middleware - replace codename (for example: trusty) with right Ubuntu codename
# Supported CCID readers: http://pcsclite.alioth.debian.org/ccid/section.html
##########################################################################################################
# Prerequisites: Ubuntu 16.04.2 LTS 64-bit or newer (LiveUSB session or installed on HD/SSD), newest version of Mozilla Firefox (version 54.0 or newer), Ubuntu packages in procedure below
# install prerequisites for compiling eid-mw from Github
# Supported CCID readers: http://pcsclite.alioth.debian.org/ccid/section.html
sudo rm /etc/apt/sources.list.d/eid.list
sudo touch /etc/apt/sources.list.d/eid.list
#sudo sh -c 'echo "deb http://files.eid.belgium.be/debian bionic main" >> /etc/apt/sources.list.d/eid.list'
#sudo sh -c 'echo "deb http://files2.eid.belgium.be/debian bionic main" >> /etc/apt/sources.list.d/eid.list'
cd
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 63F7D4AFF6D61D45 A35743EA6773D225 F9FDA6BED73CDC22 3B4FE6ACC0B21F32 4E940D7FDD7FB8CC A040830F7FAC5991 16126D3A3E5C1192
sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:gertvdijk/opensc-backports
sudo DEBIAN_FRONTEND=noninteractive apt --yes --force-yes remove --purge beid*
sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install aptitude
sudo DEBIAN_FRONTEND=noninteractive apt install usbutils pciutils eid-mw eid-viewer apt firefox pcscd default-jre
sudo DEBIAN_FRONTEND=noninteractive apt install opensc libacr38u libacr38ucontrol0 libacsccid1 libccid libusb-1.0-0
sudo DEBIAN_FRONTEND=noninteractive apt install libpcsclite1 libpcsclite-dev pcsc-tools ca-certificates libtool autoconf
sudo DEBIAN_FRONTEND=noninteractive apt install automake checkinstall git libgtk-3-dev libxml++2.6-dev libproxy-dev
sudo DEBIAN_FRONTEND=noninteractive apt install openssl libssl-dev libcurl4-openssl-dev
sudo DEBIAN_FRONTEND=noninteractive apt install libgtk2.0-0 libgtk2.0-dev
sudo update-pciids
sudo update-usbids
# compile and install newest version of eid-mw using Github
cd
sudo rm -rf eid-mw
git clone https://github.com/Fedict/eid-mw.git
cd eid-mw/
autoreconf -i
./configure
make
sudo checkinstall
# press 2 and change eid package name to eid-mw and hit <ENTER> key
# press 3 and change version to 4.2.10 and hit <ENTER> key
# Ensure that there are absolutely NO add-on EXTENSIONS installed in the Mozilla Firefox webbrowser
# The add-on PLUGINS like Citrix Receiver for Linux,OpenH264 and Shockwave Flash plugins can remain active in Mozilla Firefox, as they do not seem to interfere with the eid card reader.
# Close all web browser windows. Restart Mozilla Firefox browser and test eid card reader.
# install newest version of smtube (Youtube player using few CPU resources, better than streamlink)
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libqtgui4 libqt4-xml libqt4-network libqt4-dbus phonon-backend-vlc
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes smtube
# install lightweight GTK-based Youtube viewer (inspired by XenialDog 64-bit LiveUSB distro)
# source: https://github.com/trizen/youtube-viewer
# Ubuntu/Linux Mint: sudo add-apt-repository ppa:nilarimogard/webupd8
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes youtube-viewer
# then run this Terminal command to launch: gtk-youtube-viewer
cd
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv ED75B5A4483DA07C
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9A2FD067A2E3EF7B
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2EA8F35793D8809A
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9D6D8F6BC857C906
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 8B48AD6246925553
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7638D0442B90D010
sudo apt update
sudo apt install git libncurses5-dev libtinfo-dev libreadline-dev pkg-config libgtk2.0-dev
sudo rm -rf youtube-viewer
git clone https://github.com/trizen/youtube-viewer
cd youtube-viewer
sudo cpan install CPAN ExtUtils::PkgConfig Module::Build inc::latest PAR::Dist Term::ReadLine::Gnu::XS Unicode::GCString LWP::Protocol::https Data::Dump JSON Gtk2 File::ShareDir
perl Build.PL --gtk
sudo ./Build installdeps
sudo ./Build install
# for best playback performance, choose mplayer as video player backend for gtk-youtube-viewer program
# install streamlink, which is replacement for minitube Youtube streamer and which uses less CPU:
# https://www.ostechnix.com/streamlink-watch-online-video-streams-command-line/
# example of valid command: streamlink https://www.youtube.com/watch?v=Czy0pXRRZcs best --player=mplayer
# using ~/.streamlinkrc and ~/.bashrc: s https://www.youtube.com/watch?v=Czy0pXRRZcs 1080p
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes streamlink
sudo npm install -g bower gulp minimatch graceful-fs minimatch uuid lodash
# install open-source VOIP and end-to-end encrypted messenger program called "Wire" for iOS,Android,Linux,Windows,MacOSX:
cd
sudo rm -rf wire-desktop/
git clone https://github.com/wireapp/wire-desktop
cd wire-desktop/
npm install
#run following command to start the wire desktop client
# npm start
# install googler - A Command Line Tool to Do ‘Google Search’ from Linux Terminal
# source: http://www.tecmint.com/google-commandline-search-terminal/#
# requires: python3 which is part of basepackages file
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes googler python3
# install LastPass:
cd /tmp
wget --no-check-certificate https://lastpass.com/lplinux.tar.bz2
unp lplinux*
cd lplinux
./install_lastpass.sh
# install newest version of WPS Office for GNU/Linux (MS Office compatible)
cd /tmp
rm download*
rm wps-office*
wget --no-check-certificate http://wps-community.org/downloads
wget --no-check-certificate `echo "http://wps-community.org/downloads" | wget -O- -i- --no-check-certificate | hxnormalize -x | hxselect -c -i ul li:first-child | lynx -stdin -dump -hiddenlinks=listonly -nonumbers| grep kdl|head -n 1`
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libsm6
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libsm6:i386
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libpng12-0
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libpng12-0:i386
sudo dpkg -i wps-office*.deb
sudo DEBIAN_FRONTEND=noninteractive apt install -f
##########################################################################################################
# install proprietary TrueType fonts required by WPS Office for GNU/Linux
sudo DEBIAN_FRONTEND=noninteractive apt install msttcorefonts gsfonts-x11
sudo mkdir /usr/share/fonts/wps-office
cd /tmp
rm -rf settings*
git clone https://github.com/tkboy/settings.git
sudo mv settings/.fonts/* /usr/share/fonts/wps-office
sudo fc-cache -f -v
##########################################################################################################
# create symbolic link to wkhtmltopdf in /usr/local/bin after installing base packages
sudo ln -s /usr/bin/wkhtmltopdf /usr/local/bin/html2pdf
# install grub customizer
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:danielrichter2007/grub-customizer
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes grub-customizer
# install newest version of Libreoffice
# https://wiki.documentfoundation.org/Feature_Comparison:_LibreOffice_-_Microsoft_Office/fr
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:libreoffice/ppa
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libreoffice
# install following Libreoffice Calc extensions:
# http://extensions.libreoffice.org/extension-center/multisave
# http://extensions.libreoffice.org/extension-center/myparts
# http://extensions.libreoffice.org/extension-center/neuronica
# https://sites.google.com/site/vondorishi/advance-office-chart
# install following Libreoffice Writer extensions:
# http://extensions.libreoffice.org/extension-center/imath
# http://extensions.libreoffice.org/extension-center/texmaths-1
# http://extensions.libreoffice.org/extension-center/languagetool
#install deprecated, obsolete hal package so that fluendo content and DRM-demanding
# Flash websites like Hulu are supported in Lubuntu 13.10 or newer
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:mjblenner/ppa-hal
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes hal
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libhal1-flash
#install i-nex - I-nex is similar to CPU-Z in Windows, it uses the same interface to display your hardware information.
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:i-nex-development-team/daily
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:nemh/gambas3
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes i-nex
# install Variety - cool wallpaper changer
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:peterlevi/ppa
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes variety
#install pipelight which allows to run your favorite Silverlight application directly inside your Linux browser
#sudo DEBIAN_FRONTEND=noninteractive apt-add-repository --yes ppa:ehoover/compholio
#sudo DEBIAN_FRONTEND=noninteractive apt-add-repository --yes ppa:mqchael/pipelight
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes pipelight
# install google-talkplugin
#wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo DEBIAN_FRONTEND=noninteractive apt-key add -
#sudo sh -c 'echo "deb http://dl.google.com/linux/talkplugin/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes google-talkplugin
# install daily build of firefox-trunk (bleeding edge browser)
#sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes firefox
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:ubuntu-mozilla-daily/ppa
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes firefox-trunk
# Install kazam screen recording tool for Ubuntu 12.04 / 12.10 / 13.04
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:kazam-team/stable-series
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes kazam
# install shutter Screen Capture Tool In Ubuntu 12.04 / 12.10 / 13.04
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:dhor/myway
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes shutter
# install Final Term - excellent Terminal emulator in Ubuntu 12.04 / 12.10 / 13.04
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:finalterm/daily
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes finalterm
# install xiki shell - A shell console with GUI features
# http://xiki.org
# source: https://github.com/trogdoro/xiki
#cd $HOME
#sudo rm -rf xiki
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes ruby ruby2.3 ruby2.3-dev
#git clone git://github.com/trogdoro/xiki.git
#cd xiki
#sudo update-ca-certificates
#sudo gem sources -r https://rubygems.org/
#sudo gem sources -a http://rubygems.org/
#sudo gem update --system
#sudo gem sources -r http://rubygems.org/
#sudo gem sources -a https://rubygems.org/
#sudo gem install bundler # <- no "sudo" if using rvm
#bundle # <- no "sudo" if using rvm
#ln -s misc etc
#sudo ruby misc/command/copy_xiki_command_to.rb /usr/bin/xiki
#~/xiki/bin/xsh
# xiki web/start
# then navigate to http://localhost:8161/dbs
# to view the locally installed mysql databases, tables and fields
#cd $HOME
# install Google Music Manager - sync local mp3s in Ubuntu with ios or Android device
#wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
#sudo sh -c 'echo "deb http://dl.google.com/linux/musicmanager/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes google-musicmanager-beta
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes google-musicmanager
# install newest version of VLC player
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:videolan/master-daily
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes vlc
# install libde265, which is an open source implementation of the h.265 video codec in order
# to support playing HVEC codec using vlc player
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes vlc-plugin-libde265
# install spotify - can sync mp3 files between Ubuntu 13.10 and ipod nano 6th generation
#sudo DEBIAN_FRONTEND=noninteractive apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 94558F59
#sudo sh -c 'echo "deb http://repository.spotify.com stable non-free" >> /etc/apt/sources.list.d/spotify.list'
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes spotify-client
# install atom text editor with integrated github support
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:webupd8team/atom
#sudo DEBIAN_FRONTEND=noninteractive apt update
#sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes atom
# install brackets text editor with support for asciidoc
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:webupd8team/atom
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes brackets
# Lightworks 12.5 (professional non-linear video editing solution) is better than kdenlive and better than openshot
# http://news.softpedia.com/news/professional-non-linear-video-editing-lightworks-12-5-released-with-4k-support-493587.shtml
# DaVinci Resolve 12.0.1 Studio (video editor)
# https://www.blackmagicdesign.com/products/davinciresolve
# flowblade (video editor)
# https://github.com/jliljebl/flowblade/blob/master/flowblade-trunk/docs/INSTALLING.md
# install kdenlive video editor (one of the best video editors)
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:philip5/extra
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes kdenlive
# install openshot which is a simple and easy to use video editor, like a good substitute for the windows movie maker
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:openshot.developers/ppa
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes openshot
# install Handbrake - open source video transcoder - add Subtitles (VobSub, Closed Captions CEA-608, SSA, SRT)
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:stebbins/handbrake-releases
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes handbrake
# install SopCast webTV player = highest quality sport streaming service for Ubuntu
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:lyc256/sopcast-player-ppa
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes sopcast-player
# install qbittorrent client
# import RSS feeds from http://showrss.info/?cs=feeds into qbittorrent client
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:surfernsk/internet-software
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes qbittorrent
# install frostwire mp3 client
#cd
#sudo rm -rf frostwire
#git clone https://github.com/frostwire/frostwire
#cd frostwire/desktop
#gradle build
cd /tmp
rm frostwire*.deb
FROSTWIREVERSION=`echo "http://www.frostwire.com/download/?os=ubuntu" | wget -O- -i- --no-check-certificate | hxnormalize -x| grep \.deb |cut -d"\"" -f2`
wget --no-check-certificate `echo $FROSTWIREVERSION`
sudo dpkg -i frostwire*.deb
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes -f
# install desurium game client
#sudo DEBIAN_FRONTEND=noninteractive add-apt-repository --yes -n ppa:makson96/desurium
#sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes desurium
# install 64-bit compatible Steam client
wget --no-check-certificate media.steampowered.com/client/installer/steam.deb
sudo dpkg -i steam.deb
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes -f
##########################################################################################################
# install LGOGDownloader game client (unofficial downloader to GOG.com for Linux users)
# It uses the same API as the official GOGDownloader.
# Prerequisite: first create valid username and password at gog.com website
##########################################################################################################
cd
sudo rm -rf $HOME/lgogdownloader
# install game client prerequisites:
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libtinyxml2-dev build-essential
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libcurl4-openssl-dev liboauth-dev libjsoncpp-dev
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libhtmlcxx-dev libboost-system-dev
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libboost-filesystem-dev libboost-regex-dev
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libboost-program-options-dev libboost-date-time-dev
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libtinyxml-dev librhash-dev help2man
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libboost-iostreams1.63-dev
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes libboost-iostreams-dev
# compile and install game client:
git clone https://github.com/Sude-/lgogdownloader.git
cd lgogdownloader
#sudo make release
#sudo make install
sudo make clean
sudo cmake .
sudo make
sudo checkinstall
# Added on January 16, 2016
# Fix openssh on Linux (vulnerability CVE-2016-0777)
# Source: http://www.cyberciti.biz/faq/howto-openssh-client-security-update-cve-0216-0777-cve-0216-0778/
echo 'UseRoaming no' | sudo tee -a /etc/ssh/ssh_config
# install lynis (formerly called rkhunter)
# Security auditing tool and assists with compliance testing (HIPAA/ISO27001/PCI DSS) and system hardening)
cd
sudo rm -rf $HOME/lynis
git clone https://github.com/CISOfy/lynis.git
cd lynis
sudo chmod -R 640 ./include/*
sudo chown root:root ./include/*
sudo ./lynis --version
# sudo ./lynis audit system
#compile and install newest version of openssl in Ubuntu 14.04 LTS
cd
# sudo DEBIAN_FRONTEND=noninteractive apt update
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes checkinstall build-essential
sudo DEBIAN_FRONTEND=noninteractive apt build-dep --yes --force-yes openssl
sudo rm -rf ~/openssl
git clone https://github.com/openssl/openssl.git
cd openssl
sudo ./config
sudo make
# sudo make test
sudo checkinstall
sudo rm -rf ~/openssl
sudo mv /usr/bin/c_rehash /usr/bin/c_rehash.$LogDay.backup
sudo mv /usr/bin/openssl /usr/bin/openssl.$LogDay.backup
sudo ln -s /usr/local/bin/c_rehash /usr/bin/c_rehash
sudo ln -s /usr/local/bin/openssl /usr/bin/openssl
openssl version
apt-cache show openssl
# Dependency to compile and install first: openssl
# https://mark911.wordpress.com/2015/01/10/how-to-compile-and-install-newest-version-of-openssl-in-ubuntu-14-04-lts-64-bit-via-github/
# Then compile and install curl from github source in Ubuntu 14.04 LTS 64-bit
cd
sudo DEBIAN_FRONTEND=noninteractive apt update --yes --force-yes
sudo DEBIAN_FRONTEND=noninteractive apt install --yes --force-yes checkinstall build-essential cmake rtmpdump
# sudo DEBIAN_FRONTEND=noninteractive apt purge --yes --force-yes curl
# sudo DEBIAN_FRONTEND=noninteractive apt --yes --force-yes build-dep curl
# sudo rm -rf curl curl-build
# mkdir curl-build
# git clone https://github.com/bagder/curl.git
# cd curl
# sudo ./buildconf
# cd lib
# LIB=`pwd`
# cd ..
# sudo ./configure --without-librtmp --enable-shared=no --libdir=`echo $LIB`
# sudo make clean
# sudo make -I `echo $LIB`
# sudo make check
# result of sudo make check should be as follows:
#============================================================================
#Testsuite summary for curl -
#============================================================================
# TOTAL: 2
# PASS: 2
# SKIP: 0
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
#============================================================================
# sudo checkinstall
# set checkinstall curl package version to 7.45 (most current version at this moment)
# before proceeding with the creation of the checkinstall .deb package