From b188587a44980a51ab2fe62c5fa8c11ef4853fa4 Mon Sep 17 00:00:00 2001 From: TrudeEH Date: Mon, 27 May 2024 15:40:00 +0100 Subject: [PATCH] Add more scripts to the install toolkit --- install.sh | 77 +++++++++++++++++---- scripts/{bash-tui-toolkit.bash => TUI.bash} | 0 scripts/install-minecraft-bedrock.sh | 4 -- scripts/install-multimc.sh | 13 ---- scripts/install-steam.sh | 10 --- scripts/install-tailscale.sh | 3 - scripts/network.sh | 9 +-- scripts/{test_tui.sh => test-TUI.sh} | 4 +- 8 files changed, 69 insertions(+), 51 deletions(-) rename scripts/{bash-tui-toolkit.bash => TUI.bash} (100%) delete mode 100755 scripts/install-minecraft-bedrock.sh delete mode 100755 scripts/install-multimc.sh delete mode 100755 scripts/install-steam.sh delete mode 100755 scripts/install-tailscale.sh rename scripts/{test_tui.sh => test-TUI.sh} (95%) diff --git a/install.sh b/install.sh index 52f77b53..a87f865a 100755 --- a/install.sh +++ b/install.sh @@ -1,6 +1,6 @@ #! /bin/bash -source scripts/bash-tui-toolkit.bash +source scripts/TUI.bash # export LOG_LEVEL="$LOG_DEBUG" echo "Updating Debian..." @@ -8,9 +8,9 @@ sudo apt install nala -y sudo nala update sudo nala upgrade echo -echo "-------------------------------------" -echo "--- Trude's Dotfiles Install Tool ---" -echo "-------------------------------------" +echo "##########################" +echo "# Trude's Debian Toolkit #" +echo "##########################" if [ $? == 0 ]; then show_success "System updated." else @@ -19,12 +19,54 @@ else fi echo -main_menu_opts=("Install Trude's Dotfiles" "Install GNOME (desktop)" "Install GitHub CLI" "Install Google Chrome" "Install Ollama" "Install VSCode") - +main_menu_opts=("Install Trude's Dotfiles" "Install GNOME (desktop)" "Install GitHub CLI" "Install Google Chrome" "Install Ollama" "Install VSCode" "Install Tailscale" "+Install Games") main_menu=$(checkbox "Press SPACE to select and ENTER to continue." "${main_menu_opts[@]}") log "$LOG_DEBUG" "Menu opts: $main_menu" +# Submenus +if [[ ${main_menu[@]} =~ 7 ]]; then # +Games + echo "Select games to install" + game_menu_opts=("Install MultiMC and Java 8,17,21." "Install Minecraft Bedrock" "Install Steam") + game_menu=$(checkbox "Press SPACE to select and ENTER to continue." "${game_menu_opts[@]}") + + if [[ ${game_menu[@]} =~ 0 ]]; then # Install MultiMC + # Install multimc + sudo nala update + sudo nala install libqt5core5a libqt5network5 libqt5gui5 + wget https://files.multimc.org/downloads/multimc_1.6-1.deb + sudo nala install ./multimc_1.6-1.deb + rm multimc_1.6-1.deb + + # Install java + sudo mkdir -p /etc/apt/keyrings + wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo tee /etc/apt/keyrings/adoptium.asc + echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list + sudo nala update + sudo nala install temurin-8-jdk temurin-21-jdk temurin-17-jdk + fi + + if [[ ${game_menu[@]} =~ 1 ]]; then # Install Minecraft Bedrock + curl -sS https://minecraft-linux.github.io/pkg/deb/pubkey.gpg | sudo tee -a /etc/apt/trusted.gpg.d/minecraft-linux-pkg.asc + echo "deb [arch=amd64,arm64,armhf] https://minecraft-linux.github.io/pkg/deb bookworm-nightly main" | sudo tee /etc/apt/sources.list.d/minecraft-linux-pkg.list + sudo nala update + sudo nala install mcpelauncher-manifest mcpelauncher-ui-manifest msa-manifest + fi + + if [[ ${game_menu[@]} =~ 2 ]]; then # Install Steam + echo "Add \"contrib non-free\" to the end of each repo. Press ENTER to edit /etc/apt/sources.list." + read + sudoedit /etc/apt/sources.list + + sudo dpkg --add-architecture i386 + sudo nala update + sudo nala install mesa-vulkan-drivers libglx-mesa0:i386 mesa-vulkan-drivers:i386 libgl1-mesa-dri:i386 + sudo nala install steam + fi + +fi + +# Main menu items if [[ ${main_menu[@]} =~ 0 ]]; then # Install Dotfiles sudo nala install htop fzf tmux git stow vim wget @@ -47,17 +89,17 @@ fi if [[ ${main_menu[@]} =~ 1 ]]; then # GNOME sudo nala install gnome-core sudo rm -rf /etc/network/interfaces #Fix Wifi settings bug - dconf load / < ./settings.dconf + dconf load / <./settings.dconf fi if [[ ${main_menu[@]} =~ 2 ]]; then # Github CLI - (type -p wget >/dev/null || (sudo apt update && sudo apt-get install wget -y)) \ - && sudo mkdir -p -m 755 /etc/apt/keyrings \ - && wget -qO- https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \ - && sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \ - && echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \ - && sudo nala update \ - && sudo nala install gh -y + (type -p wget >/dev/null || (sudo apt update && sudo apt-get install wget -y)) && + sudo mkdir -p -m 755 /etc/apt/keyrings && + wget -qO- https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg >/dev/null && + sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && + echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list >/dev/null && + sudo nala update && + sudo nala install gh -y if [ $? == 0 ]; then show_success "GitHub CLI Installed." else @@ -76,7 +118,7 @@ if [[ ${main_menu[@]} =~ 4 ]]; then # Ollama fi if [[ ${main_menu[@]} =~ 5 ]]; then # VSCode - curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg + curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor >microsoft.gpg sudo install -o root -g root -m 644 microsoft.gpg /etc/apt/keyrings/microsoft-archive-keyring.gpg sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/microsoft-archive-keyring.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list' sudo rm microsoft.gpg @@ -84,3 +126,8 @@ if [[ ${main_menu[@]} =~ 5 ]]; then # VSCode sudo nala install code fi +if [[ ${main_menu[@]} =~ 6 ]]; then # Tailscale + curl -fsSL https://tailscale.com/install.sh | sh + sudo systemctl enable tailscaled + sudo tailscale up +fi diff --git a/scripts/bash-tui-toolkit.bash b/scripts/TUI.bash similarity index 100% rename from scripts/bash-tui-toolkit.bash rename to scripts/TUI.bash diff --git a/scripts/install-minecraft-bedrock.sh b/scripts/install-minecraft-bedrock.sh deleted file mode 100755 index 8ec39e4c..00000000 --- a/scripts/install-minecraft-bedrock.sh +++ /dev/null @@ -1,4 +0,0 @@ -curl -sS https://minecraft-linux.github.io/pkg/deb/pubkey.gpg | sudo tee -a /etc/apt/trusted.gpg.d/minecraft-linux-pkg.asc -echo "deb [arch=amd64,arm64,armhf] https://minecraft-linux.github.io/pkg/deb bookworm-nightly main" | sudo tee /etc/apt/sources.list.d/minecraft-linux-pkg.list -sudo nala update -sudo nala install mcpelauncher-manifest mcpelauncher-ui-manifest msa-manifest diff --git a/scripts/install-multimc.sh b/scripts/install-multimc.sh deleted file mode 100755 index c6992337..00000000 --- a/scripts/install-multimc.sh +++ /dev/null @@ -1,13 +0,0 @@ -# Install multimc -sudo nala update -sudo nala install libqt5core5a libqt5network5 libqt5gui5 -wget https://files.multimc.org/downloads/multimc_1.6-1.deb -sudo nala install ./multimc_1.6-1.deb -rm multimc_1.6-1.deb - -# Install java -sudo mkdir -p /etc/apt/keyrings -wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo tee /etc/apt/keyrings/adoptium.asc -echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list -sudo nala update -sudo nala install temurin-8-jdk temurin-21-jdk temurin-17-jdk diff --git a/scripts/install-steam.sh b/scripts/install-steam.sh deleted file mode 100755 index 06de6532..00000000 --- a/scripts/install-steam.sh +++ /dev/null @@ -1,10 +0,0 @@ -#! /bin/bash -echo "Add \"contrib non-free\" to the end of each repo. Press ENTER to edit /etc/apt/sources.list." -read -sudoedit /etc/apt/sources.list - -sudo dpkg --add-architecture i386 -sudo nala update -sudo nala install mesa-vulkan-drivers libglx-mesa0:i386 mesa-vulkan-drivers:i386 libgl1-mesa-dri:i386 -sudo nala install steam - diff --git a/scripts/install-tailscale.sh b/scripts/install-tailscale.sh deleted file mode 100755 index ef850b85..00000000 --- a/scripts/install-tailscale.sh +++ /dev/null @@ -1,3 +0,0 @@ -curl -fsSL https://tailscale.com/install.sh | sh -sudo systemctl enable tailscaled -sudo tailscale up diff --git a/scripts/network.sh b/scripts/network.sh index e9f89476..850e16d5 100755 --- a/scripts/network.sh +++ b/scripts/network.sh @@ -1,10 +1,11 @@ echo "PUBLIC IP:" -wget -qO - https://api.ipify.org; echo +wget -qO - https://api.ipify.org +echo echo -echo "TOR PUBLIC IP:" -torsocks wget -qO - https://api.ipify.org; echo -echo +# echo "TOR PUBLIC IP:" +# torsocks wget -qO - https://api.ipify.org; echo +# echo echo "OPEN PORTS:" sudo ss -tupln diff --git a/scripts/test_tui.sh b/scripts/test-TUI.sh similarity index 95% rename from scripts/test_tui.sh rename to scripts/test-TUI.sh index 33d01e10..4c68f8cf 100755 --- a/scripts/test_tui.sh +++ b/scripts/test-TUI.sh @@ -2,7 +2,7 @@ # # Basic demo of features # -source scripts/bash-tui-toolkit.bash +source scripts/TUI.bash # # Platform @@ -35,7 +35,7 @@ ranged="$(range "foo bar" "-5" 0 5)" options=("one" "two" "three" "four" "a" "b" "c" "d" "e") validate_password() { - if [ ${#1} -lt 10 ];then + if [ ${#1} -lt 10 ]; then echo "Password needs to be at least 10 characters" exit 1 fi