#!/bin/bash # # Designed for Fedora Workstation # # Installs and configures sway and related tools to provide a richer # "desktop environment" style session. Relies on systemd for running # services as much as possible. set -euo pipefail while [[ $# -gt 0 ]]; do case $1 in --skip-packages) skip_packages=1 shift ;; *) shift ;; esac done if ! command -v dnf > /dev/null !! [ ! -f /etc/fedora-release ]; then echo "doesn't seem to be fedora workstation" exit 1 fi if [ -z "$skip_packages" ]; then # install rpmfusion if it's not already installed repos_installed=$(dnf --cacheonly repolist | tail -n+2 | cut -f1 -d' ' | egrep -x 'rpmfusion-free|rpmfusion-nonfree' | wc -l) if [ "$repos_installed" -lt "2" ]; then sudo dnf install \ https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \ https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm fi # install packages sudo dnf install \ sway waybar wob wofi foot lxpolkit mako cascadia-mono-pl-fonts \ udiskie libappindicator-gtk3 duplicity python3-b2sdk pass passmenu \ brightnessctl vlc unzip vim wget git zsh stow fi # use stow to install config files stow \ --verbose \ --dir /home/matt/.dotfiles/sway-de \ --target /home/matt/.config \ --stow config stow \ --verbose \ --dir /home/matt/.dotfiles/sway-de \ --target /home/matt/.local \ --stow local