install consolidation
This commit is contained in:
115
install.sh
115
install.sh
@@ -25,98 +25,45 @@ DISTRO=$(detect_distro)
|
|||||||
# Dependencies
|
# Dependencies
|
||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
COMMON_PACKAGES=(
|
||||||
|
stow
|
||||||
|
swayidle
|
||||||
|
mako
|
||||||
|
libnotify
|
||||||
|
fuzzel
|
||||||
|
wireplumber
|
||||||
|
brightnessctl
|
||||||
|
alsa-utils
|
||||||
|
wf-recorder
|
||||||
|
slurp
|
||||||
|
zenity
|
||||||
|
jq
|
||||||
|
firefox
|
||||||
|
zoxide
|
||||||
|
)
|
||||||
|
|
||||||
case "$DISTRO" in
|
case "$DISTRO" in
|
||||||
endeavouros)
|
endeavouros|arch)
|
||||||
# EndeavourOS is Arch-based, use pacman
|
# Keep distro-specific packages clearly listed
|
||||||
PACMAN_PACKAGES=(
|
DISTRO_PACKAGES=(
|
||||||
stow
|
pipewire-pulse # Arch-specific
|
||||||
# sway ecosystem
|
ffmpeg # Available in official repos
|
||||||
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
|
|
||||||
)
|
)
|
||||||
|
PACKAGES=("${COMMON_PACKAGES[@]}" "${DISTRO_PACKAGES[@]}")
|
||||||
echo "Installing packages for EndeavourOS..."
|
echo "Installing packages for Arch/EndeavourOS..."
|
||||||
sudo pacman -S --noconfirm "${PACMAN_PACKAGES[@]}"
|
sudo pacman -S --noconfirm "${PACKAGES[@]}"
|
||||||
;;
|
;;
|
||||||
|
fedora|fedora-asahi-remix)
|
||||||
fedora)
|
DISTRO_PACKAGES=(
|
||||||
DNF_PACKAGES=(
|
pipewire-utils # Fedora's package name
|
||||||
stow
|
ffmpeg # Requires RPM Fusion
|
||||||
# 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
|
|
||||||
)
|
)
|
||||||
|
PACKAGES=("${COMMON_PACKAGES[@]}" "${DISTRO_PACKAGES[@]}")
|
||||||
echo "Installing packages for Fedora..."
|
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 "ERROR: Unsupported distribution: $DISTRO"
|
||||||
echo "Supported distributions: fedora, arch, endeavouros"
|
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|||||||
Reference in New Issue
Block a user