setup: expand apps list, fold nettools into core, fix hyprland packages

Apps (new individual scripts):
  wireshark, localsend, onlyoffice, vintagestory

core-packages.sh: add nmap mtr tcpdump net-tools iputils ipcalc
  (bind + traceroute were already present; wireshark is now optional)

hyprland.sh:
  - pinta moved from yay to pacman (available in extra)
  - localsend removed from mandatory yay install (now an optional app)

Deprecate nettools.sh — all its packages are now in core or split out.

tui-install.sh: apps checklist gains wireshark, localsend, onlyoffice,
  vintagestory; drops nettools; dialog sized for 12 items.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
main
The_miro 2026-05-11 15:46:30 +02:00
parent 17bfa0e884
commit bdc5b55c57
9 changed files with 69 additions and 41 deletions

View File

@ -21,7 +21,10 @@ esac
# bash ~/Dotfiles/setup/modules/optional-Modules/apps/vesktop.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/apps/spotify.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/apps/prismlauncher.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/apps/nettools.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/apps/vintagestory.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/apps/localsend.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/apps/onlyoffice.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/apps/wireshark.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/apps/k8s.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/python.sh
# bash ~/Dotfiles/setup/modules/optional-Modules/zfs.sh

View File

@ -24,7 +24,7 @@ sudo pacman -Syu --noconfirm --needed \
xorg-server xorg-xinit papirus-icon-theme \
cool-retro-term qalculate-gtk iwd dbus \
thunar tumbler thunar-archive-plugin thunar-shares-plugin thunar-volman \
hyprpicker pcmanfm-qt udisks2 ly \
hyprpicker pcmanfm-qt udisks2 ly pinta \
hyprpolkitagent pavucontrol playerctl wf-recorder sound-theme-freedesktop
# 3. Enable essential services
@ -39,7 +39,7 @@ echo "Installing AUR packages..."
rustup default stable
yay -Syu --answerdiff None --answerclean All --noconfirm \
hyprland-workspaces vicinae-bin bluetuith wvkbd kew iwmenu \
walker-bin ulauncher bzmenu pinta localsend udiskie \
walker-bin ulauncher bzmenu udiskie \
wofi-calc bri chamel
# 5. EWW bar selection and compilation

View File

@ -11,7 +11,8 @@ sudo pacman -Syu --noconfirm --needed \
man-db mc nano neovim networkmanager \
openssh pciutils pipewire podman podman-compose \
python python-pip qrencode ruby-pkg-config rust rustup \
smartmontools symlinks traceroute tree \
ipcalc iputils mtr net-tools nmap \
smartmontools symlinks tcpdump traceroute tree \
udisks2 udisks2-btrfs udiskie ufw usbutils \
vim vnstat wget wireplumber wireless_tools wpa_supplicant wprs \
yazi zip unzip zram-generator

View File

@ -0,0 +1,3 @@
#!/bin/bash
set -euo pipefail
yay -S --answerdiff None --answerclean All --noconfirm localsend

View File

@ -0,0 +1,3 @@
#!/bin/bash
set -euo pipefail
yay -S --answerdiff None --answerclean All --noconfirm onlyoffice-bin

View File

@ -0,0 +1,3 @@
#!/bin/bash
set -euo pipefail
yay -S --answerdiff None --answerclean All --noconfirm vintagestory

View File

@ -0,0 +1,3 @@
#!/bin/bash
set -euo pipefail
sudo pacman -S --noconfirm --needed wireshark-qt

View File

