-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstallstuff
207 lines (202 loc) · 7.25 KB
/
installstuff
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
#!/bin/bash
# Function to install package if not already installed
function InstallPackageIfNotExist()
{
local package=$1
local installer=${2:-"apt"} # Default to apt if not provided
local package_manager="sudo $installer install -y"
# Check if the package is installed
if ! dpkg -l | awk '{print $2}' | grep -wq "^$package$"; then
echo -e "Working on $(color 196)$package$(reset)..."
# Install the package
if [[ "$installer" == "aptitude" ]]; then
sudo aptitude install -Pry "$package" # Use aptitude for forced install
else
sudo apt install "$package" # Use apt as default
fi
else
echo -e "$(color 196)$package$(reset) is already installed."
fi
}
# Function for menu-driven installation
function installstuff()
{
echo -e "Showing you your sources.list. $(color 196)If anything looks off, abort the script immediately and fix it!$(reset)\n"
grep -e "stable" -e "testing" -e "unstable" -e "experimental" -e "contrib" -e "non-free" /etc/apt/sources.list
pressanykey
KeepInstallingMoreStuff
}
# Function to continue installation after source check
function KeepInstallingMoreStuff()
{
clear
echo -e "Options:\n"
# List of installation options
local options=(
"Compressed Files = gzip p7zip-full tar unrar-free unzip"
"Conky"
"Documents = kate libreoffice"
"Drive Management = brasero gnome-disk-utility k3b smartmontools xfburn"
"File Browsers = caja dolphin krusader nautilus nemo spacefm"
"FlatPak"
"Snap Store"
"Fluxbox Setup"
"Font Managers = figlet font-manager gucharmap"
"Fonts"
"Fortunes"
"Games = angrydd ardentryst asylum atanks bsdgames dopewars dosbox flare ksudoku kobodeluxe manaplus meritous runescape zangband"
"Games = Steam"
"GNOME Boxes"
"Internet = chromium htop mtr namebench netselect-apt strace speedtest-cli telegram-desktop torbrowser-launcher"
"IRC = hexchat konversation"
"Media = flac lame moc smplayer vlc"
"Mintstick"
"Pictures = feh inkscape luminance-hdr gimp gimp-data-extras gimp-gap gimp-lensfun gimp-ufraw gimp-texturiz gwenview kde-spectacle ufraw ufraw-batch"
"Terminal = btop konsole terminator"
"Torrents = amule deluge ktorrent qbittorrent transmission-gtk"
"Virtualbox"
"WINE"
"XFCE Desktop"
"X Screensavers"
"Exit"
)
# Display options dynamically
PS3="Please select an option: "
select installmenuchoice in "${options[@]}"; do
case "$installmenuchoice" in
"Compressed Files = gzip p7zip-full tar unrar-free unzip")
for pkg in gzip p7zip-full tar unrar-free unzip; do
InstallPackageIfNotExist "$pkg"
done
;;
"Conky")
InstallPackageIfNotExist conky-all "aptitude"
;;
"Documents = kate libreoffice")
for pkg in kate libreoffice; do
InstallPackageIfNotExist "$pkg"
done
;;
"Drive Management = apper brasero furiusisomount gnome-disk-utility k3b smartmontools xfburn")
for pkg in brasero gnome-disk-utility k3b smartmontools xfburn; do
InstallPackageIfNotExist "$pkg"
done
;;
"File Browsers = caja dolphin krusader nautilus nemo spacefm")
for pkg in caja dolphin krusader nautilus nemo spacefm; do
InstallPackageIfNotExist "$pkg"
done
;;
"FlatPak")
sudo apt update
for pkg in flatpak gnome-software-plugin-flatpak; do
InstallPackageIfNotExist "$pkg"
done
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
sudo apt update
;;
"Snap Store")
sudo apt update
InstallPackageIfNotExist snapd
sudo snap install snapd
;;
"Fluxbox Setup")
InstallPackageIfNotExist conky-all "aptitude"
for pkg in compton deluge fluxbox hexchat hpanel network-manager-gnome suckless-tools spacefm terminator xfce4-power-manager; do
InstallPackageIfNotExist "$pkg"
done
;;
"Font Managers = figlet font-manager gucharmap")
for pkg in figlet font-manager gucharmap; do
InstallPackageIfNotExist "$pkg"
done
;;
"Fonts")
for pkg in fonts-arkpandora fonts-averia-gwf fonts-averia-sans-gwf fonts-averia-serif-gwf fonts-cabin fonts-cantarell fonts-cardo fonts-century-catalogue fonts-comfortaa fonts-dejavu fonts-dkg-handwriting fonts-droid-fallback fonts-dosis fonts-ebgaramond fonts-essays1743 fonts-freefont-ttf fonts-gnutypewriter fonts-go fonts-hack-ttf fonts-junicode fonts-jura fonts-lato fonts-linex fonts-liberation fonts-lobster fonts-lobstertwo fonts-noto fonts-play fonts-roboto fonts-unifont fonts-wine ttf-mscorefonts-installer; do
InstallPackageIfNotExist "$pkg"
done
;;
"Fortunes")
for pkg in fortunes fortune-mod fortunes-spam; do
InstallPackageIfNotExist "$pkg"
done
;;
"Games = angrydd ardentryst asylum atanks bsdgames dopewars dosbox flare ksudoku kobodeluxe manaplus meritous runescape zangband")
for pkg in angrydd ardentryst asylum atanks bsdgames dopewars dosbox flare ksudoku kobodeluxe manaplus meritous runescape zangband; do
InstallPackageIfNotExist "$pkg"
done
;;
"Games = Steam")
sudo dpkg --add-architecture i386
sudo apt update
InstallPackageIfNotExist steam-installer "aptitude"
sudo apt install mesa-vulkan-drivers libglx-mesa0:i386 mesa-vulkan-drivers:i386 libgl1-mesa-dri:i386
;;
"GNOME Boxes")
InstallPackageIfNotExist gnome-boxes "aptitude"
;;
"Internet = chromium htop mtr namebench netselect-apt strace speedtest-cli telegram-desktop torbrowser-launcher")
for pkg in chromium htop mtr namebench netselect-apt strace speedtest-cli telegram-desktop torbrowser-launcher; do
InstallPackageIfNotExist "$pkg"
done
;;
"IRC = hexchat konversation")
for pkg in hexchat konversation; do
InstallPackageIfNotExist "$pkg"
done
;;
"Media = flac lame moc smplayer vlc")
for pkg in flac lame moc smplayer vlc; do
InstallPackageIfNotExist "$pkg"
done
;;
"Mintstick")
# Firefox download for Mintstick
firefox http://packages.linuxmint.com/pool/main/m/mintstick/
;;
"Pictures = feh inkscape luminance-hdr gimp gimp-data-extras gimp-gap gimp-lensfun gimp-ufraw gimp-texturiz gwenview kde-spectacle ufraw ufraw-batch")
for pkg in feh inkscape luminance-hdr gimp gimp-data-extras gimp-gap gimp-lensfun gimp-ufraw gimp-texturiz gwenview kde-spectacle ufraw ufraw-batch; do
InstallPackageIfNotExist "$pkg"
done
;;
"Terminal = btop konsole terminator")
for pkg in btop konsole terminator; do
InstallPackageIfNotExist "$pkg"
done
;;
"Torrents = amule deluge ktorrent qbittorrent transmission-gtk")
for pkg in amule deluge ktorrent qbittorrent transmission-gtk; do
InstallPackageIfNotExist "$pkg"
done
;;
"Virtualbox")
InstallPackageIfNotExist virtualbox-nonfree "aptitude"
;;
"WINE")
sudo dpkg --add-architecture i386
sudo apt update
for pkg in wine wine32 wine64 libwine libwine:i386 fonts-wine; do
InstallPackageIfNotExist "$pkg" "aptitude"
done
;;
"XFCE Desktop")
for pkg in xfce4 xfce4-goodies; do
InstallPackageIfNotExist "$pkg" "aptitude"
done
;;
"X Screensavers")
for pkg in xscreensaver xscreensaver-data xscreensaver-data-extra xscreensaver-screensaver-bsod xscreensaver-gl xscreensaver-gl-extra rss-glx; do
InstallPackageIfNotExist "$pkg"
done
;;
"Exit")
break
;;
*)
echo "Invalid choice, please try again."
;;
esac
pressanykey
clear
done
}