summaryrefslogtreecommitdiff
path: root/sway/config
diff options
context:
space:
mode:
authortslil <tslil@posteo.de>2026-02-17 14:10:19 +0000
committertslil <tslil@posteo.de>2026-02-17 14:32:45 +0000
commit62d8bd12d82299f7a869b3b4070cd2c39e1af8fd (patch)
treec2c5248785846461aa8e8122c0fd756784dcf442 /sway/config
parentcc6b0aee312f46b578468a21517e2add66f9e9dc (diff)
[sway] [waybar]: try switching to sway
Diffstat (limited to 'sway/config')
-rw-r--r--sway/config347
1 files changed, 145 insertions, 202 deletions
diff --git a/sway/config b/sway/config
index 9dcdcd7..8e1b93a 100644
--- a/sway/config
+++ b/sway/config
@@ -1,217 +1,160 @@
-# Read `man 5 sway` for a complete reference.
-
-### Keyboard layout
+# --- Variables ---
+set $mod Mod4
+floating_modifier $mod
-input "1:1:AT_Translated_Set_2_keyboard" {
- xkb_model pc105aw-sl
- xkb_layout "us(cmk_ed_dh)"
- xkb_options "caps:backspace,lv3:ralt_alt,ctrl:swap_lalt_lctl"
+set $left h
+set $right i
+set $up e
+set $down a
+set $term foot
+set $menu fuzzel
+
+# --- Environment & Autostart ---
+
+# Wayland environment variables
+exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE
+exec hash dbus-update-activation-environment 2>/dev/null && \
+ dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE
+
+# Cursor
+seat seat0 xcursor_theme Adwaita 64
+exec "gsettings set org.gnome.desktop.interface cursor-theme Adwaita"
+exec "gsettings set org.gnome.desktop.interface cursor-size 64"
+
+# Start background services
+exec kanshi
+exec waybar
+exec "gammastep -l 52.2:4.5"
+
+# --- Input Configuration ---
+input type:touchpad {
+ tap enabled
+ drag enabled
+ drag_lock disabled
}
-input "1:2:AT_Raw_Set_2_keyboard" {
- xkb_model pc105aw-sl
- xkb_layout "us(cmk_ed_dh)"
- xkb_options "caps:backspace,lv3:ralt_alt,ctrl:swap_lalt_lctl"
+input type:keyboard {
+ xkb_layout gallium
+ xkb_options ctrl:swap_lalt_lctl,ctrl:swap_rwin_rctl,ctrl:nocaps
+ #repeat_delay 50
+ #repeat_rate 300
}
-input "2:10:TPPS/2_IBM_TrackPoint" {
- pointer_accel 1
-}
+# --- Appearance ---
+set $bg_colour #002B36
+set $ac_colour #FF8C00
+set $in_colour #586E75
-### Variables
-set $mod Mod4
+# Window colours (border, background, text, indicator, child_border)
+client.focused $ac_colour $bg_colour $ac_colour $ac_colour $ac_colour
+client.unfocused $in_colour $bg_colour $in_colour $in_colour $in_colour
+client.focused_inactive $in_colour $bg_colour $in_colour $in_colour $in_colour
+client.urgent $ac_colour $bg_colour $ac_colour $ac_colour $ac_colour
-set $left n
-set $down e
-set $up i
-set $right o
+# Border settings
+default_border pixel 2
+default_floating_border normal 2
-set $term foot
+# Background colour
+output '*' bg $bg_colour solid_color
-# Your preferred application launcher
-# Note: pass the final command to swaymsg so that the resulting window can be opened
-# on the original workspace that the command was run on.
-set $menu bemenu-run -p 'run' -M 64 -c --fn 32 | xargs swaymsg exec --
-
-### Output configuration
-#
-# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
-# output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
-#
-
-### Visual stuff
-
-hide_edge_borders --i3 none
-default_border none # pixel 1
-
-client.focused #000000 #af4c00 #ffffff #2e9ef4 #AF4C00
-
-### Key bindings
-#
-# Basics:
-#
- # Start a terminal
- bindsym $mod+t exec $term
-
- # Kill focused window
- bindsym $mod+Shift+k kill
-
- # Start your launcher
- bindsym $mod+Space exec $menu
-
- # Time
- bindsym $mod+Return exec sway_stats
-
- # Autolock
- bindsym $mod+Shift+h exec sway_autolock
-
- # 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+Control+Shift+c reload
-
- # Exit sway (logs you out of your Wayland session)
- #bindsym $mod+Shift+Control+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'
- bindsym $mod+Shift+Control+q exec 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
- # Or use $mod+[up|down|left|right]
- 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
- # Ditto, with arrow keys
- 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:
-#
-
- bindsym $mod+tab workspace back_and_forth
- # Switch to workspace
- bindsym $mod+l exec sway_workspace 1 L
- bindsym $mod+u exec sway_workspace 2 U
- bindsym $mod+y exec sway_workspace 3 Y
- bindsym $mod+semicolon exec sway_workspace 4 ";"
- bindsym $mod+q exec sway_workspace 5 Q
- bindsym $mod+w exec sway_workspace 6 W
- bindsym $mod+f exec sway_workspace 7 F
- bindsym $mod+p exec sway_workspace 8 P
- bindsym $mod+b exec sway_workspace 9 B
- # Move focused container to workspace
- bindsym $mod+Shift+l move container to workspace number 1
- bindsym $mod+Shift+u move container to workspace number 2
- bindsym $mod+Shift+y move container to workspace number 3
- bindsym $mod+Shift+semicolon move container to workspace number 4
- bindsym $mod+Shift+q move container to workspace number 5
- bindsym $mod+Shift+w move container to workspace number 6
- bindsym $mod+Shift+f move container to workspace number 7
- bindsym $mod+Shift+p move container to workspace number 8
- bindsym $mod+Shift+b move container to workspace number 9
- # 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+h splith
- bindsym $mod+v splitv
-
- # Switch the current container between different layout styles
- workspace_layout tabbed
- bindsym $mod+a layout stacking
- bindsym $mod+r layout tabbed
- bindsym $mod+s layout toggle split
-
- # Make the current focus fullscreen
- bindsym $mod+g fullscreen
-
- # Toggle the current focus between tiling and floating mode
- bindsym $mod+d floating toggle
-
- # Swap focus between the tiling area and the floating area
- bindsym $mod+Shift+d focus mode_toggle
-
- # Move focus to the parent container
- bindsym $mod+comma 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
-
- # Ditto, with arrow keys
- 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+Shift+r mode "resize"
+mouse_warping container
+
+font pango:BQN386 Unicode DZ 12
+
+# --- Key Bindings ---
+# Basic execution
+bindsym $mod+t exec $term
+bindsym $mod+space exec $menu
+bindsym $mod+p exec grim_slurp
+bindsym $mod+Shift+x exec lock
+bindsym $mod+Shift+space exec albumbler.py
+bindsym $mod+slash exec "foot qalc"
+
+# Window Management
+bindsym $mod+Shift+k kill
+bindsym $mod+Shift+Control+k exec "swaymsg exit"
+bindsym $mod+Shift+Control+r reload
+
+# Layout
+workspace_layout tabbed
+bindsym $mod+n layout splith
+bindsym $mod+r layout splitv
+bindsym $mod+s layout tabbed
-# Audio:
-bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
-bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
-bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
-bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
+# Movement and Focus
+bindsym $mod+$right focus right
+bindsym $mod+$left focus left
+bindsym $mod+$up focus up
+bindsym $mod+$down focus down
-# Misc:
-bindsym XF86Battery exec lock
+bindsym $mod+Shift+$right move right
+bindsym $mod+Shift+$left move left
+bindsym $mod+Shift+$up move up
+bindsym $mod+Shift+$down move down
-# Status Bar:
-#
-# Read `man 5 sway-bar` for more information about this section.
+# bindsym $mod+Return focus child
-include /etc/sway/config.d/*
+# Toggle Floating and Fullscreen
+bindsym $mod+g floating toggle
+bindsym $mod+w fullscreen toggle
-exec sway_audio
-exec sway_autolock
-exec inactive-windows-transparency.py --opacity 0.8
-exec wlsunset -l 39 -L -76
-exec fnott
+# Outputs
+#bindsym $mod+Shift+e move container to workspace next
+#bindsym $mod+Shift+a move container to workspace prev
-#exec sway_outputs
-exec foot
+# Ratio Changes
+bindsym $mod+Control+$up resize shrink width 10 ppt
+bindsym $mod+Control+$down resize grow width 10 ppt
+
+# Floating Window Movement
+bindsym $mod+Mod1+$left floating toggle; move left
+bindsym $mod+Mod1+$down floating toggle; move down
+bindsym $mod+Mod1+$up floating toggle; move up
+bindsym $mod+Mod1+$right floating toggle; move right
+
+# Workspaces
+bindsym $mod+f workspace "F"
+bindsym $mod+Shift+f move container to workspace "F"
+
+bindsym $mod+o workspace "O"
+bindsym $mod+Shift+o move container to workspace "O"
+
+bindsym $mod+u workspace "U"
+bindsym $mod+Shift+u move container to workspace "U"
+
+bindsym $mod+b workspace "B"
+bindsym $mod+Shift+b move container to workspace "B"
+
+bindsym $mod+l workspace "L"
+bindsym $mod+Shift+l move container to workspace "L"
+
+bindsym $mod+d workspace "D"
+bindsym $mod+Shift+d move container to workspace "D"
+
+bindsym $mod+c workspace "C"
+bindsym $mod+Shift+c move container to workspace "C"
+
+bindsym $mod+Tab workspace back_and_forth
+
+# Passthrough Mode
+mode "passthrough" {
+ bindsym $mod+Escape mode default
+ bindsym $mod+F11 mode default
+}
+bindsym $mod+F11 mode "passthrough"
+
+# Media Keys
+bindsym XF86AudioRaiseVolume exec "pactl set-sink-volume 0 +2%"
+bindsym XF86AudioLowerVolume exec "pactl set-sink-volume 0 -2%"
+bindsym XF86AudioMute exec "pactl set-sink-mute 0 toggle"
+bindsym XF86AudioPlay exec "mpc toggle"
+bindsym XF86AudioPrev exec "mpc previous"
+bindsym XF86AudioNext exec "mpc next"
+bindsym XF86MonBrightnessUp exec "light -A 2"
+bindsym XF86MonBrightnessDown exec "light -U 2"
+
+# --- Keyboard Layout Switching ---
+bindsym $mod+Control+Escape exec "swaymsg 'input type:keyboard xkb_layout -options ctrl:swap_lalt_lctl,ctrl:swap_rwin_rctl,ctrl:nocaps pinev4wide'"
+bindsym $mod+Escape exec "swaymsg 'input type:keyboard xkb_layout -options ctrl:swap_lalt_lctl,ctrl:swap_rwin_rctl,ctrl:nocaps gallium'"
+bindsym $mod+Shift+Escape exec "swaymsg 'input type:keyboard xkb_options \"\"'"