1
0
Fork 0

applied shfmt

This commit is contained in:
Kim, Jimin 2021-10-27 12:38:10 +09:00
parent d0171a4940
commit 8161ca69ca
2 changed files with 357 additions and 294 deletions

View file

@ -4,7 +4,7 @@
---
[![LICENSE: MIT](https://img.shields.io/badge/License-MIT-green?style=for-the-badge)](./LICENSE)
[![LICENSE: MIT](https://img.shields.io/badge/License-MIT-green?style=for-the-badge)](./LICENSE) [![FORMATTER: SHFMT](https://img.shields.io/badge/formatter-shfmt-darkgrey?style=for-the-badge)](https://marketplace.visualstudio.com/items?itemName=foxundermoon.shell-format)
## Purpose

643
setup.sh
View file

@ -3,19 +3,18 @@
# don't remove line after package_install
# it will result in this syntax error: unexpected end of file
# #################### [ ESSENTIALS ] ####################
# Installs essential packages and defining important functions
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)"
DATA_PATH="/media/pomp/data"
POST_INSTALL=()
BOLD="\e[1m"
RESET="\e[0m"
RED="\e[91m" # actually light red
GREEN="\e[92m" # actually light green
RED="\e[91m" # actually light red
GREEN="\e[92m" # actually light green
YELLOW="\e[33m"
log_no_label() {
@ -39,7 +38,7 @@ warn() {
}
error() {
>&2 echo -e " $RED$BOLD ERROR | $*$RESET"
echo >&2 -e " $RED$BOLD ERROR | $*$RESET"
}
title() {
@ -65,39 +64,40 @@ package_remove() {
setup_essentials() {
# install pamac if it does not exist
if ! command -v pamac &> /dev/null; then
if ! command -v pamac &>/dev/null; then
log "pamac was not installed already. Installing now..."
setup_pamac
fi
# install dialog if it's not installed already
if ! command -v dialog &> /dev/null; then
if ! command -v dialog &>/dev/null; then
log "dialog was not installed already. Installing now..."
package_install dialog
fi
}
load_dconf() {
dconf load / < "./dconf/$1"
dconf load / <"./dconf/$1"
}
# #################### [ DEFINING SETUP ] ####################
# Define instructions on how to setup applications & stuff
setup_4kvideodownloader() {
package_install \
4kvideodownloader \
package_install \
4kvideodownloader
}
setup_blender() {
package_install \
blender \
blender
}
setup_brave() {
package_install \
brave-bin \
package_install \
brave-bin
# settings: DNS https cloudflare
POST_INSTALL+=(
@ -111,9 +111,9 @@ setup_conky() {
cp ./autostart/conky.desktop ~/.config/autostart
# vnstat: network traffic statistics
package_install \
conky \
vnstat \
package_install \
conky \
vnstat
sudo systemctl enable vnstat
sudo systemctl start vnstat
@ -123,8 +123,8 @@ setup_cpu_undervolting() {
# intel CPU undervolting for less heat and power consumption
# https://wiki.archlinux.org/index.php/Undervolting_CPU
package_install \
intel-undervolt \
package_install \
intel-undervolt
config_file=/etc/intel-undervolt.conf
@ -159,53 +159,53 @@ setup_discord() {
# betterdiscordctl-git: BetterDiscord installer
# discord-overlay-git: Discord voice chat overlay
package_install \
discord \
betterdiscordctl-git \
discord-overlay-git \
package_install \
discord \
betterdiscordctl-git \
discord-overlay-git
BD_PLUGINS=(
134 # https://betterdiscord.app/plugin/Avatar%20Hover
60 # https://betterdiscord.app/plugin/BadgesEverywhere
119 # https://betterdiscord.app/plugin/BetterCodeblocks
62 # https://betterdiscord.app/plugin/BetterNsfwTag
63 # https://betterdiscord.app/plugin/BetterSearchPage
228 # https://betterdiscord.app/plugin/CallTimeCounter
64 # https://betterdiscord.app/plugin/CharCounter
67 # https://betterdiscord.app/plugin/CompleteTimestamps
176 # https://betterdiscord.app/plugin/Copier
68 # https://betterdiscord.app/plugin/CopyRawMessage
69 # https://betterdiscord.app/plugin/CreationDate
186 # https://betterdiscord.app/plugin/DoNotTrack
132 # https://betterdiscord.app/plugin/EmoteReplacer
245 # https://betterdiscord.app/plugin/FreeEmojis
81 # https://betterdiscord.app/plugin/GoogleTranslateOption
284 # https://betterdiscord.app/plugin/GrammarCorrect
220 # https://betterdiscord.app/plugin/GuildProfile
83 # https://betterdiscord.app/plugin/ImageUtilities
295 # https://betterdiscord.app/plugin/InvisibleTyping
84 # https://betterdiscord.app/plugin/JoinedAtDate
85 # https://betterdiscord.app/plugin/LastMessageDate
287 # https://betterdiscord.app/plugin/Link-Profile-Picture
11 # https://betterdiscord.app/plugin/MemberCount
29 # https://betterdiscord.app/plugin/PermissionsViewer
158 # https://betterdiscord.app/plugin/PlatformIndicators
93 # https://betterdiscord.app/plugin/QuickMention
94 # https://betterdiscord.app/plugin/ReadAllNotificationsButton
179 # https://betterdiscord.app/plugin/RedditMentions
97 # https://betterdiscord.app/plugin/RevealAllSpoilersOption
139 # https://betterdiscord.app/plugin/SecretRingTone
98 # https://betterdiscord.app/plugin/SendLargeMessages
99 # https://betterdiscord.app/plugin/ServerCounter
159 # https://betterdiscord.app/plugin/ShowAllActivities
291 # https://betterdiscord.app/plugin/ShowConnections
103 # https://betterdiscord.app/plugin/ShowHiddenChannels
104 # https://betterdiscord.app/plugin/SpellCheck
162 # https://betterdiscord.app/plugin/StaffTag
8 # https://betterdiscord.app/plugin/SuppressReplyMentions
253 # https://betterdiscord.app/plugin/Typing%20Users%20Avatars
196 # https://betterdiscord.app/plugin/TypingIndicator
293 # https://betterdiscord.app/plugin/UserDetails
134 # https://betterdiscord.app/plugin/Avatar%20Hover
60 # https://betterdiscord.app/plugin/BadgesEverywhere
119 # https://betterdiscord.app/plugin/BetterCodeblocks
62 # https://betterdiscord.app/plugin/BetterNsfwTag
63 # https://betterdiscord.app/plugin/BetterSearchPage
228 # https://betterdiscord.app/plugin/CallTimeCounter
64 # https://betterdiscord.app/plugin/CharCounter
67 # https://betterdiscord.app/plugin/CompleteTimestamps
176 # https://betterdiscord.app/plugin/Copier
68 # https://betterdiscord.app/plugin/CopyRawMessage
69 # https://betterdiscord.app/plugin/CreationDate
186 # https://betterdiscord.app/plugin/DoNotTrack
132 # https://betterdiscord.app/plugin/EmoteReplacer
245 # https://betterdiscord.app/plugin/FreeEmojis
81 # https://betterdiscord.app/plugin/GoogleTranslateOption
284 # https://betterdiscord.app/plugin/GrammarCorrect
220 # https://betterdiscord.app/plugin/GuildProfile
83 # https://betterdiscord.app/plugin/ImageUtilities
295 # https://betterdiscord.app/plugin/InvisibleTyping
84 # https://betterdiscord.app/plugin/JoinedAtDate
85 # https://betterdiscord.app/plugin/LastMessageDate
287 # https://betterdiscord.app/plugin/Link-Profile-Picture
11 # https://betterdiscord.app/plugin/MemberCount
29 # https://betterdiscord.app/plugin/PermissionsViewer
158 # https://betterdiscord.app/plugin/PlatformIndicators
93 # https://betterdiscord.app/plugin/QuickMention
94 # https://betterdiscord.app/plugin/ReadAllNotificationsButton
179 # https://betterdiscord.app/plugin/RedditMentions
97 # https://betterdiscord.app/plugin/RevealAllSpoilersOption
139 # https://betterdiscord.app/plugin/SecretRingTone
98 # https://betterdiscord.app/plugin/SendLargeMessages
99 # https://betterdiscord.app/plugin/ServerCounter
159 # https://betterdiscord.app/plugin/ShowAllActivities
291 # https://betterdiscord.app/plugin/ShowConnections
103 # https://betterdiscord.app/plugin/ShowHiddenChannels
104 # https://betterdiscord.app/plugin/SpellCheck
162 # https://betterdiscord.app/plugin/StaffTag
8 # https://betterdiscord.app/plugin/SuppressReplyMentions
253 # https://betterdiscord.app/plugin/Typing%20Users%20Avatars
196 # https://betterdiscord.app/plugin/TypingIndicator
293 # https://betterdiscord.app/plugin/UserDetails
)
log "installing betterdiscord plugins"
@ -220,8 +220,9 @@ setup_discord() {
}
setup_dotnet() {
package_install \
dotnet-sdk \
package_install \
dotnet-sdk
}
setup_fonts() {
@ -232,12 +233,12 @@ setup_fonts() {
# adobe-source-han-sans-kr-fonts: Korean font
# ttf-baekmuk: Korean font
package_install \
wget \
noto-fonts-emoji \
nerd-fonts-noto-sans-mono \
adobe-source-han-sans-kr-fonts \
ttf-baekmuk \
package_install \
wget \
noto-fonts-emoji \
nerd-fonts-noto-sans-mono \
adobe-source-han-sans-kr-fonts \
ttf-baekmuk
# path to temporarily save font related files
fonts_directory="$SCRIPT_DIR/tmp/fonts"
@ -262,9 +263,9 @@ setup_fonts() {
# download and unzip if either zip file or unzipped directory exists
if [ ! -f "$zip_path" ] && [ ! -d "$fonts_directory/$font_name" ]; then
wget -O "$zip_path" "https://fonts.google.com/download?family=$font_name" # download zip file
unzip "$zip_path" -d "$fonts_directory/$font_name" # unzip file
rm "$zip_path" # remove zip file
wget -O "$zip_path" "https://fonts.google.com/download?family=$font_name" # download zip file
unzip "$zip_path" -d "$fonts_directory/$font_name" # unzip file
rm "$zip_path" # remove zip file
fi
done
@ -276,7 +277,7 @@ setup_fonts() {
fi
# "install" all fonts
find "$fonts_directory" -type f -name "*.ttf" | while read ttf_file_path ; do
find "$fonts_directory" -type f -name "*.ttf" | while read ttf_file_path; do
mv -f "$ttf_file_path" "$font_install_dir/${ttf_file_path##*/}"
done
@ -294,19 +295,21 @@ setup_dns() {
setup_geogebra() {
package_install \
geogebra \
geogebra
}
setup_gimp() {
# photoshop but FOSS
package_install \
gimp \
package_install \
gimp
}
setup_git() {
package_install \
git \
git
git config --global user.email "developomp@gmail.com"
git config --global user.name "developomp"
@ -327,16 +330,16 @@ setup_gnome() {
# nvidia: nvidia GPU support
# optimus-manager-qt: https://github.com/Shatur/optimus-manager-qt
package_install \
gdm-prime \
xcursor-breeze `# cursor design` \
matcha-gtk-theme `# gtk theme` \
papirus-icon-theme `# icon theme` \
gnome-backgrounds `# wallpapers and shit` \
gnome-shell-extensions `# gnome shell extensions` \
gwe `# nvidia GPU overclocking https://gitlab.com/leinardi/gwe` \
nvidia `# nvidia GPU support` \
optimus-manager-qt `# https://github.com/Shatur/optimus-manager-qt` \
package_install \
gdm-prime \
xcursor-breeze \
matcha-gtk-theme \
papirus-icon-theme \
gnome-backgrounds \
gnome-shell-extensions \
gwe \
nvidia \
optimus-manager-qt
sudo systemctl enable gdm
sudo systemctl enable optimus-manager
@ -351,7 +354,7 @@ setup_gnome() {
setup_gnome_apps
cat > ~/.config/user-dirs.dirs <<EOL
cat >~/.config/user-dirs.dirs <<EOL
XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOWNLOAD_DIR="/media/pomp/data/Downloads"
XDG_TEMPLATES_DIR="$HOME/Templates"
@ -375,51 +378,77 @@ EOL
}
setup_gnome_apps() {
# install gnome apps
package_install \
alacarte `# application menu editor` \
baobab `# Disk usage analysis` \
cheese `# take photo/video with camera` \
dconf-editor `# GUI for dconf` \
eog `# photo viewer` \
evince `# document viewer` \
file-roller `# compress & decompress files/directories` \
gnome-calculator `# scientific calculator` \
gnome-characters `# Search for emojis, special characters, and symbols` \
gnome-clocks `# For multiple clocks for different time zones` \
gnome-control-center `# gnome settings` \
gnome-disk-utility `# gnome disk management` \
gnome-font-viewer `# Managing fonts` \
gnome-keyring `# passwords and keys` \
gnome-logs `# GUI for systemd journal` \
gnome-screenshot `# take screenshots` \
gnome-system-monitor `# show system processes` \
gnome-terminal-transparency `# Transparent gnome terminal` \
gnome-tweaks `# shows extra settings` \
gpick `# color picker` \
nautilus `# gnome file manager` \
sushi `# quick previewer for nautilus` \
# alacarte: application menu editor
# baobab: Disk usage analysis
# cheese: take photo/video with camera
# dconf-editor: GUI for dconf
# eog: photo viewer
# evince: document viewer
# file-roller: compress & decompress files/directories
# gnome-calculator: scientific calculator
# gnome-characters: Search for emojis, special characters, and symbols
# gnome-clocks: For multiple clocks for different time zones
# gnome-control-center: gnome settings
# gnome-disk-utility: gnome disk management
# gnome-font-viewer: Managing fonts
# gnome-keyring: passwords and keys
# gnome-logs: GUI for systemd journal
# gnome-screenshot: take screenshots
# gnome-system-monitor: show system processes
# gnome-terminal-transparency: Transparent gnome terminal
# gnome-tweaks: shows extra settings
# gpick: color picker
# nautilus: gnome file manager
# sushi: quick previewer for nautilus
package_install \
alacarte \
baobab \
cheese \
dconf-editor \
eog \
evince \
file-roller \
gnome-calculator \
gnome-characters \
gnome-clocks \
gnome-control-center \
gnome-disk-utility \
gnome-font-viewer \
gnome-keyring \
gnome-logs \
gnome-screenshot \
gnome-system-monitor \
gnome-terminal-transparency \
gnome-tweaks \
gpick \
nautilus \
sushi
}
setup_gnome_extensions() {
package_install \
gnome-shell-extension-installer `# Installation of gnome extensions from command line` \
gnome-shell-extension-pop-shell-git `# for window tiling` \
# gnome-shell-extension-installer: Installation of gnome extensions from command line
# gnome-shell-extension-pop-shell-git: for window tiling
package_install \
gnome-shell-extension-installer \
gnome-shell-extension-pop-shell-git
# install gnome extensions
log "installing gnome extensions"
extension_ids=(
36 # lock-keys
355 # status-area-horizontal-spacing
841 # freon
906 # sound-output-device-chooser
1078 # twitchlive-panel
1082 # cpufreq
2741 # remove-alttab-delay-v2
2890 # tray-icons-reloaded
3193 # blur-my-shell
4000 # babar
36 # lock-keys
355 # status-area-horizontal-spacing
841 # freon
906 # sound-output-device-chooser
1078 # twitchlive-panel
1082 # cpufreq
2741 # remove-alttab-delay-v2
2890 # tray-icons-reloaded
3193 # blur-my-shell
4000 # babar
# waiting for gnome 40 support
# 131 # touchpad-indicator
@ -441,20 +470,23 @@ setup_gnome_extensions() {
}
setup_go() {
# programming language
package_install \
go \
go
}
setup_godot() {
package_install \
godot `# game engine` \
# game engine
package_install \
godot
}
setup_grub() {
package_install \
grub-theme-vimix `# grub theme` \
# grub theme
package_install \
grub-theme-vimix
# /etc/default/grub
# GRUB_TIMEOUT=3
@ -465,26 +497,30 @@ setup_grub() {
}
setup_gsmartcontrol() {
package_install \
gsmartcontrol `# disk health checker` \
# disk health checker
package_install \
gsmartcontrol
}
setup_inkscape() {
package_install \
inkscape `# adobe illustrator but FOSS` \
# adobe illustrator but FOSS
package_install \
inkscape
}
setup_kdenlive() {
package_install \
kdenlive-appimage `# video editing` \
# video editing
package_install \
kdenlive-appimage
}
setup_keyboard() {
package_install \
ibus-hangul `# Korean keyboard support` \
# Korean keyboard support
package_install \
ibus-hangul
POST_INSTALL+=("keyboard: setup korean keyboard and reboot")
}
@ -495,40 +531,51 @@ setup_marktext() {
}
setup_middleclickpaste() {
package_install \
xmousepasteblock-git `# prevents middle click paste` \
# prevents middle click paste
package_install \
xmousepasteblock-git
# todo: make it autostart
}
setup_mystiq() {
package_install \
mystiq `# video converter` \
# video converter
package_install \
mystiq
}
setup_node() {
package_install \
nodejs `# Javascript on servers!` \
npm `# node package manager` \
yarn `# better node package manager` \
# nodejs: Javascript on servers!
# npm: node package manager
# yarn: better node package manager
package_install \
nodejs \
npm \
yarn
# https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally
# export PATH="$(yarn global bin):$PATH"
}
setup_obs() {
package_install \
obs-plugin-input-overlay-bin `# show inputs in OBS` \
obs-studio-browser `# screen recording and streaming with browser overlay support` \
# obs-plugin-input-overlay-bin: show inputs in OBS
# obs-studio-browser: screen recording and streaming with browser overlay support
package_install \
obs-plugin-input-overlay-bin \
obs-studio-browser
}
setup_osu() {
# osu! stable
# todo: enable multilib
# todo: change to lazer when it can give pp
package_install \
osu `# osu stable` \
package_install \
osu
}
@ -548,65 +595,72 @@ setup_pamac() {
}
setup_pavucontrol() {
package_install \
pavucontrol `# PulseAudio settings I use for redirecting desktop audio to microphone input` \
# PulseAudio settings I use for redirecting desktop audio to microphone input
package_install \
pavucontrol
}
setup_pip() {
package_install \
python-pip `# package installer for python` \
# package installer for python
package_install \
python-pip
}
setup_piper() {
package_install \
piper `# gaming mouse settings GUI` \
# gaming mouse settings GUI
package_install \
piper
}
setup_rust() {
package_install \
rust \
rustup \
rustup
rustup install stable
}
setup_shfmt() {
package_install \
shfmt \
shfmt
}
setup_steam() {
package_install \
steam \
steam
}
setup_timeshift() {
package_install \
timeshift `# backup and restore system` \
# backup and restore system
package_install \
timeshift
}
setup_torrential() {
package_install \
torrential `torrent client` \
# torrent client
package_install \
torrential
}
setup_unity() {
package_install \
unityhub `# game engine` \
# game engine
package_install \
unityhub
POST_INSTALL+=("Change editors location")
}
setup_vim() {
package_install \
vim-plug `# vim plugin manager` \
# vim plugin manager
package_install \
vim-plug
cp .vimrc ~
}
@ -614,10 +668,10 @@ setup_vim() {
setup_virtualbox() {
# https://wiki.archlinux.org/title/VirtualBox
package_install \
virtualbox \
package_install \
virtualbox \
virtualbox-host-modules-arch \
virtualbox-ext-oracle \
virtualbox-ext-oracle
sudo systemctl enable systemd-modules-load
sudo systemctl start systemd-modules-load
@ -625,24 +679,33 @@ setup_virtualbox() {
}
setup_vlc() {
package_install \
vlc-luajit `# media player compatible with obs-studio-browser` \
# media player compatible with obs-studio-browser
package_install \
vlc-luajit
}
setup_vscode() {
package_install \
visual-studio-code-bin `# proprietary vscode build` \
# proprietary vscode build
package_install \
visual-studio-code-bin
POST_INSTALL+=("vscode: log in")
}
setup_wine() {
package_install \
wine `# compatibility layer` \
wine-gecko `# internet explorer for wine` \
wine-mono `# .NET runtime for wine` \
winetricks `# wine helper script` \
# wine: compatibility layer
# wine-gecko: internet explorer for wine
# wine-mono: .NET runtime for wine
# winetricks: wine helper script
package_install \
wine \
wine-gecko \
wine-mono \
winetricks
# WINEARCH=win32 WINEPREFIX=~/.win32/ winecfg
# winetricks allfonts
@ -650,28 +713,34 @@ setup_wine() {
}
setup_wireshark() {
package_install \
wireshark-gtk2 `# network protocol analyzer with gtk frontend` \
# network protocol analyzer with gtk frontend
package_install \
wireshark-gtk2
sudo usermod -a -G wireshark $USER
POST_INSTALL+=("wireshark: reboot")
}
setup_onlyoffice() {
package_install \
onlyoffice-bin `# MS office but free` \
# MS office but free
package_install \
onlyoffice-bin
}
setup_zoom() {
package_install \
zoom `# gay video conference app` \
# gay video conference app
package_install \
zoom
}
setup_zsh() {
package_install \
zsh \
zsh
if [[ ! -d /home/pomp/.oh-my-zsh ]]; then
# install oh my zsh
@ -689,19 +758,18 @@ setup_zsh() {
fi
}
# #################### [ ETC ] ####################
backup() {
TIMESTAMP=$(date +%s)
# backup dconf configuration
dconf dump / > "$SCRIPT_DIR/dconf$TIMESTAMP.conf"
dconf dump / >"$SCRIPT_DIR/dconf$TIMESTAMP.conf"
# make a home directory backup
rsync -a --info=progress2 --perms /home/pomp "$DATA_PATH/backup$TIMESTAMP"
# create timeshift backup
if ! command -v timeshift &> /dev/null; then
if ! command -v timeshift &>/dev/null; then
error "failed to create timeshift backup. Timeshift command not found."
else
sudo timeshift --create --comments "auto created by developomp setup script ($TIMESTAMP)"
@ -721,7 +789,6 @@ setup_local() {
fi
}
# #################### [ TEST ] ####################
# Tests if script is ready to be executed
@ -732,11 +799,10 @@ if [[ ! $EUID -ne 0 ]]; then
fi
# check internet connection
if ! ping -c 1 archlinux.org &> /dev/null; then
if ! ping -c 1 archlinux.org &>/dev/null; then
error "You are not connected to the internet"
fi
# #################### [ START ] ####################
# move to script directory (repo root)
@ -761,57 +827,56 @@ if [[ $REPLY =~ ^[^Yy]$ ]]; then
fi
echo
# #################### [ MAIN ] ####################
setup_essentials
options=(
"4k_video_downloader" "" off
"backup" "" off
"blender" "" off
"brave" "" off
"cpu_undervolting" "" off
"discord" "" off
"dotnet" "" off
"fonts" "" off
"geogebra" "" off
"gimp" "" off
"git" "" off
"gnome" "" off
"gnome_apps" "" off
"gnome_extensions" "" off
"go" "" off
"godot" "" off
"gsmartcontrol" "" off
"inkscape" "" off
"kdenlive" "" off
"keyboard" "" off
"obs" "" off
"osu" "" off
"marktext" "" off
"middleclickpaste" "" off
"mystiq" "" off
"node" "" off
"pamac" "" off
"pavucontrol" "" off
"pip" "" off
"piper" "" off
"rust" "" off
"shfmt" "" off
"steam" "" off
"timeshift" "" off
"torrential" "" off
"unity" "" off
"vim" "" off
"virtualbox" "" off
"vlc" "" off
"vscode" "" off
"wine" "" off
"wireshark" "" off
"onlyoffice" "" off
"zoom" "" off
"zsh" "" off
"4k_video_downloader" "" off
"backup" "" off
"blender" "" off
"brave" "" off
"cpu_undervolting" "" off
"discord" "" off
"dotnet" "" off
"fonts" "" off
"geogebra" "" off
"gimp" "" off
"git" "" off
"gnome" "" off
"gnome_apps" "" off
"gnome_extensions" "" off
"go" "" off
"godot" "" off
"gsmartcontrol" "" off
"inkscape" "" off
"kdenlive" "" off
"keyboard" "" off
"obs" "" off
"osu" "" off
"marktext" "" off
"middleclickpaste" "" off
"mystiq" "" off
"node" "" off
"pamac" "" off
"pavucontrol" "" off
"pip" "" off
"piper" "" off
"rust" "" off
"shfmt" "" off
"steam" "" off
"timeshift" "" off
"torrential" "" off
"unity" "" off
"vim" "" off
"virtualbox" "" off
"vlc" "" off
"vscode" "" off
"wine" "" off
"wireshark" "" off
"onlyoffice" "" off
"zoom" "" off
"zsh" "" off
)
# choose from available options
@ -820,61 +885,59 @@ choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
clear
for choice in $choices; do
case "$choice" in
"4k_video_downloader") setup_4kvideodownloader;;
"blender") setup_blender;;
"brave") setup_brave;;
"backup") backup;;
"cpu_undervolting") setup_cpu_undervolting;;
"discord") setup_discord;;
"dotnet") setup_dotnet;;
"fonts") setup_fonts;;
"geogebra") setup_geogebra;;
"gimp") setup_gimp;;
"git") setuo_git;;
"gnome") setup_gnome;;
"gnome_apps") setup_gnome_apps;;
"gnome_extensions") setup_gnome_extensions;;
"go") setup_go;;
"godot") setup_godot;;
"gsmartcontrol") setup_gsmartcontrol;;
"inkscape") setup_inkscape;;
"kdenlive") setup_kdenlive;;
"keyboard") setup_keyboard;;
"obs") setup_obs;;
"osu") setup_osu;;
"marktext") setup_marktext;;
"middleclickpaste") setup_middleclickpaste;;
"mystiq") setup_mystiq;;
"node") setup_node;;
"pamac") setup_pamac;;
"pavucontrol") setup_pavucontrol;;
"pip") setup_pip;;
"piper") setup_piper;;
"rust") setup_rust;;
"shfmt") setup_shfmt;;
"steam") setup_steam;;
"timeshift") setup_timeshift;;
"torrential") setup_torrential;;
"unity") setup_unity;;
"vim") setup_vim;;
"virtualbox") setup_virtualbox;;
"vlc") setup_vlc;;
"vscode") setup_vscode;;
"wine") setup_wine;;
"wireshark") setup_wireshark;;
"onlyoffice") setup_onlyoffice;;
"zoom") setup_zoom;;
"zsh") setup_zsh;;
"4k_video_downloader") setup_4kvideodownloader ;;
"blender") setup_blender ;;
"brave") setup_brave ;;
"backup") backup ;;
"cpu_undervolting") setup_cpu_undervolting ;;
"discord") setup_discord ;;
"dotnet") setup_dotnet ;;
"fonts") setup_fonts ;;
"geogebra") setup_geogebra ;;
"gimp") setup_gimp ;;
"git") setuo_git ;;
"gnome") setup_gnome ;;
"gnome_apps") setup_gnome_apps ;;
"gnome_extensions") setup_gnome_extensions ;;
"go") setup_go ;;
"godot") setup_godot ;;
"gsmartcontrol") setup_gsmartcontrol ;;
"inkscape") setup_inkscape ;;
"kdenlive") setup_kdenlive ;;
"keyboard") setup_keyboard ;;
"obs") setup_obs ;;
"osu") setup_osu ;;
"marktext") setup_marktext ;;
"middleclickpaste") setup_middleclickpaste ;;
"mystiq") setup_mystiq ;;
"node") setup_node ;;
"pamac") setup_pamac ;;
"pavucontrol") setup_pavucontrol ;;
"pip") setup_pip ;;
"piper") setup_piper ;;
"rust") setup_rust ;;
"shfmt") setup_shfmt ;;
"steam") setup_steam ;;
"timeshift") setup_timeshift ;;
"torrential") setup_torrential ;;
"unity") setup_unity ;;
"vim") setup_vim ;;
"virtualbox") setup_virtualbox ;;
"vlc") setup_vlc ;;
"vscode") setup_vscode ;;
"wine") setup_wine ;;
"wireshark") setup_wireshark ;;
"onlyoffice") setup_onlyoffice ;;
"zoom") setup_zoom ;;
"zsh") setup_zsh ;;
esac
done
# #################### [ CLEANUP ] ####################
# remove temporary directory
rm -rf "$SCRIPT_DIR/tmp"
# #################### [ DONE ] ####################
# print some info after installation
@ -884,7 +947,7 @@ echo
# show what to do manually
if [ ! ${#POST_INSTALL[@]} -eq 0 ]; then
log_no_label "now:"
log_no_label "now:"
for doWhat in "${POST_INSTALL[@]}"; do
log_no_label " - $doWhat"