Added Sway to the mix!

This commit is contained in:
Maddox Werts 2025-06-19 19:21:04 -04:00
parent 98284010e7
commit 03bd75884d
4 changed files with 260 additions and 1 deletions

4
Configs/alacritty.toml Normal file
View file

@ -0,0 +1,4 @@
[terminal]
[terminal.shell]
args = ["--login"]
program = "/usr/bin/fish"

45
Configs/rofi.rasi Normal file
View file

@ -0,0 +1,45 @@
configuration {
modi: "drun,run,window,ssh,combi";
font: "Iosevka Nerd Font 12";
me-select-entry: "w";
me-accept-entry: "MousePrimary";
show-icons: true;
icon-theme: "Papirus";
display-drun: "󰀻 Apps";
display-run: "󰌧 Run";
display-window: "󱂬 Windows";
display-ssh: "󰣀 SSH";
display-combi: "󰕘 Combi";
drun-display-format: "{name}";
window-format: "{w} · {c} · {t}";
/* Settings */
terminal: "kitty";
sidebar-mode: false;
combi-modi: "window,drun,run";
click-to-exit: true;
sorting-method: "levenshtein";
matching: "fuzzy";
case-sensitive: false;
cycle: true;
/* Vim keybindings */
kb-row-up: "Up,Control+k";
kb-row-tab: "";
kb-mode-previous: "Shift+Tab,Control+h";
/* Improved screen navigation */
kb-primary-paste: "Control+v";
kb-secondary-paste: "Control+Shift+v";
kb-clear-line: "Control+w";
kb-move-front: "Control+a";
kb-move-end: "Control+e";
kb-row-first: "Home,KP_Home";
kb-row-last: "End,KP_End";
kb-remove-to-eol: "Control+Shift+e";
kb-remove-char-back: "BackSpace";
hover-select: true;
click-to-exit: true;
}
@theme "/usr/share/rofi/themes/Arc-Dark.rasi"

162
Configs/sway.conf Normal file
View file

