sway.sh: separate shell from DE, add config copy loop

- Remove all shell components (zsh, oh-my-zsh, starship, dotfile
  symlinks) — shell-setup.sh covers these and can now run independently
  of any DE selection
- Replace ln -sf DE config links with a CONFIGS copy loop (consistent
  with hyprland.sh)
- Add colors.conf and apply-theme.sh to the config deployment section
- Drop packages already handled by core/shell modules (base, git, yay,
  micro, nano, zsh, fastfetch, etc.)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
main
The_miro 2026-05-11 15:06:17 +02:00
parent 0477c979e3
commit 670637f805
1 changed files with 22 additions and 58 deletions

View File

@ -1,76 +1,40 @@
#!/bin/bash #!/bin/bash
set -euo pipefail set -euo pipefail
# Install packages echo "=== Sway Environment Installer ==="
# 1. Install packages
echo "Installing required packages..." echo "Installing required packages..."
sudo pacman -Syu --noconfirm --needed \ sudo pacman -Syu --noconfirm --needed \
alacritty base base-devel brightnessctl btop btrfs-progs cmatrix dmenu \ brightnessctl btop dmenu foot glfw grim \
fastfetch firefox foot git greetd-tuigreet glfw gnu-netcat grim grub \ greetd-tuigreet gst-plugin-pipewire imagemagick iwd libpulse \
gst-plugin-pipewire hollywood htop imagemagick iwd libpulse \
libva-intel-driver libva-mesa-driver lightdm lightdm-gtk-greeter \ libva-intel-driver libva-mesa-driver lightdm lightdm-gtk-greeter \
linux linux-firmware lynx micro nano networkmanager nmap openssh \ networkmanager pavucontrol pipewire pipewire-alsa pipewire-jack pipewire-pulse \
pavucontrol pipewire pipewire-alsa pipewire-jack pipewire-pulse \ slurp sway swaybg swayidle swaylock alacritty \
slurp smartmontools sway swaybg swayidle swaylock \ ttf-jetbrains-mono vulkan-intel vulkan-radeon waybar wget \
ttf-jetbrains-mono vim vulkan-intel vulkan-radeon waybar wget \ wireplumber wofi wpa_supplicant \
wireless_tools wireplumber wireshark-qt wofi wpa_supplicant \
xdg-utils xf86-video-amdgpu xf86-video-ati xf86-video-nouveau \ xdg-utils xf86-video-amdgpu xf86-video-ati xf86-video-nouveau \
xf86-video-vmware xorg-server xorg-xinit xorg-xwayland \ xf86-video-vmware xorg-server xorg-xinit xorg-xwayland \
yazi zram-generator zsh zsh-completions zram-generator
# yay # 2. Enable services
if ! command -v yay &>/dev/null; then echo "Enabling services..."
echo "Installing yay..."
mkdir -p ~/install-tmp
git clone https://aur.archlinux.org/yay.git ~/install-tmp/yay
cd ~/install-tmp/yay
makepkg -si --noconfirm
cd ~
else
echo "yay already installed."
fi
# Services
echo "Enabling NetworkManager..."
sudo systemctl enable NetworkManager.service sudo systemctl enable NetworkManager.service
# Desktop env configs # 3. greetd config
echo "Linking desktop environment configs..."
ln -sf ~/Dotfiles/desktopenvs/sway/sway ~/.config/sway
ln -sf ~/Dotfiles/desktopenvs/sway/alacritty ~/.config/alacritty
# Shell
echo "Setting up zsh..."
chsh -s /usr/bin/zsh
echo "Installing Starship..."
curl -sS https://starship.rs/install.sh | sh -s -- --yes
echo "Installing oh-my-zsh..."
RUNZSH=no CHSH=no sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
echo "Installing oh-my-zsh plugins..."
ZSH_CUSTOM="${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}"
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git \
"$ZSH_CUSTOM/plugins/zsh-syntax-highlighting"
git clone https://github.com/zsh-users/zsh-autosuggestions \
"$ZSH_CUSTOM/plugins/zsh-autosuggestions"
# greetd config
sudo cp -f ~/Dotfiles/desktopenvs/hyprland/greetd-tuigreet/config.toml /etc/greetd/config.toml sudo cp -f ~/Dotfiles/desktopenvs/hyprland/greetd-tuigreet/config.toml /etc/greetd/config.toml
sudo systemctl enable greetd.service sudo systemctl enable greetd.service
# Dotfiles # 4. Copy DE configs
echo "Linking dotfiles..." echo "Copying configs..."
CONFIGS=(sway alacritty)
for cfg in "${CONFIGS[@]}"; do
rm -rf ~/.config/"$cfg"
cp -r ~/Dotfiles/desktopenvs/sway/"$cfg" ~/.config/
done
cp ~/Dotfiles/colors.conf ~/.config/colors.conf cp ~/Dotfiles/colors.conf ~/.config/colors.conf
cp ~/Dotfiles/apply-theme.sh ~/apply-theme.sh cp ~/Dotfiles/apply-theme.sh ~/apply-theme.sh
chmod +x ~/apply-theme.sh chmod +x ~/apply-theme.sh
rm -f ~/.bashrc ~/.zshrc
ln -sf ~/Dotfiles/.bashrc ~/.bashrc
ln -sf ~/Dotfiles/.zshrc ~/.zshrc
ln -sf ~/Dotfiles/starship.toml ~/.config/starship.toml
ln -sf ~/Dotfiles/micro/ ~/.config/micro
ln -sf ~/Dotfiles/yazi/ ~/.config/yazi
mkdir -p ~/.config/spotify-tui
ln -sf ~/Dotfiles/spotify-tui/config.yml ~/.config/spotify-tui/config.yml
echo "=== Sway installation complete. Reboot to start. ===" echo "=== Sway installation complete. Run shell-setup.sh if you haven't already, then reboot. ==="