diff --git a/dotfiles/.config/sway/config b/dotfiles/.config/sway/config index 5faa300..772b28f 100644 --- a/dotfiles/.config/sway/config +++ b/dotfiles/.config/sway/config @@ -131,8 +131,8 @@ input * xkb_layout "se" bindsym $mod+Control+Right move workspace to output HDMI-A-1 bindsym $mod+Control+Left move workspace to output eDP-1 # Switch to workspace - bindsym $mod+1 workspace number 1: - bindsym $mod+2 workspace number 2: + 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: @@ -142,8 +142,8 @@ input * xkb_layout "se" 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+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: @@ -168,129 +168,129 @@ input * xkb_layout "se" bindsym $mod+w 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+space focus mode_toggle - - # Move focus to the parent container - bindsym $mod+a focus parent - -# Floating windows -for_window [window_role="pop-up"] floating enable -for_window [window_role="bubble"] floating enable -for_window [window_role="task_dialog"] floating enable -for_window [window_role="Preferences"] floating enable - -for_window [window_role="Open Files"] floating enable sticky -for_window [window_role="File Operation Progress"] floating enable sticky -for_window [window_role="Save As"] floating enable - -for_window [window_type="dialog"] floating enable -for_window [window_type="menu"] floating enable - -# -# 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+r mode "resize" - -# -# Status Bar: -# -# Read `man 5 sway-bar` for more information about this section. -bar { - position top - - # When the status_command prints a new line to stdout, swaybar updates. - # The default just shows the current date and time. - #status_command while date +'%Y-%m-%d %l:%M:%S %p'; do sleep 1; done - status_command while ~/.config/sway/bin/status.sh; do sleep 1; done - - colors { - statusline #ffffff - background #323232 - inactive_workspace #32323200 #32323200 #5c5c5c - } -} - -# Pulse Audio controls - bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume $(pacmd list-sinks |awk '/.* index:/{print $3}') +5% # Raise - bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume $(pacmd list-sinks |awk '/.* index:/{print $3}') -5% # Lower - bindsym XF86AudioMute exec pactl set-sink-mute $(pacmd list-sinks |awk '/.* index:/{print $3}') toggle # Mute -# Screen brightness controls -- # https://github.com/haikarainen/light - bindsym XF86MonBrightnessUp exec light -A 5 # increase screen brightness - bindsym XF86MonBrightnessDown exec light -U 5 # decrease screen brightness -# Keyboard brightness controls - bindsym XF86KbdBrightnessUp exec light -s $(light -L | awk '/.*kbd_backlight/ {print $1}') -A 5 # increase keyboard brightness - bindsym XF86KbdBrightnessDown exec light -s $(light -L | awk '/.*kbd_backlight/ {print $1}') -U 5 # decrease keyboard brightness -# Shutdown, Reboot, Lock Screen, and Logout - -set $power_mode "power" -bindsym $mod+Shift+q mode $power_mode -mode $power_mode { - bindsym p exec systemctl poweroff - bindsym r exec systemctl reboot - bindsym l exec $lock, mode "default" - bindsym q exec --no-startup-id i3-msg exit, mode "default" - bindsym h exec systemctl hibernate - bindsym s exec pm-suspend - - bindsym Return mode "default" - bindsym Escape mode "default" -} - -# Manual autostart -exec foot -for_window [class="foot"] move to workspace 1: -exec firefox-esr -for_window [class="Firefox"] move to workspace 2: -exec foot --title Spotify ncspot -exec pavucontrol -for_window [title="Spotify"] move to workspace 3: -for_window [title="Volume Control"] move to workspace 3: -exec mount ~/nextcloud/ -exec keepassxc -for_window [class="KeePassXC"] move to workspace 4: -exec geary -for_window [title="Geary"] move to workspace 5: - -# Autostart stuff here -exec ~/.config/sway/bin/refresh_autostart.sh -include /etc/sway/config.d/* -include ~/.config/sway/config.d/* + # 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+space focus mode_toggle + + # Move focus to the parent container + bindsym $mod+a focus parent + + # Floating windows + for_window [window_role="pop-up"] floating enable + for_window [window_role="bubble"] floating enable + for_window [window_role="task_dialog"] floating enable + for_window [window_role="Preferences"] floating enable + + for_window [window_role="Open Files"] floating enable sticky + for_window [window_role="File Operation Progress"] floating enable sticky + for_window [window_role="Save As"] floating enable + + for_window [window_type="dialog"] floating enable + for_window [window_type="menu"] floating enable + + # + # 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+r mode "resize" + + # + # Status Bar: + # + # Read `man 5 sway-bar` for more information about this section. + bar { + position top + + # When the status_command prints a new line to stdout, swaybar updates. + # The default just shows the current date and time. + #status_command while date +'%Y-%m-%d %l:%M:%S %p'; do sleep 1; done + status_command while ~/.config/sway/bin/status.sh; do sleep 1; done + + colors { + statusline #ffffff + background #323232 + inactive_workspace #32323200 #32323200 #5c5c5c + } + } + + # Pulse Audio controls + bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume $(pacmd list-sinks |awk '/.* index:/{print $3}') +5% # Raise + bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume $(pacmd list-sinks |awk '/.* index:/{print $3}') -5% # Lower + bindsym XF86AudioMute exec pactl set-sink-mute $(pacmd list-sinks |awk '/.* index:/{print $3}') toggle # Mute + # Screen brightness controls -- # https://github.com/haikarainen/light + bindsym XF86MonBrightnessUp exec light -A 5 # increase screen brightness + bindsym XF86MonBrightnessDown exec light -U 5 # decrease screen brightness + # Keyboard brightness controls + bindsym XF86KbdBrightnessUp exec light -s $(light -L | awk '/.*kbd_backlight/ {print $1}') -A 5 # increase keyboard brightness + bindsym XF86KbdBrightnessDown exec light -s $(light -L | awk '/.*kbd_backlight/ {print $1}') -U 5 # decrease keyboard brightness + # Shutdown, Reboot, Lock Screen, and Logout + + set $power_mode "power" + bindsym $mod+Shift+q mode $power_mode + mode $power_mode { + bindsym p exec systemctl poweroff + bindsym r exec systemctl reboot + bindsym l exec $lock, mode "default" + bindsym q exec --no-startup-id i3-msg exit, mode "default" + bindsym h exec systemctl hibernate + bindsym s exec pm-suspend + + bindsym Return mode "default" + bindsym Escape mode "default" + } + + # Manual autostart + exec foot + for_window [class="foot"] move to workspace 1: + exec qutebrowser + for_window [class="qutebrowser"] move to workspace 2:爵 + exec foot --title ncspotterm ncspot + exec pavucontrol + for_window [title="ncspotterm"] move to workspace 3: + for_window [title="Volume Control"] move to workspace 3: + exec mount ~/nextcloud/ + exec keepassxc + for_window [class="KeePassXC"] move to workspace 4: + exec thunderbird + for_window [class="Thunderbird"] move to workspace 5: + + # Autostart stuff here + exec ~/.config/sway/bin/refresh_autostart.sh + include /etc/sway/config.d/* + include ~/.config/sway/config.d/* diff --git a/setup.sh b/setup.sh index 6ea1196..ed0c346 100644 --- a/setup.sh +++ b/setup.sh @@ -20,7 +20,6 @@ sudo apt install \ davfs2 \ firefox-esr \ fish \ - geary \ git \ jq \ keepassxc \ @@ -50,6 +49,7 @@ sudo apt install \ rsync \ scdoc \ sway \ + thunderbird \ wayland-protocols \ webext-keepassxc-browser \ wl-clipboard \