@ -0,0 +1,162 @@
### Variables
set $mod Mod4
set $web zen
set $file yazi
set $term alacritty
set $menu rofi -show drun
### Output configuration
## Wall-Paper
output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
## Displays
# get display names with `swaymsg -t get_outputs`
# output HDMI-A-1 resolution 1920x1080 position 1920,0
### Input configuration
#
# Example configuration:
#
# input type:touchpad {
# dwt enabled
# tap enabled
# natural_scroll enabled
# middle_emulation enabled
# }
#
# input type:keyboard {
# xkb_layout "eu"
# }
#
# You can also configure each device individually.
# Read `man 5 sway-input` for more information about this section.
### Key bindings
## Basics:
# Start a terminal
bindsym $mod+Return exec $term
# Kill focused window
bindsym $mod+q kill
# Start a File Browser
bindsym $mod+o exec $term -e $file
# Start a Web Browser
bindsym $mod+w exec $web
# Start your launcher
bindsym $mod+Space exec $menu
# Start SwayLock
bindsym $mod+l exec swaylock
# Screen-Shot
bindsym $mod+print exec grim -g "$(slurp -d)" - | wl-copy
# Drag floating windows by holding down $mod and left mouse button.
# Resize them with right mouse button + $mod.
# Despite the name, also works for non-floating windows.
# Change normal to inverse to use left mouse button for resizing and right
# mouse button for dragging.
floating_modifier $mod normal
# Reload the configuration file
bindsym $mod+Shift+c reload
# Exit sway (logs you out of your Wayland session)
bindsym $mod+Shift+q exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
## Moving around
# Move your focus around
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Move the focused window with the same, but add Shift
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
## Workspaces
# Switch to workspace
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10
# Move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10
# Note: workspaces can have any name you want, not just numbers.
# We just use 1-10 as the default.
## Layout stuff
# You can "split" the current object of your focus with
# $mod+b or $mod+v, for horizontal and vertical splits
# respectively.
bindsym $mod+b splith
bindsym $mod+v splitv
# Switch the current container between different layout styles
bindsym $mod+s layout stacking
bindsym $mod+t layout tabbed
bindsym $mod+e layout toggle split
# Make the current focus fullscreen
bindsym $mod+f fullscreen
# Toggle the current focus between tiling and floating mode
bindsym $mod+Shift+space floating toggle
# Swap focus between the tiling area and the floating area
bindsym $mod+m focus mode_toggle
# Move focus to the parent container
bindsym $mod+a focus parent
## Scratchpad
# Sway has a "scratchpad", which is a bag of holding for windows.
# You can send windows there and get them back later.
# Move the currently focused window to the scratchpad
bindsym $mod+Shift+minus move scratchpad
# Show the next scratchpad window or hide the focused scratchpad window.
# If there are multiple scratchpad windows, this command cycles through them.
bindsym $mod+minus scratchpad show
## Resizing containers
mode "resize" {
# left will shrink the containers width
# right will grow the containers width
# up will shrink the containers height
# down will grow the containers height
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
# Return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
## Utilities:
# Special keys to adjust volume via PulseAudio
bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle
bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5%
bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5%
bindsym --locked XF86AudioMicMute exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle
# Special keys to adjust brightness via brightnessctl
bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+
# Special key to take a screenshot with grim
bindsym Print exec grim
### Status Bar:
exec waybar
## Extra Stuff
include /etc/sway/config.d/*

View file

@ -73,6 +73,52 @@ kde_themes() {
kde() {
kde_install
}
## SWAY ##
sway_install() {
# All System Commands
SYS_INSTALL='sudo pacman -Sy --noconfirm'
FLH_INSTALL='sudo flatpak install -y'
# Installing System Packages
$SYS_INSTALL alacritty yazi rofi
}
sway_debloat() {
# All System Commands
SYS_REMOVE='sudo pacman -Rns --noconfirm'
# Removing System Packages
$SYS_REMOVE foot
}
sway_system() {
# Copying the Sway Config File to somewhere Useful
mkdir -p ~/.config/sway
wget http://server.lan:3003/OBJNULL/LinuxScripts/raw/branch/main/Configs/sway.conf -O ~/.config/sway/config
# Copying the Alacritty Config File to somewhere Useful
mkdir -p ~/.config/alacritty
wget http://server.lan:3003/OBJNULL/LinuxScripts/raw/branch/main/Configs/alacritty.toml -O ~/.config/alacritty/alacritty.toml
# Copying the Rofi Config File to somewhere Useful
mkdir -p ~/.config/rofi
wget http://server.lan:3003/OBJNULL/LinuxScripts/raw/branch/main/Configs/rofi.rasi -O ~/.config/rofi/config.rasi
# Adding variables to Path
echo "EDITOR=vim" | sudo tee -a /etc/environment
}
sway_themes() {
# Removing the old style
sudo rm /etc/xdg/waybar/config /etc/xdg/waybar/style.css
# Downloading the New Styles
sudo wget https://raw.githubusercontent.com/arkboix/sway/refs/heads/main/files/.config/waybar/config.jsonc -O /etc/xdg/waybar/config
sudo wget https://raw.githubusercontent.com/arkboix/sway/refs/heads/main/files/.config/waybar/style.css -O /etc/xdg/waybar/style.css
}
sway() {
sway_install
sway_debloat
sway_system
sway_themes
}
# Functions
install_yay() {
@ -90,7 +136,7 @@ install_pacman() {
SYS_INSTALL='sudo pacman -S --noconfirm'
# Base Deps
$SYS_INSTALL net-tools flatpak
$SYS_INSTALL net-tools flatpak fish
$SYS_INSTALL sof-firmware
$SYS_INSTALL hunspell-en_us
@ -157,6 +203,8 @@ main() {
gnome
elif [ "$XDG_CURRENT_DESKTOP" == "KDE" ]; then
kde
elif [ "$XDG_CURRENT_DESKTOP" == "sway:wlroots" ]; then
sway
fi
# Installing Software