diff --git a/setup/install-modules.sh b/setup/install-modules.sh index e8badec..9d0651b 100755 --- a/setup/install-modules.sh +++ b/setup/install-modules.sh @@ -130,6 +130,17 @@ count_steps() { [[ "$sel" == *"python"* ]] && TOTAL=$(( TOTAL + 1 )) [[ "$sel" == *"zfs"* ]] && TOTAL=$(( TOTAL + 1 )) [[ "$sel" == *"wprs"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"chromium"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"firefox-browser"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"zen-browser"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"nyxt"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"librewolf"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"min-browser"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"vscodium"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"zed-ide"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"geany"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"codeblocks"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$sel" == *"kate"* ]] && TOTAL=$(( TOTAL + 1 )) } [[ $EUID -eq 0 ]] && die "Run as your normal user (not root)." @@ -203,6 +214,19 @@ SELECTED=$(dialog --backtitle "$BACKTITLE" \ "python" "Python tools pyright · pipx · pynvim" off \ "zfs" "ZFS zfs-dkms kernel module" off \ "wprs" "WPRS wprs-git (AUR)" off \ + \ + "chromium" "Chromium open-source browser (official)" off \ + "firefox-browser" "Firefox Mozilla browser (official)" off \ + "zen-browser" "Zen Browser Firefox-based privacy browser (AUR)" off \ + "nyxt" "Nyxt keyboard-driven browser (AUR)" off \ + "librewolf" "LibreWolf hardened Firefox fork (AUR)" off \ + "min-browser" "Min minimal Electron browser (AUR)" off \ + \ + "vscodium" "VSCodium telemetry-free VS Code (AUR)" off \ + "zed-ide" "Zed high-performance Rust IDE (official)" off \ + "geany" "Geany lightweight IDE + plugins (official)" off \ + "codeblocks" "Code::Blocks C/C++ IDE (official)" off \ + "kate" "Kate KDE advanced text editor (official)" off \ 3>&1 1>&2 2>&3) || { clear; echo "Aborted."; exit 0; } [[ -z "$SELECTED" ]] && { clear; echo "Nothing selected."; exit 0; } @@ -254,6 +278,17 @@ SUMMARY="" [[ "$SELECTED" == *"python"* ]] && SUMMARY+=" ✦ Python tools\n" [[ "$SELECTED" == *"zfs"* ]] && SUMMARY+=" ✦ ZFS\n" [[ "$SELECTED" == *"wprs"* ]] && SUMMARY+=" ✦ WPRS\n" +[[ "$SELECTED" == *"chromium"* ]] && SUMMARY+=" ✦ Chromium\n" +[[ "$SELECTED" == *"firefox-browser"* ]] && SUMMARY+=" ✦ Firefox\n" +[[ "$SELECTED" == *"zen-browser"* ]] && SUMMARY+=" ✦ Zen Browser\n" +[[ "$SELECTED" == *"nyxt"* ]] && SUMMARY+=" ✦ Nyxt\n" +[[ "$SELECTED" == *"librewolf"* ]] && SUMMARY+=" ✦ LibreWolf\n" +[[ "$SELECTED" == *"min-browser"* ]] && SUMMARY+=" ✦ Min Browser\n" +[[ "$SELECTED" == *"vscodium"* ]] && SUMMARY+=" ✦ VSCodium\n" +[[ "$SELECTED" == *"zed-ide"* ]] && SUMMARY+=" ✦ Zed IDE\n" +[[ "$SELECTED" == *"geany"* ]] && SUMMARY+=" ✦ Geany\n" +[[ "$SELECTED" == *"codeblocks"* ]] && SUMMARY+=" ✦ Code::Blocks\n" +[[ "$SELECTED" == *"kate"* ]] && SUMMARY+=" ✦ Kate\n" dialog --backtitle "$BACKTITLE" \ --title " Confirm " \ @@ -309,6 +344,17 @@ DE_DIR="$MODULES/Desktop-Environments" [[ "$SELECTED" == *"python"* ]] && run_module "Python Tools" "$MODULES/optional-Modules/python.sh" [[ "$SELECTED" == *"zfs"* ]] && run_module "ZFS" "$MODULES/optional-Modules/zfs.sh" [[ "$SELECTED" == *"wprs"* ]] && run_module "WPRS" "$MODULES/optional-Modules/wprs.sh" +[[ "$SELECTED" == *"chromium"* ]] && run_module "Chromium" "$APPS/chromium.sh" +[[ "$SELECTED" == *"firefox-browser"* ]] && run_module "Firefox" "$APPS/firefox.sh" +[[ "$SELECTED" == *"zen-browser"* ]] && run_module "Zen Browser" "$APPS/zen-browser.sh" +[[ "$SELECTED" == *"nyxt"* ]] && run_module "Nyxt" "$APPS/nyxt.sh" +[[ "$SELECTED" == *"librewolf"* ]] && run_module "LibreWolf" "$APPS/librewolf.sh" +[[ "$SELECTED" == *"min-browser"* ]] && run_module "Min Browser" "$APPS/min-browser.sh" +[[ "$SELECTED" == *"vscodium"* ]] && run_module "VSCodium" "$APPS/vscodium.sh" +[[ "$SELECTED" == *"zed-ide"* ]] && run_module "Zed IDE" "$APPS/zed.sh" +[[ "$SELECTED" == *"geany"* ]] && run_module "Geany" "$APPS/geany.sh" +[[ "$SELECTED" == *"codeblocks"* ]] && run_module "Code::Blocks" "$APPS/codeblocks.sh" +[[ "$SELECTED" == *"kate"* ]] && run_module "Kate" "$APPS/kate.sh" dialog --backtitle "$BACKTITLE" \ --title " Done " \ diff --git a/setup/modules/core-packages.sh b/setup/modules/core-packages.sh index 5ef70e9..5099559 100644 --- a/setup/modules/core-packages.sh +++ b/setup/modules/core-packages.sh @@ -9,6 +9,7 @@ sudo pacman -Syu --noconfirm --needed \ e2fsprogs fail2ban fastfetch fd fdupes ffmpeg firefox flatpak fzf \ gcc git glib2 greetd-tuigreet grub \ hdparm htop inetutils iputils iwd jq ldns less libpulse linux linux-firmware lshw lsof \ + lynx \ man-db mc nano neovim networkmanager \ onefetch openbsd-netcat openssh parted pciutils pipewire \ python python-pip qrencode ripgrep rsync ruby-pkg-config rust rustup \ diff --git a/setup/modules/optional-Modules/apps/chromium.sh b/setup/modules/optional-Modules/apps/chromium.sh new file mode 100644 index 0000000..bd5fe3f --- /dev/null +++ b/setup/modules/optional-Modules/apps/chromium.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +sudo pacman -S --noconfirm --needed chromium diff --git a/setup/modules/optional-Modules/apps/codeblocks.sh b/setup/modules/optional-Modules/apps/codeblocks.sh new file mode 100644 index 0000000..a2deffb --- /dev/null +++ b/setup/modules/optional-Modules/apps/codeblocks.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +sudo pacman -S --noconfirm --needed codeblocks diff --git a/setup/modules/optional-Modules/apps/firefox.sh b/setup/modules/optional-Modules/apps/firefox.sh new file mode 100644 index 0000000..e53c71a --- /dev/null +++ b/setup/modules/optional-Modules/apps/firefox.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +sudo pacman -S --noconfirm --needed firefox diff --git a/setup/modules/optional-Modules/apps/geany.sh b/setup/modules/optional-Modules/apps/geany.sh new file mode 100644 index 0000000..3628d0a --- /dev/null +++ b/setup/modules/optional-Modules/apps/geany.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +sudo pacman -S --noconfirm --needed geany geany-plugins diff --git a/setup/modules/optional-Modules/apps/kate.sh b/setup/modules/optional-Modules/apps/kate.sh new file mode 100644 index 0000000..c2d6594 --- /dev/null +++ b/setup/modules/optional-Modules/apps/kate.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +sudo pacman -S --noconfirm --needed kate diff --git a/setup/modules/optional-Modules/apps/librewolf.sh b/setup/modules/optional-Modules/apps/librewolf.sh new file mode 100644 index 0000000..5ab3713 --- /dev/null +++ b/setup/modules/optional-Modules/apps/librewolf.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +yay -S --answerdiff None --answerclean All --noconfirm librewolf-bin diff --git a/setup/modules/optional-Modules/apps/min-browser.sh b/setup/modules/optional-Modules/apps/min-browser.sh new file mode 100644 index 0000000..d309b43 --- /dev/null +++ b/setup/modules/optional-Modules/apps/min-browser.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +yay -S --answerdiff None --answerclean All --noconfirm min diff --git a/setup/modules/optional-Modules/apps/nyxt.sh b/setup/modules/optional-Modules/apps/nyxt.sh new file mode 100644 index 0000000..c77f8fa --- /dev/null +++ b/setup/modules/optional-Modules/apps/nyxt.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +yay -S --answerdiff None --answerclean All --noconfirm nyxt diff --git a/setup/modules/optional-Modules/apps/vscodium.sh b/setup/modules/optional-Modules/apps/vscodium.sh new file mode 100644 index 0000000..f537713 --- /dev/null +++ b/setup/modules/optional-Modules/apps/vscodium.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +yay -S --answerdiff None --answerclean All --noconfirm vscodium-bin diff --git a/setup/modules/optional-Modules/apps/zed.sh b/setup/modules/optional-Modules/apps/zed.sh new file mode 100644 index 0000000..4ca0fd9 --- /dev/null +++ b/setup/modules/optional-Modules/apps/zed.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +sudo pacman -S --noconfirm --needed zed diff --git a/setup/modules/optional-Modules/apps/zen-browser.sh b/setup/modules/optional-Modules/apps/zen-browser.sh new file mode 100644 index 0000000..87c99e5 --- /dev/null +++ b/setup/modules/optional-Modules/apps/zen-browser.sh @@ -0,0 +1,3 @@ +#!/bin/bash +set -euo pipefail +yay -S --answerdiff None --answerclean All --noconfirm zen-browser-bin diff --git a/setup/tui-install.sh b/setup/tui-install.sh index 6e9277c..39bdebb 100755 --- a/setup/tui-install.sh +++ b/setup/tui-install.sh @@ -135,6 +135,17 @@ count_steps() { [[ "$a" == *"python"* ]] && TOTAL=$(( TOTAL + 1 )) [[ "$a" == *"zfs"* ]] && TOTAL=$(( TOTAL + 1 )) [[ "$a" == *"wprs"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"chromium"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"firefox-browser"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"zen-browser"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"nyxt"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"librewolf"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"min-browser"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"vscodium"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"zed-ide"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"geany"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"codeblocks"* ]] && TOTAL=$(( TOTAL + 1 )) + [[ "$a" == *"kate"* ]] && TOTAL=$(( TOTAL + 1 )) } # ── Preflight ───────────────────────────────────────────────────────────────── @@ -241,6 +252,19 @@ SELECTED_APPS=$(dialog --backtitle "$BACKTITLE" \ "python" "Python tools pyright · pipx · pynvim" off \ "zfs" "ZFS zfs-dkms kernel module" off \ "wprs" "WPRS wprs-git (AUR)" off \ + \ + "chromium" "Chromium open-source browser (official)" off \ + "firefox-browser" "Firefox Mozilla browser (official)" off \ + "zen-browser" "Zen Browser Firefox-based privacy browser (AUR)" off \ + "nyxt" "Nyxt keyboard-driven browser (AUR)" off \ + "librewolf" "LibreWolf hardened Firefox fork (AUR)" off \ + "min-browser" "Min minimal Electron browser (AUR)" off \ + \ + "vscodium" "VSCodium telemetry-free VS Code (AUR)" off \ + "zed-ide" "Zed high-performance Rust IDE (official)" off \ + "geany" "Geany lightweight IDE + plugins (official)" off \ + "codeblocks" "Code::Blocks C/C++ IDE (official)" off \ + "kate" "Kate KDE advanced text editor (official)" off \ 3>&1 1>&2 2>&3) || SELECTED_APPS="" # ── Confirmation ────────────────────────────────────────────────────────────── @@ -294,6 +318,17 @@ if [[ -n "$SELECTED_APPS" ]]; then [[ "$SELECTED_APPS" == *"python"* ]] && SUMMARY+=" ✦ Python tools\n" [[ "$SELECTED_APPS" == *"zfs"* ]] && SUMMARY+=" ✦ ZFS\n" [[ "$SELECTED_APPS" == *"wprs"* ]] && SUMMARY+=" ✦ WPRS\n" + [[ "$SELECTED_APPS" == *"chromium"* ]] && SUMMARY+=" ✦ Chromium\n" + [[ "$SELECTED_APPS" == *"firefox-browser"* ]] && SUMMARY+=" ✦ Firefox\n" + [[ "$SELECTED_APPS" == *"zen-browser"* ]] && SUMMARY+=" ✦ Zen Browser\n" + [[ "$SELECTED_APPS" == *"nyxt"* ]] && SUMMARY+=" ✦ Nyxt\n" + [[ "$SELECTED_APPS" == *"librewolf"* ]] && SUMMARY+=" ✦ LibreWolf\n" + [[ "$SELECTED_APPS" == *"min-browser"* ]] && SUMMARY+=" ✦ Min Browser\n" + [[ "$SELECTED_APPS" == *"vscodium"* ]] && SUMMARY+=" ✦ VSCodium\n" + [[ "$SELECTED_APPS" == *"zed-ide"* ]] && SUMMARY+=" ✦ Zed IDE\n" + [[ "$SELECTED_APPS" == *"geany"* ]] && SUMMARY+=" ✦ Geany\n" + [[ "$SELECTED_APPS" == *"codeblocks"* ]] && SUMMARY+=" ✦ Code::Blocks\n" + [[ "$SELECTED_APPS" == *"kate"* ]] && SUMMARY+=" ✦ Kate\n" fi dialog --backtitle "$BACKTITLE" \ @@ -363,6 +398,17 @@ fi [[ "$SELECTED_APPS" == *"python"* ]] && run_module "Python Tools" "$MODULES/optional-Modules/python.sh" [[ "$SELECTED_APPS" == *"zfs"* ]] && run_module "ZFS" "$MODULES/optional-Modules/zfs.sh" [[ "$SELECTED_APPS" == *"wprs"* ]] && run_module "WPRS" "$MODULES/optional-Modules/wprs.sh" +[[ "$SELECTED_APPS" == *"chromium"* ]] && run_module "Chromium" "$APPS/chromium.sh" +[[ "$SELECTED_APPS" == *"firefox-browser"* ]] && run_module "Firefox" "$APPS/firefox.sh" +[[ "$SELECTED_APPS" == *"zen-browser"* ]] && run_module "Zen Browser" "$APPS/zen-browser.sh" +[[ "$SELECTED_APPS" == *"nyxt"* ]] && run_module "Nyxt" "$APPS/nyxt.sh" +[[ "$SELECTED_APPS" == *"librewolf"* ]] && run_module "LibreWolf" "$APPS/librewolf.sh" +[[ "$SELECTED_APPS" == *"min-browser"* ]] && run_module "Min Browser" "$APPS/min-browser.sh" +[[ "$SELECTED_APPS" == *"vscodium"* ]] && run_module "VSCodium" "$APPS/vscodium.sh" +[[ "$SELECTED_APPS" == *"zed-ide"* ]] && run_module "Zed IDE" "$APPS/zed.sh" +[[ "$SELECTED_APPS" == *"geany"* ]] && run_module "Geany" "$APPS/geany.sh" +[[ "$SELECTED_APPS" == *"codeblocks"* ]] && run_module "Code::Blocks" "$APPS/codeblocks.sh" +[[ "$SELECTED_APPS" == *"kate"* ]] && run_module "Kate" "$APPS/kate.sh" # ── Done ────────────────────────────────────────────────────────────────────── dialog --backtitle "$BACKTITLE" \