@ -94,15 +94,18 @@ count_steps() {
[[ "$c" == *"svc"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$c" == *"shell"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$c" == *"de"* && "$de" != "none" ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"steam"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"vesktop"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"spotify"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"prism"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"nettools"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"k8s"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"python"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"zfs"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"wprs"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"steam"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"vesktop"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"spotify"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"prism"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"vintagestory"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"localsend"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"onlyoffice"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"wireshark"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"k8s"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"python"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"zfs"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"wprs"* ]] && TOTAL=$(( TOTAL + 1 ))
}
# ── Preflight ─────────────────────────────────────────────────────────────────
@ -153,16 +156,19 @@ fi
# ── Apps selection ────────────────────────────────────────────────────────────
SELECTED_APPS=$(dialog --backtitle "$BACKTITLE" \
--title " Applications " \
--checklist "Optional applications — installed after base components:" 26 70 11 \
"steam" "Steam gaming platform" off \
"vesktop" "Vesktop Discord client + Vencord theme" off \
"spotify" "Spotify launcher + Spicetify theming" off \
"prism" "PrismLauncher Minecraft launcher (Flatpak)" off \
"nettools" "Network tools nmap · wireshark · mtr · bind" off \
"k8s" "Kubernetes tools kubectl · podman-desktop" off \
"python" "Python tools pyright · pipx · pynvim" off \
"zfs" "ZFS zfs-dkms kernel module" off \
"wprs" "WPRS wprs-git (AUR)" off \
--checklist "Optional applications — installed after base components:" 28 72 14 \
"steam" "Steam gaming platform" off \
"vesktop" "Vesktop Discord + Vencord theme" off \
"spotify" "Spotify launcher + Spicetify theming" off \
"prism" "PrismLauncher Minecraft launcher (Flatpak)" off \
"vintagestory" "Vintage Story survival game (AUR)" off \
"localsend" "LocalSend LAN file transfer (AUR)" off \
"onlyoffice" "OnlyOffice office suite (AUR)" off \
"wireshark" "Wireshark network packet analyser" off \
"k8s" "Kubernetes tools kubectl · podman-desktop" off \
"python" "Python tools pyright · pipx · pynvim" off \
"zfs" "ZFS zfs-dkms kernel module" off \
"wprs" "WPRS wprs-git (AUR)" off \
3>&1 1>&2 2>&3) || SELECTED_APPS=""
# ── Confirmation ──────────────────────────────────────────────────────────────
@ -175,15 +181,18 @@ SUMMARY=""
if [[ -n "$SELECTED_APPS" ]]; then
SUMMARY+="\n Applications:\n"
[[ "$SELECTED_APPS" == *"steam"* ]] && SUMMARY+=" ✦ Steam\n"
[[ "$SELECTED_APPS" == *"vesktop"* ]] && SUMMARY+=" ✦ Vesktop + Vencord theme\n"
[[ "$SELECTED_APPS" == *"spotify"* ]] && SUMMARY+=" ✦ Spotify + Spicetify\n"
[[ "$SELECTED_APPS" == *"prism"* ]] && SUMMARY+=" ✦ PrismLauncher\n"
[[ "$SELECTED_APPS" == *"nettools"* ]] && SUMMARY+=" ✦ Network tools\n"
[[ "$SELECTED_APPS" == *"k8s"* ]] && SUMMARY+=" ✦ Kubernetes tools\n"
[[ "$SELECTED_APPS" == *"python"* ]] && SUMMARY+=" ✦ Python tools\n"
[[ "$SELECTED_APPS" == *"zfs"* ]] && SUMMARY+=" ✦ ZFS\n"
[[ "$SELECTED_APPS" == *"wprs"* ]] && SUMMARY+=" ✦ WPRS\n"
[[ "$SELECTED_APPS" == *"steam"* ]] && SUMMARY+=" ✦ Steam\n"
[[ "$SELECTED_APPS" == *"vesktop"* ]] && SUMMARY+=" ✦ Vesktop + Vencord theme\n"
[[ "$SELECTED_APPS" == *"spotify"* ]] && SUMMARY+=" ✦ Spotify + Spicetify\n"
[[ "$SELECTED_APPS" == *"prism"* ]] && SUMMARY+=" ✦ PrismLauncher\n"
[[ "$SELECTED_APPS" == *"vintagestory"* ]] && SUMMARY+=" ✦ Vintage Story\n"
[[ "$SELECTED_APPS" == *"localsend"* ]] && SUMMARY+=" ✦ LocalSend\n"
[[ "$SELECTED_APPS" == *"onlyoffice"* ]] && SUMMARY+=" ✦ OnlyOffice\n"
[[ "$SELECTED_APPS" == *"wireshark"* ]] && SUMMARY+=" ✦ Wireshark\n"
[[ "$SELECTED_APPS" == *"k8s"* ]] && SUMMARY+=" ✦ Kubernetes tools\n"
[[ "$SELECTED_APPS" == *"python"* ]] && SUMMARY+=" ✦ Python tools\n"
[[ "$SELECTED_APPS" == *"zfs"* ]] && SUMMARY+=" ✦ ZFS\n"
[[ "$SELECTED_APPS" == *"wprs"* ]] && SUMMARY+=" ✦ WPRS\n"
fi
dialog --backtitle "$BACKTITLE" \
@ -207,15 +216,18 @@ if [[ "$COMPONENTS" == *"de"* && "$DE" != "none" ]]; then
fi
# ── Installation: applications ────────────────────────────────────────────────
[[ "$SELECTED_APPS" == *"steam"* ]] && run_module "Steam" "$APPS/steam.sh"
[[ "$SELECTED_APPS" == *"vesktop"* ]] && run_module "Vesktop" "$APPS/vesktop.sh"
[[ "$SELECTED_APPS" == *"spotify"* ]] && run_module "Spotify" "$APPS/spotify.sh"
[[ "$SELECTED_APPS" == *"prism"* ]] && run_module "PrismLauncher" "$APPS/prismlauncher.sh"
[[ "$SELECTED_APPS" == *"nettools"* ]] && run_module "Network Tools" "$APPS/nettools.sh"
[[ "$SELECTED_APPS" == *"k8s"* ]] && run_module "Kubernetes Tools" "$APPS/k8s.sh"
[[ "$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" == *"steam"* ]] && run_module "Steam" "$APPS/steam.sh"
[[ "$SELECTED_APPS" == *"vesktop"* ]] && run_module "Vesktop" "$APPS/vesktop.sh"
[[ "$SELECTED_APPS" == *"spotify"* ]] && run_module "Spotify" "$APPS/spotify.sh"
[[ "$SELECTED_APPS" == *"prism"* ]] && run_module "PrismLauncher" "$APPS/prismlauncher.sh"
[[ "$SELECTED_APPS" == *"vintagestory"* ]] && run_module "Vintage Story" "$APPS/vintagestory.sh"
[[ "$SELECTED_APPS" == *"localsend"* ]] && run_module "LocalSend" "$APPS/localsend.sh"
[[ "$SELECTED_APPS" == *"onlyoffice"* ]] && run_module "OnlyOffice" "$APPS/onlyoffice.sh"
[[ "$SELECTED_APPS" == *"wireshark"* ]] && run_module "Wireshark" "$APPS/wireshark.sh"
[[ "$SELECTED_APPS" == *"k8s"* ]] && run_module "Kubernetes Tools" "$APPS/k8s.sh"
[[ "$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"
# ── Done ──────────────────────────────────────────────────────────────────────
dialog --backtitle "$BACKTITLE" \