# vim: ft=sh ################################################################################ # Keyboard ################################################################################ # I use a Dvorak keyboard, like a weirdo input * xkb_layout "us" input * xkb_variant "dvorak" # Key repeat values input * repeat_delay 300 input * repeat_rate 30 ################################################################################ # Mouse ################################################################################ # TrackPoint acceleration input 1133:49291:Logitech_G502_HERO_SE accel_profile flat input 1133:49291:Logitech_G502_HERO_SE pointer_accel -0.966 # When using a 2-button mouse, simulate button 3 with simultaneous press input * middle_emulation enable # Hide cursor after 1 second seat seat0 hide_cursor 1000 # Disable mouse as trigger to wake from idle seat * idle_wake keyboard switch ################################################################################ # Appearance ################################################################################ # Gtk themes exec gsettings set org.gnome.desktop.interface gtk-theme 'Flat-Remix-GTK-Blue-Darkest-Solid-NoBorder' & exec gsettings set org.gnome.desktop.interface icon-theme 'Flat-Remix-Blue-Dark' & # X11 Cursor theme exec gsettings set org.gnome.desktop.interface cursor-theme 'Vimix-cursors' & seat seat0 xcursor_theme FlatbedCursors-Blue # Minimize borders from all windows hide_edge_borders none default_floating_border none default_border pixel 1 # Font only visible in tabbed mode. Also inheritted by bar. font pango:Anonymous Pro 12 # Start Waybar with IPC functionality (requires waybar>=0.9.9, wlroots>=0.15) bar bar-1 { swaybar_command /usr/bin/waybar -c $HOME/.config/waybar/config mode hide hidden_state hide position bottom } # gaps gaps inner 10 gaps outer 0 # Color definitions include $HOME/.dotfiles/sway/colorscheme # Assign colors to elements (TODO: actually name the colors for better readability) client.background $base07 # Property Name Border BG Text Indicator Child Border client.focused $base05 $base0D $base00 $base0D $base0D client.focused_inactive $base01 $base01 $base05 $base03 $base01 client.unfocused $base01 $base00 $base05 $base01 $base01 client.urgent $base08 $base08 $base00 $base08 $base08 # Feature request placed for this, but it does not exist as of 1.7 #client.sticky $base08 $base08 $base00 $base08 $base08 client.placeholder $base00 $base00 $base05 $base00 $base00 ################################################################################ # Bindings ################################################################################ # Set super key to Windows/Super key set $mod Mod4 ### Load keybindings include $HOME/.dotfiles/sway/bindings ################################################################################ # Behaviour ################################################################################ # Allow movement of floating windows with Left Click+Drag floating_modifier $mod # Load special window behaviours include $HOME/.dotfiles/sway/behaviours # TODO Execute actions upon entering/exiting a device mode # bindswitch [lib|tablet]:[on|off|toggle] # eg. bindswitch tablet:on tablet_mode.sh on # X window 'activation' should just make a window 'urgent' instead of 'focused' focus_on_window_activation urgent ################################################################################ # Start-up Applications ################################################################################ # Configure XDG desktop portal exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP exec dbus-update-activation-environment 2>/dev/null && \ dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP exec systemctl --user start xdg-desktop-portal-wlr.service include $HOME/.dotfiles/sway/autostart