exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK exec hash dbus-update-activation-environment 2>/dev/null && \ dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK ### Variables include colors set $mod Mod4 set $left n set $down e set $up i set $right o set $term kitty set $menu rofi -show drun | xargs swaymsg exec -- ### Output configuration output "AOC Q27G1WG4 0x00020A32" mode 2560x1440@143.912Hz output "Dell Inc. DELL S2725DS HVJ3PB4" mode 2560x1440@99.946Hz pos 0 0 output "BOE 0x0BCA Unknown" scale 1.25 pos 2560 0 output "*" background $HOME/Pictures/wallpapers/$wallpaper fill output eDP-1 background $HOME/Pictures/wallpapers/bea/$wallpaper fill ### Idle configuration exec swayidle \ timeout 300 'swaylock' \ timeout 600 'swaymsg "output * dpms off"' \ resume 'swaymsg "output * dpms on"' \ before-sleep 'swaylock --grace 0' ### Input configuration input type:touchpad { dwt enabled natural_scroll enabled middle_emulation enabled } input type:touch { map_to_output eDP-1 } input type:tablet_tool { map_to_output eDP-1 } ### Key bindings # Basics: bindsym $mod+Return exec $term bindsym $mod+Shift+q kill bindsym $mod+s exec $menu floating_modifier $mod normal bindsym $mod+Shift+d reload bindsym $mod+Shift+f 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+q exec dunstctl close bindsym $mod+m exec dunstctl context # Moving around: bindsym $mod+$left focus left bindsym $mod+$down focus down bindsym $mod+$up focus up bindsym $mod+$right focus right bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right bindsym $mod+Shift+$left move left bindsym $mod+Shift+$down move down bindsym $mod+Shift+$up move up bindsym $mod+Shift+$right move right 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+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 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 bindsym $mod+Tab workspace next bindsym $mod+Shift+Tab workspace prev # Layout stuff: bindsym $mod+h splith bindsym $mod+v splitv bindsym $mod+r layout stacking bindsym $mod+w layout tabbed bindsym $mod+f layout toggle split bindsym $mod+t fullscreen bindsym $mod+Shift+space floating toggle bindsym $mod+space focus mode_toggle bindsym $mod+a focus parent bindsym $mod+Shift+a focus child # Scratchpad: bindsym $mod+Shift+minus move scratchpad bindsym $mod+minus scratchpad show # Resizing containers: mode "resize" { bindsym $left resize shrink width 40px bindsym $down resize shrink height 40px bindsym $up resize grow height 40px bindsym $right resize grow width 40px bindsym Left resize shrink width 40px bindsym Down resize shrink height 40px bindsym Up resize grow height 40px bindsym Right resize grow width 40px bindsym Return mode "default" bindsym Escape mode "default" } bindsym $mod+p mode "resize" # Media controls: bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5% bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5% bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle bindsym XF86AudioPlay exec playerctl play-pause bindsym XF86AudioNext exec playerctl next bindsym XF86AudioPrev exec playerctl previous bindsym XF86MonBrightnessUp exec brightnessctl set +5% bindsym XF86MonBrightnessDown exec brightnessctl set 5%- # Launchers: bindsym $mod+b exec zen-browser bindsym $mod+x exec xournalpp bindsym $mod+c exec lectern open bindsym $mod+d exec notepicker $HOME/nextcloud/escritoire/notepad bindsym $mod+g exec audiopicker bindsym $mod+j exec kitty --app-id 'ration' bash -i ration bindsym $mod+Shift+t exec kitty --app-id 'float' bindsym $mod+Shift+c exec kitty --app-id 'numbat' numbat bindsym $mod+Shift+g exec feh -Z -F -B black /home/josh/Pictures/game.png bindsym $mod+Shift+w exec wallpicker bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png bindsym $mod+Print exec grim -g "$(slurp)" $HOME/Pictures/screenshots/$(date +%F_%T | tr ':' '-').png ### Appearance # target title bg text indicator border client.focused $color12 $color12 $background $color12 $color12 client.focused_inactive $color0 $color0 $foreground 00000000 00000000 client.unfocused $color0 $color0 $foreground 00000000 00000000 client.urgent $color13 $background $color13 00000000 $color13 client.placeholder $color8 $background $foreground 00000000 $color8 client.background $background font pango:Lilex Nerd Font 10 gaps inner 10px gaps outer 0px title_align center default_border pixel force_display_urgency_hint 1500 ### Applications # Configurations for_window [app_id="float"] floating enable; resize set 50 ppt 50 ppt for_window [app_id="numbat"] floating enable; resize set 40 ppt 35 ppt for_window [app_id="xoppdoggin"] floating enable; resize set 90 ppt 90 ppt for_window [app_id="wallpicker"] floating enable; resize set 90 ppt 90 ppt for_window [app_id="ration"] floating enable; resize set 600 350 for_window [class="Inkscape"] floating enable; resize set 90 ppt 90 ppt for_window [class="vimscape"] floating enable; resize set 30 ppt 25 ppt; move down 300; move left 550 assign [class="^discord"] workspace number 8 assign [class="^Slack"] workspace number 8 assign [app_id="^thunderbird"] workspace number 8 assign [class="^feishin"] workspace number 9 assign [app_id="keepassxc"] workspace number 10 # Launch on startup bar swaybar_command waybar exec --no-startup-id dex -ae sway exec dunst exec keepassxc exec feishin exec gammastep exec rat reset include /etc/sway/config.d/*