Dotfiles/setup/modules/Desktop-Environments/xfce.sh

32 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -euo pipefail
source "$(dirname "${BASH_SOURCE[0]}")/../lib/logging.sh"
log "Installing XFCE desktop..."
sudo pacman -S --noconfirm --needed \
xfce4 xfce4-goodies \
lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings \
xdg-desktop-portal-gtk \
pipewire wireplumber pipewire-alsa pipewire-jack pipewire-pulse \
xfce4-pulseaudio-plugin \
networkmanager network-manager-applet \
bluez bluez-utils blueman \
gvfs gvfs-smb gvfs-mtp \
flatpak
log "Enabling services..."
# getty@tty1 is the default text-mode login prompt; LightDM replaces it.
# '|| true' prevents abort if the unit is already disabled or doesn't exist.
sudo systemctl disable getty@tty1.service || true
# Disable greetd, which core.sh enables by default for every install. LightDM
# is this DE's own display manager, so leaving greetd enabled means two
# display managers both race to claim tty1.
disable_service greetd.service
sudo systemctl enable lightdm.service
sudo systemctl enable NetworkManager.service
sudo systemctl enable bluetooth.service
log "XFCE installation complete. Reboot to start."