diff --git a/v2/arch-full.sh b/v2/arch-full.sh
deleted file mode 100755
index a97d01f..0000000
--- a/v2/arch-full.sh
+++ /dev/null
@@ -1,162 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE:-}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo pacman -Sy; sudo pacman -S --noconfirm --needed "$@"; }
-is_package_installed() { pacman -Qi "$@" &>/dev/null; }
-remove_packages() {
- local packages_to_remove=()
-
- # 1. Identify which packages are actually installed
- for pkg in "$@"; do
- if is_package_installed "$pkg"; then
- packages_to_remove+=("$pkg")
- else
- say_gray "Package '$pkg' not found. Skipping removal."
- fi
- done
-
- # 2. Only run pacman if there are packages to remove
- if [ ${#packages_to_remove[@]} -gt 0 ]; then
- say_cyan "Removing packages: ${packages_to_remove[*]}"
- sudo pacman -Rs --noconfirm "${packages_to_remove[@]}" || true
- else
- say_gray "No packages to remove from the list."
- fi
-}
-
-say_yellow "Starting full setup..."
-
-# Run minimal first
-bash "$SCRIPT_DIR/arch-minimal.sh"
-
-# Add extra packages
-install_packages arandr catfish galculator networkmanager network-manager-applet networkmanager-openvpn numlockx pipewire pipewire-alsa pipewire-pulse wireplumber pavucontrol playerctl gparted xfce4-indicator-plugin xfce4-pulseaudio-plugin xfce4-clipman-plugin
-
-# Ensure NetworkManager manages all interfaces
-say_yellow "Ensuring NetworkManager service is enabled and running..."
-sudo systemctl enable --now NetworkManager
-
-say_yellow "Setting NetworkManager to globally manage all devices..."
-sudo tee /etc/NetworkManager/conf.d/10-globally-managed-devices.conf > /dev/null <<'EOF'
-[ifupdown]
-managed=true
-
-[keyfile]
-unmanaged-devices=
-EOF
-
-say_yellow "Restarting NetworkManager service..."
-sudo systemctl restart NetworkManager
-
-# Enable pipewire
-systemctl --user enable pipewire pipewire-pulse wireplumber
-
-########################################
-# XFCE-specific configuration
-########################################
-if [[ "${DE}" == "xfce" || "${DDE}" == "xfce" ]]; then
- echo
- say_cyan "Applying XFCE defaults: fonts, browser, and terminal..."
-
- # Ensure xfconf-query exists (for XFCE settings)
- if ! command -v xfconf-query >/dev/null 2>&1; then
- say_yellow "xfconf-query not found — installing xfce4-settings..."
- install_packages xfce4-settings
- fi
-
- # set fonts
- # Wait for xfconf to be available (only needed if running inside the same session)
- if command -v xfconf-query >/dev/null 2>&1; then
- # Interface font (UI)
- xfconf-query -c xsettings -p /Gtk/FontName -s "RobotoMono Nerd Font Regular 10"
- # Monospace font (terminals, editors)
- xfconf-query -c xsettings -p /Gtk/MonospaceFontName -s "RobotoMono Nerd Font Mono Regular 10"
-
- say_green "XFCE fonts updated successfully!"
- else
- say_yellow "xfconf-query not found — skipping XFCE font config (will apply at first login)."
- fi
-
- # Set browser default
- if command -v chromium >/dev/null 2>&1; then
- mkdir -p "$HOME/.config/xfce4/"
- HELPERS_FILE="$HOME/.config/xfce4/helpers.rc"
-
- # Ensure the helpers file exists
- touch "$HELPERS_FILE"
-
- # Update or insert browser entry
- if grep -q '^WebBrowser=' "$HELPERS_FILE"; then
- sed -i 's|^WebBrowser=.*|WebBrowser=chromium|' "$HELPERS_FILE"
- else
- echo "WebBrowser=chromium" >> "$HELPERS_FILE"
- fi
- say_green "XFCE defeault browser set to chromium!"
- fi
-
- # Set default terminal
- if command -v alacritty >/dev/null 2>&1; then
- mkdir -p "$HOME/.config/xfce4/"
- HELPERS_FILE="$HOME/.config/xfce4/helpers.rc"
-
- touch "$HELPERS_FILE"
-
- # TerminalEmulator entry
- if grep -q '^TerminalEmulator=' "$HELPERS_FILE"; then
- sed -i 's|^TerminalEmulator=.*|TerminalEmulator=alacritty|' "$HELPERS_FILE"
- else
- echo "TerminalEmulator=alacritty" >> "$HELPERS_FILE"
- fi
-
- # TerminalEmulatorCommand entry
- if grep -q '^TerminalEmulatorCommand=' "$HELPERS_FILE"; then
- sed -i 's|^TerminalEmulatorCommand=.*|TerminalEmulatorCommand=alacritty|' "$HELPERS_FILE"
- else
- echo "TerminalEmulatorCommand=alacritty" >> "$HELPERS_FILE"
- fi
- say_green "XFCE defeault terminal set to alacritty!"
- fi
-fi
-
-# replace bashrc
-say_yellow "making backup of bashrc"
-sudo cp -v /etc/skel/.bashrc /etc/skel/.bashrc.starburst
-
-# End of script
-say_green "Full setup completed."
diff --git a/v2/arch-hyprland.sh b/v2/arch-hyprland.sh
deleted file mode 100755
index c377dac..0000000
--- a/v2/arch-hyprland.sh
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo pacman -Sy; sudo pacman -S --noconfirm --needed "$@"; }
-is_package_installed() { pacman -Qi "$@" &>/dev/null; }
-remove_packages() {
- local packages_to_remove=()
-
- # 1. Identify which packages are actually installed
- for pkg in "$@"; do
- if is_package_installed "$pkg"; then
- packages_to_remove+=("$pkg")
- else
- say_gray "Package '$pkg' not found. Skipping removal."
- fi
- done
-
- # 2. Only run pacman if there are packages to remove
- if [ ${#packages_to_remove[@]} -gt 0 ]; then
- say_cyan "Removing packages: ${packages_to_remove[*]}"
- sudo pacman -Rs --noconfirm "${packages_to_remove[@]}" || true
- else
- say_gray "No packages to remove from the list."
- fi
-}
-
-detect_de() {
- if command -v xfce4-session >/dev/null 2>&1; then
- echo "xfce"
- else
- echo ""
- fi
-}
-
-detect_display_manager() {
- if [ -f /etc/X11/default-display-manager ]; then
- basename "$(cat /etc/X11/default-display-manager)"
- else
- echo ""
- fi
-}
-
-enable_graphical_target() {
- sudo systemctl enable sddm
- sudo systemctl set-default graphical.target
-}
-
-#########################
-# Start installation
-##########################
-say_yellow "Starting hyprland setup..."
-
-CURRENT_DE="$(detect_de)"
-CURRENT_DM="$(detect_display_manager)"
-
-if [[ -z "$CURRENT_DE" ]]; then
- say_cyan -e "No Desktop Environment detected. Installing Hyprland (light setup with SDDM)..."
-
- install_packages sddm hyprland dunst grim kitty polkit-kde-agent qt5-wayland qt6-wayland slurp uwsm wofi xdg-desktop-portal-hyprland
- enable_graphical_target
-
- say_green -e "Hyprland with SDDM installed successfully. You can reboot now to start Hyprland."
-else
- say_cyan -e "Detected existing Desktop Environment: $CURRENT_DE"
-
- if [[ "$CURRENT_DM" == "lightdm" ]]; then
- say_yellow -e "LightDM is currently active. Replacing with SDDM..."
-
- sudo systemctl disable lightdm
- sudo apt purge -y lightdm lightdm-gtk-greeter
-
- install_packages sddm
- enable_graphical_target
-
- say_green -e "LightDM removed and replaced with SDDM."
- else
- say_cyan -e "Current display manager: ${CURRENT_DM:-none}. Leaving unchanged."
- fi
-fi
-
-# End of script
-say_green -e "Hyprland / SDDM setup completed."
\ No newline at end of file
diff --git a/v2/arch-minimal.sh b/v2/arch-minimal.sh
deleted file mode 100755
index 1840b68..0000000
--- a/v2/arch-minimal.sh
+++ /dev/null
@@ -1,171 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-arch}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo pacman -Sy; sudo pacman -S --noconfirm --needed "$@"; }
-is_package_installed() { pacman -Qi "$@" &>/dev/null; }
-remove_packages() {
- local packages_to_remove=()
-
- # 1. Identify which packages are actually installed
- for pkg in "$@"; do
- if is_package_installed "$pkg"; then
- packages_to_remove+=("$pkg")
- else
- say_gray "Package '$pkg' not found. Skipping removal."
- fi
- done
-
- # 2. Only run pacman if there are packages to remove
- if [ ${#packages_to_remove[@]} -gt 0 ]; then
- say_cyan "Removing packages: ${packages_to_remove[*]}"
- sudo pacman -Rs --noconfirm "${packages_to_remove[@]}" || true
- else
- say_gray "No packages to remove from the list."
- fi
-}
-
-say_yellow "Starting minimal setup..."
-
-# Create user directories
-mkdir -p "$HOME"/{.bin,.fonts,.icons,.themes,DATA} "$HOME/.local/share/"{icons,themes,applications} "$HOME/.config/"{autostart,gtk-{3.0,4.0},variety,fish,neofetch}
-
-# Removing unwanted drivers
-say_yellow "GET RID OF BROADCOM AND REALTEK DRIVERS"
-remove_packages broadcom-wl-dkms r8168-dkms rtl8821cu-morrownr-dkms-git
-
-# Removing unwanted kernels
-say_yellow "KEEP LINUX KERNEL GET RID OF THE OTHER KERNELS"
-# Ensure at least one kernel remains
-if pacman -Qi linux &> /dev/null && pacman -Qi linux-headers &> /dev/null; then
-
- # Define all the kernels and their headers you want to remove
- KERNELS_TO_REMOVE=(
- linux-lts-headers linux-lts
- linux-zen-headers linux-zen
- linux-hardened-headers linux-hardened
- linux-rt-headers linux-rt
- linux-rt-lts-headers linux-rt-lts
- linux-cachyos-headers linux-cachyos
- linux-xanmod-headers linux-xanmod
- )
- remove_package() {
- local package=$1
- # Check if the package is installed
- if pacman -Q $package &> /dev/null; then
- say_yellow "$package is installed. Removing..."
- sudo pacman -Rns --noconfirm $package
- else
- say_yellow "$package is not installed."
- fi
- }
-
- # Loop over the array and remove each kernel package
- for kernel in "${KERNELS_TO_REMOVE[@]}"; do
- remove_package "$kernel"
- done
-
-else
- echo "Cannot proceed: At least one kernel must remain installed."
-fi
-
-# Removing unwanted video drivers
-remove_packages xf86-video-amdgpu xf86-video-ati xf86-video-fbdev xf86-video-nouveau xf86-video-openchrome xf86-video-vesa
-
-# Install essential tools
-install_packages wget curl nano fastfetch lolcat bash-completion starship alacritty hwinfo lshw reflector expac betterlockscreen pamac-aur avahi man-db tree xdg-user-dirs rsync time bat unzip chromium
-if [ ! -f /usr/bin/duf ]; then
- install_packages duf
-fi
-install_packages man-db man-pages pacmanlogviewer paru-git yay-git thunar thunar-archive-plugin thunar-volman tree xdg-user-dirs polkit-gnome rate-mirrors rsync time bat ntp nss-mdns
-
-#disk-tools
-install_packages baobab gvfs-smb hddtemp squashfs-tools
-
-#archive-managers
-install_packages zip gzip p7zip unace unrar unzip file-roller peazip
-
-#theming
-install_packages bibata-cursor-theme feh font-manager
-
-# All the software below will be installed on all desktops
-install_packages archlinux-tools dconf-editor devtools hardinfo2 hw-probe logrotate lsb-release powertop inxi acpi plocate most namcap nm-connection-editor python-pylint python-pywal
-
-# Optionally handle fonts
-FONT_DIR="$HOME/.local/share/fonts"
-FONT_NAME="RobotoMonoNerdFont" # Changed name to reflect the installed files
-FONT_ZIP="/tmp/RobotoMono.zip" # Use original ZIP name for download
-DOWNLOAD_NAME="RobotoMono"
-if ! compgen -G "$FONT_DIR/${FONT_NAME}*.ttf" > /dev/null; then
- say_yellow "Installing ${DOWNLOAD_NAME} Nerd Font..."
- mkdir -p "$FONT_DIR"
- curl -L "https://github.com/ryanoasis/nerd-fonts/releases/latest/download/${DOWNLOAD_NAME}.zip" -o "$FONT_ZIP"
- unzip -oq "$FONT_ZIP" -d "$FONT_DIR"
- fc-cache -fv
- rm "$FONT_ZIP"
- say_green "${DOWNLOAD_NAME} installed."
-else
- say_yellow "${DOWNLOAD_NAME} Nerd Font is already installed in $FONT_DIR. Skipping installation."
-fi
-
-# allow Chromium login with Google Account
- # Define the configuration file path
- CONF="$HOME/.config/chromium-flags.conf"
- # Check if the file exists, or create it if it doesn't
- if [[ ! -f "$CONF" ]]; then
- # Create the file if it doesn't exist
- touch "$CONF"
- echo "Created new Chromium flags file: $CONF"
- fi
- # Add the OAuth 2.0 Client ID if it's not already there
- # -q: quiet, -x: match whole line, -F: literal string match
- grep -qxF -- "--oauth2-client-id=77185425430.apps.googleusercontent.com" "$CONF" || \
- echo "--oauth2-client-id=77185425430.apps.googleusercontent.com" >>"$CONF"
-
- # Add the OAuth 2.0 Client Secret if it's not already there
- grep -qxF -- "--oauth2-client-secret=OTJgUOQcT7lO7GsGZq2G4IlT" "$CONF" || \
- echo "--oauth2-client-secret=OTJgUOQcT7lO7GsGZq2G4IlT" >>"$CONF"
-
- say_green "Chromium flags for Google Account login have been configured."
-
-# Enable basic services
-#sudo systemctl enable chronyd.service
-sudo systemctl enable fstrim.timer
-
-# End of script
-say_green "Minimal setup completed."
\ No newline at end of file
diff --git a/v2/arch-plasma.sh b/v2/arch-plasma.sh
deleted file mode 100755
index a5899d3..0000000
--- a/v2/arch-plasma.sh
+++ /dev/null
@@ -1,139 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo pacman -S --noconfirm --needed "$@"; }
-is_package_installed() { pacman -Qi "$@" &>/dev/null; }
-remove_packages() {
- local packages_to_remove=()
-
- # 1. Identify which packages are actually installed
- for pkg in "$@"; do
- if is_package_installed "$pkg"; then
- packages_to_remove+=("$pkg")
- else
- say_gray "Package '$pkg' not found. Skipping removal."
- fi
- done
-
- # 2. Only run pacman if there are packages to remove
- if [ ${#packages_to_remove[@]} -gt 0 ]; then
- say_cyan "Removing packages: ${packages_to_remove[*]}"
- sudo pacman -Rs --noconfirm "${packages_to_remove[@]}" || true
- else
- say_gray "No packages to remove from the list."
- fi
-}
-
-detect_de() {
- if command -v plasmashell >/dev/null 2>&1; then
- echo "kde"
- else
- echo ""
- fi
-}
-
-detect_display_manager() {
- if [ -f /etc/X11/default-display-manager ]; then
- basename "$(cat /etc/X11/default-display-manager)"
- else
- echo ""
- fi
-}
-
-enable_graphical_target() {
- sudo systemctl enable sddm
- sudo systemctl set-default graphical.target
-}
-
-##########################
-# Start installation
-##########################
-say_yellow -e "Starting KDE Plasma installation..."
-
-CURRENT_DE="$(detect_de)"
-CURRENT_DM="$(detect_display_manager)"
-
-if [[ -z "$CURRENT_DE" || "$CURRENT_DE" != "kde" ]]; then
- say_cyan -e "KDE Plasma not detected. Installing KDE Plasma (light setup with SDDM)..."
-
- install_packages sddm plasma
- enable_graphical_target
-
- say_green -e "KDE Plasma with SDDM installed successfully. You can reboot now to start XFCE."
-else
- say_cyan -e "Detected existing Desktop Environment: $CURRENT_DE. Checking Display Manager..."
-
- # Check and replace other Display Managers if they conflict with the preferred SDDM setup
- if [[ "$CURRENT_DM" != "sddm" ]]; then
- say_yellow -e "Display manager **$CURRENT_DM** is currently active. Replacing with **SDDM**, the default for KDE Plasma..."
-
- # Attempt to disable the old DM if detected
- if [ ! -z "$CURRENT_DM" ]; then
- sudo systemctl disable "$CURRENT_DM" || true
- fi
-
- # Remove common alternative DMs if they exist to prevent conflicts
- if is_package_installed lightdm; then
- say_gray -e "Removing lightdm..."
- remove_packages lightdm lightdm-gtk-greeter || true
- fi
- if is_package_installed gdm; then
- say_gray -e "Removing gdm..."
- remove_packages gdm || true
- fi
-
- # Ensure SDDM is installed and enabled
- install_packages sddm gst-libav qt5-graphicaleffects qt5-quickcontrols qt5-quickcontrols2
- enable_graphical_target
-
- say_green -e "Old display manager removed and replaced with SDDM."
- else
- say_cyan -e "Current display manager is already **SDDM**. Leaving unchanged."
- fi
-fi
-
-
-###### TODO
-### from paru install pamac-tray-icon-plasma
-### let autostart pamac-tray-plasma
-
-
-# End of script
-say_green -e "KDE Plasma / SDDM setup completed."
-
diff --git a/v2/arch-workstation.sh b/v2/arch-workstation.sh
deleted file mode 100755
index 669260a..0000000
--- a/v2/arch-workstation.sh
+++ /dev/null
@@ -1,101 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE:-}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo pacman -Sy; sudo pacman -S --noconfirm --needed "$@"; }
-is_package_installed() { pacman -Qi "$@" &>/dev/null; }
-remove_packages() {
- local packages_to_remove=()
-
- # 1. Identify which packages are actually installed
- for pkg in "$@"; do
- if is_package_installed "$pkg"; then
- packages_to_remove+=("$pkg")
- else
- say_gray "Package '$pkg' not found. Skipping removal."
- fi
- done
-
- # 2. Only run pacman if there are packages to remove
- if [ ${#packages_to_remove[@]} -gt 0 ]; then
- say_cyan "Removing packages: ${packages_to_remove[*]}"
- sudo pacman -Rs --noconfirm "${packages_to_remove[@]}" || true
- else
- say_gray "No packages to remove from the list."
- fi
-}
-
-say_yellow "Starting Workstation setup..."
-
-# Run full first
-bash "$SCRIPT_DIR/arch-full.sh"
-
-# Add extra packages
-install_packages git libreoffice-fresh
-# gitahead-git
-
-# editors
-install_packages vscodium sublime-text-4 konsole
-
-#internet
-install_packages brave-bin insync
-# google-chrome discord firefox
-
-#theming
-# variety
-
-#media
-install_packages flameshot-git mpv-full
-# vlc gimp inkscape spotify lollypop
-
-#shells
-install_packages zsh zsh-completions zsh-syntax-highlighting oh-my-zsh-git
-# fish
-
-#system-tools
-install_packages base-devel
-
-#tools
-install_packages wttr system-config-printer ripgrep meld btop htop hwinfo lshw
-
-# End of script
-say_green "Workstation setup completed."
-
-###### TODO
-### autostart flameshot tray icon
-### autostart insync tray icon
diff --git a/v2/arch-xfce.sh b/v2/arch-xfce.sh
deleted file mode 100755
index fc5096d..0000000
--- a/v2/arch-xfce.sh
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo pacman -S --noconfirm --needed "$@"; }
-is_package_installed() { pacman -Qi "$@" &>/dev/null; }
-remove_packages() {
- local packages_to_remove=()
-
- # 1. Identify which packages are actually installed
- for pkg in "$@"; do
- if is_package_installed "$pkg"; then
- packages_to_remove+=("$pkg")
- else
- say_gray "Package '$pkg' not found. Skipping removal."
- fi
- done
-
- # 2. Only run pacman if there are packages to remove
- if [ ${#packages_to_remove[@]} -gt 0 ]; then
- say_cyan "Removing packages: ${packages_to_remove[*]}"
- sudo pacman -Rs --noconfirm "${packages_to_remove[@]}" || true
- else
- say_gray "No packages to remove from the list."
- fi
-}
-
-detect_de() {
- if command -v xfce4-session >/dev/null 2>&1; then
- echo "xfce"
- else
- echo ""
- fi
-}
-
-detect_display_manager() {
- if [ -f /etc/X11/default-display-manager ]; then
- basename "$(cat /etc/X11/default-display-manager)"
- else
- echo ""
- fi
-}
-
-enable_graphical_target() {
- sudo systemctl enable sddm
- sudo systemctl set-default graphical.target
-}
-
-##########################
-# Start installation
-##########################
-say_yellow -e "Starting XFCE installation..."
-
-CURRENT_DE="$(detect_de)"
-CURRENT_DM="$(detect_display_manager)"
-
-if [[ -z "$CURRENT_DE" || "$CURRENT_DE" != "xfce" ]]; then
- say_cyan -e "XFCE4 not detected. Installing XFCE (light setup with SDDM)..."
-
- install_packages sddm xfce4 xfce4-goodies
- enable_graphical_target
-
- say_green -e "XFCE with SDDM installed successfully. You can reboot now to start XFCE."
-else
- say_cyan -e "Detected existing Desktop Environment: $CURRENT_DE. Checking Display Manager..."
-
- # Check and replace other Display Managers if they conflict with the preferred SDDM setup
- if [[ "$CURRENT_DM" != "sddm" ]]; then
- say_yellow -e "Display manager **$CURRENT_DM** is currently active. Replacing with **SDDM**, the default for KDE Plasma..."
-
- # Attempt to disable the old DM if detected
- if [ ! -z "$CURRENT_DM" ]; then
- sudo systemctl disable "$CURRENT_DM" || true
- fi
-
- # Remove common alternative DMs if they exist to prevent conflicts
- if is_package_installed lightdm; then
- say_gray -e "Removing lightdm..."
- remove_packages lightdm lightdm-gtk-greeter || true
- fi
- if is_package_installed gdm; then
- say_gray -e "Removing gdm..."
- remove_packages gdm || true
- fi
-
- # Ensure SDDM is installed and enabled
- install_packages sddm
- enable_graphical_target
-
- say_green -e "Old display manager removed and replaced with SDDM."
- else
- say_cyan -e "Current display manager is already **SDDM**. Leaving unchanged."
- fi
-fi
-
-# End of script
-say_green -e "XFCE / SDDM setup completed."
-
diff --git a/v2/arch.sh b/v2/arch.sh
deleted file mode 100755
index fc179be..0000000
--- a/v2/arch.sh
+++ /dev/null
@@ -1,191 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-echo
-say_cyan "Starting Debian setup..."
-echo
-say_gray "DE: $DE, TWM: $TWM, Install Level: $INSTALL_LEVEL"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo pacman -S --noconfirm --needed "$@"; }
-is_package_installed() { pacman -Qi "$@" &>/dev/null; }
-remove_packages() {
- local packages_to_remove=()
-
- # 1. Identify which packages are actually installed
- for pkg in "$@"; do
- if is_package_installed "$pkg"; then
- packages_to_remove+=("$pkg")
- else
- say_gray "Package '$pkg' not found. Skipping removal."
- fi
- done
-
- # 2. Only run pacman if there are packages to remove
- if [ ${#packages_to_remove[@]} -gt 0 ]; then
- say_cyan "Removing packages: ${packages_to_remove[*]}"
- sudo pacman -Rs --noconfirm "${packages_to_remove[@]}" || true
- else
- say_gray "No packages to remove from the list."
- fi
-}
-
-##########################
-# 0. Ensure base is ready for installation
-##########################
-installed_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-pkg_dir="packages"
-
-if [[ ! -d "$pkg_dir" ]]; then
- say_red "Directory not found: $pkg_dir"
- exit 1
-fi
-
-if ! command -v curl >/dev/null 2>&1; then
- say_yellow "curl is not installed. Installing..."
- sudo pacman -Sy
- install_packages curl
-fi
-
-# Install all local packages using pacman
-find "$pkg_dir" -maxdepth 1 -name '*.pkg.tar.zst' -print0 | sudo xargs -0 pacman -U --noconfirm
-
-##########################
-# 1. Add repositories if missing and update system
-##########################
-say_yellow "Checking pacman.conf and sources..."
-sudo cp /etc/pacman.conf /etc/pacman.conf.bak.$(date +%s)
-sudo cp -v "$installed_dir/config-files/pacman.conf" /etc/pacman.conf
-
-# Update the system
-say_gray "Updating the system - sudo pacman -Syyu"
-echo
-sudo pacman -Syyu --noconfirm
-
-##########################
-# 2. Fix missing console font
-##########################
-say_yellow "Fix missing console font"
-
-if grep -q FONT= /etc/vconsole.conf; then
- say_green "Font is already set in /etc/vconsole.conf"
-else
- say_green "Setting console font in /etc/vconsole.conf"
- echo 'FONT=gr737c-8x14' | sudo tee -a /etc/vconsole.conf
-fi
-
-##########################
-# 3. Detected OS / DE / TWM info
-##########################
-say_yellow "Detected OS / Desktop Environment / Tiling Window Manager"
-echo
-say_gray "Installing OS-specific packages..."
-say_gray "Selected DE: $DE"
-say_gray "Selected TWM: $TWM"
-say_gray "Installation Level: $INSTALL_LEVEL"
-
-##########################
-# 4. Desktop Environment installation
-##########################
-case "$DE" in
- xfce|plasma|gnome)
- say_yellow "Preparing to install $DE..."
- SCRIPT_NAME="$SCRIPT_DIR/${OS}-${DE}.sh"
- if [[ -f "$SCRIPT_NAME" ]]; then
- say_cyan "Running $SCRIPT_NAME..."
- bash "$SCRIPT_NAME"
- else
- say_red "Error: $SCRIPT_NAME not found!"
- exit 1
- fi
- ;;
- none)
- say_gray "No Desktop Environment selected, skipping DE installation."
- ;;
-esac
-
-##########################
-# 5. Tiling Window Manager installation
-##########################
-case "$TWM" in
- chadwm|hyprland)
- say_yellow "Installing $TWM..."
- SCRIPT_NAME="$SCRIPT_DIR/${OS}-${TWM}.sh"
- if [[ -f "$SCRIPT_NAME" ]]; then
- say_cyan "Running $SCRIPT_NAME..."
- bash "$SCRIPT_NAME"
- else
- say_red "Error: $SCRIPT_NAME not found!"
- exit 1
- fi
- ;;
- none)
- say_gray "No tiling window manager selected."
- ;;
-esac
-
-##########################
-# 6. Installation level handling
-##########################
-case "$INSTALL_LEVEL" in
- minimal|full|workstation|server)
- say_cyan "Installation level: $INSTALL_LEVEL"
- SCRIPT_NAME="$SCRIPT_DIR/${OS}-${INSTALL_LEVEL}.sh"
- if [[ -f "$SCRIPT_NAME" ]]; then
- say_cyan "Running $SCRIPT_NAME..."
- bash "$SCRIPT_NAME"
- else
- say_red "Error: $SCRIPT_NAME not found!"
- exit 1
- fi
- ;;
-esac
-
-say_green "Arch setup complete."
-say_red "The installation has finished. A reboot is recommended before continuing."
-read -rp "Reboot now? [y/N]: " reboot_choice
-case "${reboot_choice,,}" in
- y|yes)
- say_red "Rebooting now."
- sudo reboot
- ;;
- *)
- say_yellow "Skipping reboot. Make sure to reboot manually before continuing upgrades."
- exit 0
- ;;
-esac
\ No newline at end of file
diff --git a/v2/config-files/debian/.config/test.txt b/v2/config-files/debian/.config/test.txt
deleted file mode 100644
index 6cda19a..0000000
--- a/v2/config-files/debian/.config/test.txt
+++ /dev/null
@@ -1 +0,0 @@
-TEST-FILE
\ No newline at end of file
diff --git a/v2/config-files/debian/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml b/v2/config-files/debian/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
deleted file mode 100644
index 1bb5063..0000000
--- a/v2/config-files/debian/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/v2/config-files/pacman.conf b/v2/config-files/pacman.conf
deleted file mode 100644
index d9e6046..0000000
--- a/v2/config-files/pacman.conf
+++ /dev/null
@@ -1,113 +0,0 @@
-# /etc/pacman.conf
-#
-# See the pacman.conf(5) manpage for option and repository directives
-
-#
-# GENERAL OPTIONS
-#
-[options]
-# The following paths are commented out with their default values listed.
-# If you wish to use different paths, uncomment and update the paths.
-#RootDir = /
-#DBPath = /var/lib/pacman/
-#CacheDir = /var/cache/pacman/pkg/
-#LogFile = /var/log/pacman.log
-#GPGDir = /etc/pacman.d/gnupg/
-#HookDir = /etc/pacman.d/hooks/
-HoldPkg = pacman glibc
-#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
-#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
-#CleanMethod = KeepInstalled
-Architecture = auto
-
-# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
-#IgnorePkg =
-#IgnoreGroup =
-
-#NoUpgrade =
-#NoExtract =
-
-# Misc options
-#UseSyslog
-Color
-#NoProgressBar
-CheckSpace
-VerbosePkgLists
-ParallelDownloads = 25
-#DownloadUser = alpm
-#DisableSandbox
-ILoveCandy
-DisableDownloadTimeout
-
-# By default, pacman accepts packages signed by keys that its local keyring
-# trusts (see pacman-key and its man page), as well as unsigned packages.
-SigLevel = Required DatabaseOptional
-LocalFileSigLevel = Optional
-#RemoteFileSigLevel = Required
-
-# NOTE: You must run `pacman-key --init` before first using pacman; the local
-# keyring can then be populated with the keys of all official Arch Linux
-# packagers with `pacman-key --populate archlinux`.
-
-#
-# REPOSITORIES
-# - can be defined here or included from another file
-# - pacman will search repositories in the order defined here
-# - local/custom mirrors can be added here or in separate files
-# - repositories listed first will take precedence when packages
-# have identical names, regardless of version number
-# - URLs will have $repo replaced by the name of the current repo
-# - URLs will have $arch replaced by the name of the architecture
-#
-# Repository entries are of the format:
-# [repo-name]
-# Server = ServerName
-# Include = IncludePath
-#
-# The header [repo-name] is crucial - it must be present and
-# uncommented to enable the repo.
-#
-
-# The testing repositories are disabled by default. To enable, uncomment the
-# repo name header and Include lines. You can add preferred servers immediately
-# after the header, and they will be used before the default mirrors.
-
-#[core-testing]
-#Include = /etc/pacman.d/mirrorlist
-
-[core]
-Include = /etc/pacman.d/mirrorlist
-
-#[extra-testing]
-#Include = /etc/pacman.d/mirrorlist
-
-[extra]
-Include = /etc/pacman.d/mirrorlist
-
-# If you want to run 32 bit applications on your x86_64 system,
-# enable the multilib repositories as required here.
-
-#[multilib-testing]
-#Include = /etc/pacman.d/mirrorlist
-
-[multilib]
-Include = /etc/pacman.d/mirrorlist
-
-# An example of a custom package repository. See the pacman manpage for
-# tips on creating your own repositories.
-#[custom]
-#SigLevel = Optional TrustAll
-#Server = file:///home/custompkgs
-
-[yuku_repo]
-SigLevel = Never
-Server = https://yurikuit.github.io/$repo/$arch
-
-[nemesis_repo]
-SigLevel = Never
-Server = https://erikdubois.github.io/$repo/$arch
-
-[chaotic-aur]
-SigLevel = Required DatabaseOptional
-Include = /etc/pacman.d/chaotic-mirrorlist
-
diff --git a/v2/debian-chadwm.sh b/v2/debian-chadwm.sh
deleted file mode 100755
index 218cd44..0000000
--- a/v2/debian-chadwm.sh
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE:-}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-echo
-say_cyan "Starting Debian Chadwm setup..."
-say_cyan "DE: $DE, TWM: $TWM, Install Level: $INSTALL_LEVEL"
-echo
-
-# End of script
-say_green "Chadwm setup completed."
-
-# Pause
-read -n 1 -s -r -p "Press any key to continue"
-echo
diff --git a/v2/debian-full.sh b/v2/debian-full.sh
deleted file mode 100755
index 4dcb7bd..0000000
--- a/v2/debian-full.sh
+++ /dev/null
@@ -1,202 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE:-}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo apt update; sudo apt install -y --no-install-recommends "$@"; }
-is_package_installed() { dpkg -s "$1" &>/dev/null; }
-
-say_yellow "Starting full setup..."
-
-# Run minimal first
-bash "$SCRIPT_DIR/debian-minimal.sh"
-
-# Add extra packages
-install_packages arandr catfish galculator network-manager network-manager-applet network-manager-openvpn numlockx pulseaudio pavucontrol playerctl gparted xfce4-indicator-plugin xfce4-pulseaudio-plugin xfce4-clipman-plugin
-
-# Ensure NetworkManager manages all interfaces
-echo "Setting NetworkManager to manage all interfaces..."
-sudo cp /etc/network/interfaces /etc/network/interfaces.bak.$(date +%s)
-sudo tee /etc/network/interfaces > /dev/null <<'EOF'
-auto lo
-iface lo inet loopback
-EOF
-sudo sed -i 's/^managed=.*/managed=true/' /etc/NetworkManager/NetworkManager.conf || \
- echo -e "[ifupdown]\nmanaged=true" | sudo tee -a /etc/NetworkManager/NetworkManager.conf
-sudo systemctl restart NetworkManager
-
-########################################
-# XFCE-specific configuration
-########################################
-if [[ "${DE}" == "xfce" || "${DDE}" == "xfce" ]]; then
- echo
- say_cyan "Applying XFCE defaults: fonts, browser, and terminal..."
-
- # Ensure xfconf-query exists (for XFCE settings)
- if ! command -v xfconf-query >/dev/null 2>&1; then
- say_yellow "xfconf-query not found — installing xfce4-settings..."
- install_packages xfce4-settings
- fi
-
- # set fonts
- # Wait for xfconf to be available (only needed if running inside the same session)
- if command -v xfconf-query >/dev/null 2>&1; then
- # Interface font (UI)
- xfconf-query -c xsettings -p /Gtk/FontName -s "RobotoMono Nerd Font Regular 10"
- # Monospace font (terminals, editors)
- xfconf-query -c xsettings -p /Gtk/MonospaceFontName -s "RobotoMono Nerd Font Mono Regular 10"
-
- say_green "XFCE fonts updated successfully!"
- else
- say_yellow "xfconf-query not found — skipping XFCE font config (will apply at first login)."
- fi
-
- # Set browser default
- if command -v chromium >/dev/null 2>&1; then
- mkdir -p "$HOME/.config/xfce4/"
- HELPERS_FILE="$HOME/.config/xfce4/helpers.rc"
-
- # Ensure the helpers file exists
- touch "$HELPERS_FILE"
-
- # Update or insert browser entry
- if grep -q '^WebBrowser=' "$HELPERS_FILE"; then
- sed -i 's|^WebBrowser=.*|WebBrowser=chromium|' "$HELPERS_FILE"
- else
- echo "WebBrowser=chromium" >> "$HELPERS_FILE"
- fi
- say_green "XFCE defeault browser set to chromium!"
- fi
-
- # Set default terminal
- if command -v alacritty >/dev/null 2>&1; then
- mkdir -p "$HOME/.config/xfce4/"
- HELPERS_FILE="$HOME/.config/xfce4/helpers.rc"
-
- touch "$HELPERS_FILE"
-
- # TerminalEmulator entry
- if grep -q '^TerminalEmulator=' "$HELPERS_FILE"; then
- sed -i 's|^TerminalEmulator=.*|TerminalEmulator=alacritty|' "$HELPERS_FILE"
- else
- echo "TerminalEmulator=alacritty" >> "$HELPERS_FILE"
- fi
-
- # TerminalEmulatorCommand entry
- if grep -q '^TerminalEmulatorCommand=' "$HELPERS_FILE"; then
- sed -i 's|^TerminalEmulatorCommand=.*|TerminalEmulatorCommand=alacritty|' "$HELPERS_FILE"
- else
- echo "TerminalEmulatorCommand=alacritty" >> "$HELPERS_FILE"
- fi
- say_green "XFCE defeault terminal set to alacritty!"
- fi
-fi
-
-###############################################
-# Copy settings to HOME
-###############################################
-SOURCE_DIR="$SCRIPT_DIR/config-files/debian"
-DEST_DIR="$HOME"
-AUTOSTART_DIR="$HOME/.config/autostart"
-AUTOSTART_FILE="$AUTOSTART_DIR/xfce-config-apply.desktop"
-HELPER_SCRIPT="$HOME/.local/bin/xfce-config-apply-helper.sh"
-
-mkdir -p "$AUTOSTART_DIR" "$HOME/.local/bin"
-
-# 1. Verify source directory exists
-if [ ! -d "$SOURCE_DIR" ]; then
- say_red "Error: Source directory '$SOURCE_DIR' not found. Aborting."
- exit 1
-fi
-
-# 2. Create helper script
-cat > "$HELPER_SCRIPT" <<'EOF'
-#!/usr/bin/env bash
-set -e
-
-RED="\033[0;31m"; GREEN="\033[0;32m"; YELLOW="\033[0;33m"; CYAN="\033[0;36m"; RESET="\033[0m"
-say() { printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-
-SOURCE_DIR="$HOME/config-files/debian"
-DEST_DIR="$HOME"
-
-if [ ! -d "\$SOURCE_DIR" ]; then
- say "Source directory \$SOURCE_DIR not found; skipping."
- exit 0
-fi
-
-say "Applying XFCE configuration early in session..."
-shopt -s dotglob
-cp -vrf "\$SOURCE_DIR"/* "\$DEST_DIR"/
-shopt -u dotglob
-
-say "Clearing session cache..."
-rm -rf "\$HOME/.cache/sessions/"
-
-say "Configuration applied. Removing one-time autostart entry..."
-rm -f "\$HOME/.config/autostart/xfce-config-apply.desktop"
-exit 0
-EOF
-
-chmod +x "$HELPER_SCRIPT"
-
-# 3. Create autostart entry (early-phase)
-cat > "$AUTOSTART_FILE" </dev/null; }
-detect_de() { command -v gnome-session >/dev/null 2>&1 && echo "gnome" || echo ""; }
-detect_display_manager() { [ -f /etc/X11/default-display-manager ] && basename "$(cat /etc/X11/default-display-manager)" || echo ""; }
-enable_graphical_target() { sudo systemctl enable sddm; sudo systemctl set-default graphical.target; }
-
-say_yellow "Starting Gnome installation..."
-
-CURRENT_DE="$(detect_de)"
-CURRENT_DM="$(detect_display_manager)"
-
-if [[ -z "$CURRENT_DE" ]]; then
- say_cyan "No DE detected. Installing Gnome with SDDM..."
- install_packages sddm gnome-shell gnome-terminal nautilus gnome-control-center gnome-system-monitor gnome-tweaks network-manager-gnome gnome-keyring gnome-session
- enable_graphical_target
- say_green "Gnome with SDDM installed successfully."
-else
- say_cyan "Detected existing DE: $CURRENT_DE"
- if [[ "$CURRENT_DM" == "lightdm" ]]; then
- say_yellow "Replacing LightDM with SDDM..."
- sudo systemctl disable lightdm
- sudo apt purge -y lightdm lightdm-gtk-greeter
- install_packages sddm
- enable_graphical_target
- say_green "LightDM replaced with SDDM."
- else
- say_cyan "Current DM: ${CURRENT_DM:-none}, leaving unchanged."
- fi
-fi
diff --git a/v2/debian-hyprland.sh b/v2/debian-hyprland.sh
deleted file mode 100755
index 8f4fa02..0000000
--- a/v2/debian-hyprland.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo apt update; sudo apt install -y --no-install-recommends "$@"; }
-is_package_installed() { dpkg -s "$1" &>/dev/null; }
-
-say_yellow "Starting hyprland setup..."
-
-# Optionally add hyprland-specific packages here
-#install_packages ????
-
-# End of script
-say_green "hyprland setup completed."
-
-# Pause
-read -n 1 -s -r -p "Press any key to continue"
-echo
diff --git a/v2/debian-minimal.sh b/v2/debian-minimal.sh
deleted file mode 100755
index 8cdf047..0000000
--- a/v2/debian-minimal.sh
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo apt update; sudo apt install -y --no-install-recommends "$@"; }
-is_package_installed() { dpkg -s "$1" &>/dev/null; }
-
-say_yellow "Starting minimal setup..."
-
-# Create user directories
-mkdir -p "$HOME"/{.bin,.fonts,.icons,.themes,DATA} "$HOME/.local/share/"{icons,themes,applications} "$HOME/.config/"{autostart,gtk-{3.0,4.0},variety,fish,neofetch}
-
-# Install essential tools
-install_packages wget curl nano fastfetch lolcat bash-completion starship alacritty hwinfo lshw man-db tree xdg-user-dirs rsync time bat chrony unzip chromium
-
-# Optionally handle fonts
-FONT_DIR="$HOME/.local/share/fonts"
-FONT_NAME="RobotoMonoNerdFont" # Changed name to reflect the installed files
-FONT_ZIP="/tmp/RobotoMono.zip" # Use original ZIP name for download
-DOWNLOAD_NAME="RobotoMono"
-if ! find "$FONT_DIR" -name "${FONT_NAME}*.ttf" -print -quit 2>/dev/null; then
- say_yellow "Installing ${DOWNLOAD_NAME} Nerd Font..."
- mkdir -p "$FONT_DIR"
- curl -L "https://github.com/ryanoasis/nerd-fonts/releases/latest/download/${DOWNLOAD_NAME}.zip" -o "$FONT_ZIP"
- unzip -oq "$FONT_ZIP" -d "$FONT_DIR"
- fc-cache -fv
- rm "$FONT_ZIP"
- say_green "${DOWNLOAD_NAME} installed."
-else
- say_yellow "${DOWNLOAD_NAME} Nerd Font is already installed in $FONT_DIR. Skipping installation."
-fi
-
-# Enable basic services
-sudo systemctl enable chrony
-sudo systemctl enable fstrim.timer
-
-# End of script
-say_green "Minimal setup completed."
\ No newline at end of file
diff --git a/v2/debian-plasma.sh b/v2/debian-plasma.sh
deleted file mode 100755
index 7d60ad4..0000000
--- a/v2/debian-plasma.sh
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo apt update; sudo apt install -y --no-install-recommends "$@"; }
-is_package_installed() { dpkg -s "$1" &>/dev/null; }
-detect_de() { command -v startplasma-x11 >/dev/null 2>&1 && echo "plasma" || echo ""; }
-detect_display_manager() { [ -f /etc/X11/default-display-manager ] && basename "$(cat /etc/X11/default-display-manager)" || echo ""; }
-enable_graphical_target() { sudo systemctl enable sddm; sudo systemctl set-default graphical.target; }
-
-##########################
-# Install Plasma
-##########################
-say_yellow "Starting KDE Plasma installation..."
-
-CURRENT_DE="$(detect_de)"
-CURRENT_DM="$(detect_display_manager)"
-
-if [[ -z "$CURRENT_DE" ]]; then
- say_cyan "No DE detected. Installing KDE Plasma with SDDM..."
- install_packages sddm plasma-desktop dolphin konsole kate plasma-nm plasma-workspace kde-config-gtk-style kde-config-sddm plasma-discover kscreen
- enable_graphical_target
- say_green "KDE Plasma with SDDM installed successfully."
-else
- say_cyan "Detected existing DE: $CURRENT_DE"
- if [[ "$CURRENT_DM" == "lightdm" ]]; then
- colosay_yellow "Replacing LightDM with SDDM..."
- sudo systemctl disable lightdm
- sudo apt purge -y lightdm lightdm-gtk-greeter
- install_packages sddm
- enable_graphical_target
- say_green "LightDM replaced with SDDM."
- else
- say_cyan "Current DM: ${CURRENT_DM:-none}, leaving unchanged."
- fi
-fi
-
-# Pause
-read -n 1 -s -r -p "Press any key to continue"
-echo
\ No newline at end of file
diff --git a/v2/debian-server.sh b/v2/debian-server.sh
deleted file mode 100755
index ba394d4..0000000
--- a/v2/debian-server.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo apt update; sudo apt install -y --no-install-recommends "$@"; }
-is_package_installed() { dpkg -s "$1" &>/dev/null; }
-
-say_yellow "Starting Server setup..."
-
-# Optionally add Server-specific packages here
-install_packages linux-headers-$(uname -r)
-
-# End of script
-say_green "Server setup completed."
-
-# Pause
-read -n 1 -s -r -p "Press any key to continue"
-echo
diff --git a/v2/debian-workstation.sh b/v2/debian-workstation.sh
deleted file mode 100755
index 65735c7..0000000
--- a/v2/debian-workstation.sh
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS:-debian}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() { sudo apt update; sudo apt install -y --no-install-recommends "$@"; }
-is_package_installed() { dpkg -s "$1" &>/dev/null; }
-
-say_yellow "Starting workstation setup..."
-
-# Run full setup first
-bash "$SCRIPT_DIR/debian-full.sh"
-
-# Optionally add workstation-specific packages here
-install_packages git vlc libreoffice
-
-# End of script
-say_green "Workstation setup completed."
-
-# Pause
-read -n 1 -s -r -p "Press any key to continue"
-echo
diff --git a/v2/debian-xfce.sh b/v2/debian-xfce.sh
deleted file mode 100755
index 5713917..0000000
--- a/v2/debian-xfce.sh
+++ /dev/null
@@ -1,105 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-##########################
-# Helper functions
-##########################
-install_packages() {
- local packages=("$@")
- sudo apt update
- sudo apt install -y --no-install-recommends "${packages[@]}"
-}
-
-is_package_installed() {
- dpkg -s "$1" &>/dev/null
-}
-
-detect_de() {
- if command -v xfce4-session >/dev/null 2>&1; then
- echo "xfce"
- else
- echo ""
- fi
-}
-
-detect_display_manager() {
- if [ -f /etc/X11/default-display-manager ]; then
- basename "$(cat /etc/X11/default-display-manager)"
- else
- echo ""
- fi
-}
-
-enable_graphical_target() {
- sudo systemctl enable sddm
- sudo systemctl set-default graphical.target
-}
-
-##########################
-# Start installation
-##########################
-say_yellow -e "Starting XFCE installation..."
-
-CURRENT_DE="$(detect_de)"
-CURRENT_DM="$(detect_display_manager)"
-
-if [[ -z "$CURRENT_DE" ]]; then
- say_cyan -e "No Desktop Environment detected. Installing XFCE (light setup with SDDM)..."
-
- install_packages sddm xfce4 xfce4-goodies
- enable_graphical_target
-
- say_green -e "XFCE with SDDM installed successfully. You can reboot now to start XFCE."
-else
- say_cyan -e "Detected existing Desktop Environment: $CURRENT_DE"
-
- if [[ "$CURRENT_DM" == "lightdm" ]]; then
- say_yellow -e "LightDM is currently active. Replacing with SDDM..."
-
- sudo systemctl disable lightdm
- sudo pacman -Rns lightdm lightdm-gtk-greeter
-
- install_packages sddm
- enable_graphical_target
-
- say_green -e "LightDM removed and replaced with SDDM."
- else
- say_cyan -e "Current display manager: ${CURRENT_DM:-none}. Leaving unchanged."
- fi
-fi
-
-# End of script
-say_green -e "XFCE / SDDM setup completed."
diff --git a/v2/debian.sh b/v2/debian.sh
deleted file mode 100755
index 8d335b5..0000000
--- a/v2/debian.sh
+++ /dev/null
@@ -1,242 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers (printf-safe, no tput)
-##########################
-RED="\033[0;31m"
-GREEN="\033[0;32m"
-YELLOW="\033[0;33m"
-CYAN="\033[0;36m"
-GRAY="\033[0;37m"
-BOLD="\033[1m"
-RESET="\033[0m"
-
-# Disable colors if output is not a terminal
-if [ ! -t 1 ]; then
- RED="" GREEN="" YELLOW="" CYAN="" GRAY="" BOLD="" RESET=""
-fi
-
-say_red() { printf "\n"; printf "%b%s%b\n" "$RED" "$*" "$RESET"; }
-say_green() { printf "\n"; printf "%b%s%b\n" "$GREEN" "$*" "$RESET"; }
-say_yellow() { printf "\n"; printf "%b%s%b\n" "$YELLOW" "$*" "$RESET"; }
-say_cyan() { printf "\n"; printf "%b%s%b\n" "$CYAN" "$*" "$RESET"; }
-say_gray() { printf "\n"; printf "%b%s%b\n" "$GRAY" "$*" "$RESET"; }
-say_bold() { printf "\n"; printf "%b%s%b\n" "$BOLD" "$*" "$RESET"; }
-
-##########################
-# Use exported variables from main detection script
-##########################
-OS="${DETECTED_OS}"
-DDE="${DETECTED_DE}"
-DE="${SELECTED_DE:-none}"
-TWM="${SELECTED_TWM:-none}"
-INSTALL_LEVEL="${INSTALL_LEVEL:-minimal}"
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-
-echo
-say_cyan "Starting Debian setup..."
-echo
-say_gray "DE: $DE, TWM: $TWM, Install Level: $INSTALL_LEVEL"
-
-##########################
-# 0. Ensure curl is installed
-##########################
-if ! command -v curl >/dev/null 2>&1; then
- say_yellow "curl is not installed. Installing..."
- sudo apt update
- sudo apt -y install curl
-fi
-
-##########################
-# 1. Add contrib and non-free if missing
-##########################
-say_yellow "Checking /etc/apt/sources.list for contrib/non-free..."
-sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak.$(date +%s)
-sudo sed -i -r 's/^(deb\s+\S+\s+\S+)\s+(main)$/\1 main contrib non-free/' /etc/apt/sources.list
-say_green "Updated sources.list to include contrib/non-free where needed."
-
-##########################
-# 1a. Update archive.debian.org if needed
-##########################
-CURRENT_CODENAME=$(grep -Po 'deb\s+\S+\s+\K\S+' /etc/apt/sources.list | grep -E '^(buster|bullseye|bookworm|trixie)$' | head -n1)
-DEBIAN_ORDER=(buster bullseye bookworm trixie)
-
-codename_index() {
- local code="$1"
- for i in "${!DEBIAN_ORDER[@]}"; do
- [[ "${DEBIAN_ORDER[$i]}" == "$code" ]] && echo "$i" && return
- done
- echo -1
-}
-
-CURRENT_INDEX=$(codename_index "$CURRENT_CODENAME")
-BULLSEYE_INDEX=$(codename_index "bullseye")
-
-if [[ "$CURRENT_INDEX" -ge "$BULLSEYE_INDEX" ]] && grep -q "archive.debian.org" /etc/apt/sources.list; then
- say_yellow "Found archive.debian.org in sources.list and system is Bullseye or newer, updating to deb.debian.org..."
- sudo sed -i -r 's|archive\.debian\.org|deb.debian.org|g' /etc/apt/sources.list
- say_green "Updated sources.list to use deb.debian.org."
-fi
-
-##########################
-# 2. Full update and upgrade
-##########################
-say_yellow "Updating package lists..."
-sudo apt update
-
-AUTOREMOVE_PENDING=$(apt -s autoremove | grep -E 'Remv' || true)
-if [[ -n "$AUTOREMOVE_PENDING" ]]; then
- say_yellow "Removing packages that are no longer required before upgrade..."
- sudo apt -y autoremove
-fi
-
-say_yellow "Upgrading installed packages..."
-sudo apt -y full-upgrade
-
-AUTOREMOVE_PENDING=$(apt -s autoremove | grep -E 'Remv' || true)
-if [[ -n "$AUTOREMOVE_PENDING" ]]; then
- say_yellow "Removing packages that are no longer required after upgrade..."
- sudo apt -y autoremove
-fi
-
-UPGRADE_PENDING=$(apt list --upgradable 2>/dev/null | grep -v Listing || true)
-if [[ -n "$UPGRADE_PENDING" ]]; then
- say_red "Some packages were upgraded. A reboot is recommended before continuing."
- read -rp "Reboot now? [y/N]: " reboot_choice
- case "${reboot_choice,,}" in
- y|yes)
- say_red "Rebooting now. After reboot, please restart this script to continue..."
- sudo reboot
- ;;
- *)
- say_yellow "Skipping reboot. Make sure to reboot manually before continuing upgrades."
- exit 0
- ;;
- esac
-else
- say_green "All packages are up to date. Continuing to Debian major version check..."
-fi
-
-##########################
-# 3. Stepwise major version upgrade
-##########################
-DEBIAN_SEQUENCE=(buster bullseye bookworm trixie)
-CURRENT_CODENAME=$(grep -Po 'deb\s+\S+\s+\K\S+' /etc/apt/sources.list | grep -E '^(buster|bullseye|bookworm|trixie)$' | head -n1)
-LATEST_CODENAME=${DEBIAN_SEQUENCE[-1]}
-
-say_cyan "Current codename: $CURRENT_CODENAME"
-say_cyan "Latest stable codename: $LATEST_CODENAME"
-
-while [[ "$CURRENT_CODENAME" != "$LATEST_CODENAME" ]]; do
- NEXT_CODENAME=""
- for i in "${!DEBIAN_SEQUENCE[@]}"; do
- if [[ "${DEBIAN_SEQUENCE[$i]}" == "$CURRENT_CODENAME" ]]; then
- NEXT_CODENAME="${DEBIAN_SEQUENCE[$((i+1))]}"
- break
- fi
- done
-
- if [[ -z "$NEXT_CODENAME" ]]; then
- say_red "Error: Cannot determine next codename after $CURRENT_CODENAME"
- exit 1
- fi
-
- say_yellow "Detected codename $CURRENT_CODENAME, next stable version: $NEXT_CODENAME"
- read -rp "Do you want to upgrade to $NEXT_CODENAME? [y/N]: " choice
- case "${choice,,}" in
- y|yes)
- say_yellow "Updating sources.list to $NEXT_CODENAME..."
- sudo sed -i -r "s/\b$CURRENT_CODENAME\b/$NEXT_CODENAME/g" /etc/apt/sources.list
-
- say_yellow "Updating packages..."
- sudo apt update
- sudo apt -y autoremove || true
- sudo apt -y full-upgrade
- sudo apt -y autoremove || true
-
- say_green "Upgrade to $NEXT_CODENAME complete. A reboot is recommended."
- read -rp "Press Enter to reboot..." _
- sudo reboot
- ;;
- *)
- say_yellow "Skipping upgrade to $NEXT_CODENAME. Continuing with current version."
- break
- ;;
- esac
-
- CURRENT_CODENAME=$(grep -Po 'deb\s+\S+\s+\K\S+' /etc/apt/sources.list | grep -E '^(buster|bullseye|bookworm|trixie)$' | head -n1)
-done
-
-say_green "Debian is now at codename $CURRENT_CODENAME. Continuing with DE/TWM installation..."
-
-##########################
-# 4. Desktop Environment installation
-##########################
-case "$DE" in
- xfce|plasma|gnome)
- say_yellow "Preparing to install $DE..."
- SCRIPT_NAME="$SCRIPT_DIR/${OS}-${DE}.sh"
- if [[ -f "$SCRIPT_NAME" ]]; then
- say_cyan "Running $SCRIPT_NAME..."
- bash "$SCRIPT_NAME"
- else
- say_red "Error: $SCRIPT_NAME not found!"
- exit 1
- fi
- ;;
- none)
- say_gray "No Desktop Environment selected, skipping DE installation."
- ;;
-esac
-
-##########################
-# 5. Tiling Window Manager installation
-##########################
-case "$TWM" in
- chadwm|hyprland)
- say_yellow "Installing $TWM..."
- SCRIPT_NAME="$SCRIPT_DIR/${OS}-${TWM}.sh"
- if [[ -f "$SCRIPT_NAME" ]]; then
- say_cyan "Running $SCRIPT_NAME..."
- bash "$SCRIPT_NAME"
- else
- say_red "Error: $SCRIPT_NAME not found!"
- exit 1
- fi
- ;;
- none)
- say_gray "No tiling window manager selected."
- ;;
-esac
-
-##########################
-# 6. Installation level handling
-##########################
-case "$INSTALL_LEVEL" in
- minimal|full|workstation|server)
- say_cyan "Installation level: $INSTALL_LEVEL"
- SCRIPT_NAME="$SCRIPT_DIR/${OS}-${INSTALL_LEVEL}.sh"
- if [[ -f "$SCRIPT_NAME" ]]; then
- say_cyan "Running $SCRIPT_NAME..."
- bash "$SCRIPT_NAME"
- else
- say_red "Error: $SCRIPT_NAME not found!"
- exit 1
- fi
- ;;
-esac
-
-say_green "Debian setup complete."
-say_red "The installation has finished. A reboot is recommended before continuing."
-read -rp "Reboot now? [y/N]: " reboot_choice
-case "${reboot_choice,,}" in
- y|yes)
- say_red "Rebooting now."
- sudo reboot
- ;;
- *)
- say_yellow "Skipping reboot. Make sure to reboot manually before continuing upgrades."
- exit 0
- ;;
-esac
diff --git a/v2/fedora.sh b/v2/fedora.sh
deleted file mode 100755
index be50691..0000000
--- a/v2/fedora.sh
+++ /dev/null
@@ -1,114 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers
-##########################
-tput_reset() { tput sgr0; }
-tput_black() { tput setaf 0; }
-tput_red() { tput setaf 1; }
-tput_green() { tput setaf 2; }
-tput_yellow() { tput setaf 3; }
-tput_blue() { tput setaf 4; }
-tput_purple() { tput setaf 5; }
-tput_cyan() { tput setaf 6; }
-tput_gray() { tput setaf 7; }
-
-echo
-tput_yellow
-echo "################################################################################"
-echo "################### Detected OS / Desktop Environmet / Tiling Window Manager"
-echo "################################################################################"
-tput_reset
-echo
-
-echo "Installing OS-specific packages..."
-echo "Selected DE: $SELECTED_DE"
-echo "Selected TWM: $SELECTED_TWM"
-echo "Installation Level: $INSTALL_LEVEL"
-
-if [[ "$SELECTED_DE" == "xfce" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing XFCE4"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing XFCE packages..."
-
-fi
-
-if [[ "$SELECTED_DE" == "plasma" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing KDE Plasma 6"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing Plasma packages..."
-fi
-
-if [[ "$SELECTED_DE" == "gnome" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing Gnome 48"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing Gnome packages..."
-fi
-
-if [[ "$SELECTED_DE" == "none" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing no Desktop Environment"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing no Desktop Environment packages..."
-fi
-
-
-if [[ "$SELECTED_TWM" == "chadwm" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing Chadwm"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing CHADWM..."
-fi
-
-if [[ "$SELECTED_TWM" == "hyprland" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing Hyprland"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing Hyperland..."
-fi
-
-if [[ "$SELECTED_TWM" == "none" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing no Tiling Window Manager"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing no Tiling Window Manager packages..."
-fi
diff --git a/v2/ubuntu.sh b/v2/ubuntu.sh
deleted file mode 100755
index be50691..0000000
--- a/v2/ubuntu.sh
+++ /dev/null
@@ -1,114 +0,0 @@
-#!/bin/bash
-set -euo pipefail
-
-##########################
-# Color helpers
-##########################
-tput_reset() { tput sgr0; }
-tput_black() { tput setaf 0; }
-tput_red() { tput setaf 1; }
-tput_green() { tput setaf 2; }
-tput_yellow() { tput setaf 3; }
-tput_blue() { tput setaf 4; }
-tput_purple() { tput setaf 5; }
-tput_cyan() { tput setaf 6; }
-tput_gray() { tput setaf 7; }
-
-echo
-tput_yellow
-echo "################################################################################"
-echo "################### Detected OS / Desktop Environmet / Tiling Window Manager"
-echo "################################################################################"
-tput_reset
-echo
-
-echo "Installing OS-specific packages..."
-echo "Selected DE: $SELECTED_DE"
-echo "Selected TWM: $SELECTED_TWM"
-echo "Installation Level: $INSTALL_LEVEL"
-
-if [[ "$SELECTED_DE" == "xfce" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing XFCE4"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing XFCE packages..."
-
-fi
-
-if [[ "$SELECTED_DE" == "plasma" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing KDE Plasma 6"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing Plasma packages..."
-fi
-
-if [[ "$SELECTED_DE" == "gnome" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing Gnome 48"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing Gnome packages..."
-fi
-
-if [[ "$SELECTED_DE" == "none" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing no Desktop Environment"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing no Desktop Environment packages..."
-fi
-
-
-if [[ "$SELECTED_TWM" == "chadwm" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing Chadwm"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing CHADWM..."
-fi
-
-if [[ "$SELECTED_TWM" == "hyprland" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing Hyprland"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing Hyperland..."
-fi
-
-if [[ "$SELECTED_TWM" == "none" ]]; then
- echo
- tput_green
- echo "################################################################################"
- echo "################### Installing no Tiling Window Manager"
- echo "################################################################################"
- tput_reset
- echo
-
- echo "Installing no Tiling Window Manager packages..."
-fi