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
parent
0477c979e3
commit
670637f805
|
|
@ -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. ==="
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue