From c419eb5f92ee28cdcd018280b87c3cfbee85c4b5 Mon Sep 17 00:00:00 2001 From: Jonas H Date: Thu, 12 Mar 2026 09:12:41 +0100 Subject: [PATCH] install consolidation --- install.sh | 117 +++++++++++++++-------------------------------------- 1 file changed, 32 insertions(+), 85 deletions(-) diff --git a/install.sh b/install.sh index 7c07e9f..0e337cd 100755 --- a/install.sh +++ b/install.sh @@ -25,101 +25,48 @@ DISTRO=$(detect_distro) # Dependencies # --------------------------------------------------------------------------- +COMMON_PACKAGES=( + stow + swayidle + mako + libnotify + fuzzel + wireplumber + brightnessctl + alsa-utils + wf-recorder + slurp + zenity + jq + firefox + zoxide +) + case "$DISTRO" in - endeavouros) - # EndeavourOS is Arch-based, use pacman - PACMAN_PACKAGES=( - stow - # sway ecosystem - swayidle - # bar & notifications - mako - libnotify # notify-send - # terminal & launcher - fuzzel - # audio & display - wireplumber # wpctl - pipewire-pulse # pactl - brightnessctl - alsa-utils # speaker-test - # screen recording - wf-recorder - slurp - zenity - ffmpeg - # misc - jq - firefox + endeavouros|arch) + # Keep distro-specific packages clearly listed + DISTRO_PACKAGES=( + pipewire-pulse # Arch-specific + ffmpeg # Available in official repos ) - - echo "Installing packages for EndeavourOS..." - sudo pacman -S --noconfirm "${PACMAN_PACKAGES[@]}" + PACKAGES=("${COMMON_PACKAGES[@]}" "${DISTRO_PACKAGES[@]}") + echo "Installing packages for Arch/EndeavourOS..." + sudo pacman -S --noconfirm "${PACKAGES[@]}" ;; - - fedora) - DNF_PACKAGES=( - stow - # sway ecosystem - swayidle - # bar & notifications - mako - libnotify # notify-send - # terminal & launcher - fuzzel - # audio & display - wireplumber # wpctl - pipewire-utils # pactl - brightnessctl - alsa-utils # speaker-test - # screen recording - wf-recorder - slurp - zenity - ffmpeg # needs RPM Fusion: https://rpmfusion.org - # misc - jq - firefox + fedora|fedora-asahi-remix) + DISTRO_PACKAGES=( + pipewire-utils # Fedora's package name + ffmpeg # Requires RPM Fusion ) - + PACKAGES=("${COMMON_PACKAGES[@]}" "${DISTRO_PACKAGES[@]}") echo "Installing packages for Fedora..." - sudo dnf install -y "${DNF_PACKAGES[@]}" + sudo dnf install -y "${PACKAGES[@]}" ;; - - arch) - PACMAN_PACKAGES=( - stow - # sway ecosystem - swayidle - # bar & notifications - mako - libnotify # notify-send - # terminal & launcher - fuzzel - # audio & display - wireplumber # wpctl - pipewire-pulse # pactl - brightnessctl - alsa-utils # speaker-test - # screen recording - wf-recorder - slurp - zenity - ffmpeg - # misc - jq - firefox - ) - - echo "Installing packages for Arch Linux..." - sudo pacman -S --noconfirm "${PACMAN_PACKAGES[@]}" - ;; - *) echo "ERROR: Unsupported distribution: $DISTRO" - echo "Supported distributions: fedora, arch, endeavouros" exit 1 ;; -esac +esac # --------------------------------------------------------------------------- # Packages not in Fedora repos - install manually if missing