From 09ac7c17a331050e0469614582423e91a637fa0b Mon Sep 17 00:00:00 2001 From: opalvault Date: Tue, 8 Feb 2022 21:48:31 -0800 Subject: [PATCH] fixed bug --- .config/sway/config | 252 +++++++++++++++++----------------- desktop.org | 319 ++++++++++++++++++++++---------------------- 2 files changed, 288 insertions(+), 283 deletions(-) diff --git a/.config/sway/config b/.config/sway/config index 0a3a680..c8983cc 100644 --- a/.config/sway/config +++ b/.config/sway/config @@ -1,32 +1,3 @@ -# Notifications -exec_always --no-startup-id dunst - -# Clamshell Mode Script -exec_always ~/dotfiles/.config/sway/clamshell.sh - -# flash focus -exec --no-startup-id flashfocus - -# udiskie - auto usb mounting -exec --no-startup-id /usr/bin/udiskie - -# polkit -exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 - -# Network Manager tray applet -exec /usr/bin/nm-applet --indicator - -# Bluetooth manager tray applet -exec /usr/bin/blueman-applet - -# Gtk -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 - -# Wlsunset (Night Light) -exec_always wlsunset -lsd 47.6, -122.3 -t 3200 -T 6500 - # Directional Keys set $left h set $down j @@ -42,104 +13,17 @@ set $term alacritty # Application Launcher set $menu killall wofi || wofi -set $opacity 0.98 -for_window [class=".*"] opacity $opacity -for_window [app_id=".*"] opacity $opacity - -# Window Borders -default_border none -default_floating_border none - -# Gaps -smart_gaps on -gaps inner 10 -gaps outer 10 - -for_window [app_id="galendae"] floating enable, sticky enable, move position cursor, move down 35 - -# Idle configuration -# This will lock your screen after 300 seconds of inactivity, then turn off -# your displays after another 300 seconds, and turn your screens back on when -# resumed. It will also lock your screen before your computer goes to sleep. -exec swayidle -w \ - timeout 300 'swaylock -f' \ - timeout 1200 'swaymsg "output * dpms off"' \ - resume 'swaymsg "output * dpms on"' \ - timeout \ - before-sleep 'swaylock -f' - -### Input configuration -# -# Example configuration: -# -# input "2:14:SynPS/2_Synaptics_TouchPad" { -# dwt enabled -# tap enabled -# natural_scroll enabled -# middle_emulation enabled -# } -# -# You can get the names of your inputs by running: swaymsg -t get_inputs -# Read `man 5 sway-input` for more information about this section. -input type:keyboard { - # Capslock key should work as escape key - # See /usr/share/X11/xkb/rules/xorg.lst for options - xkb_options caps:escape - - repeat_delay 250 - repeat_rate 45 -} - -# Hide mouse cursor after inactivity -seat * hide_cursor 4000 - -set $laptop eDP-1 -bindswitch --reload --locked lid:on output $laptop disable -bindswitch --reload --locked lid:off output $laptop enable - -# Monitors -# You can get the names of your outputs by running: swaymsg -t get_outputs -output eDP-1 pos 0 0 res 1920x1200 -output DP-5 pos 1920 0 res 3440x1440 - -# Wallpaper -output DP-5 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 -output DP-6 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 -output eDP-1 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 -output HDMI-A-1 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 - -# Assign workspaces to numbers -set $ws1 number 1 -set $ws2 number 2 -set $ws3 number 3 -set $ws4 number 4 -set $ws5 number 5 -set $ws6 number 6 - -# Switch to workspace -bindsym $mod+1 workspace $ws1 -bindsym $mod+2 workspace $ws2 -bindsym $mod+3 workspace $ws3 -bindsym $mod+4 workspace $ws4 -bindsym $mod+5 workspace $ws5 -bindsym $mod+6 workspace $ws6 - -# Move focused container to workspace -bindsym $mod+Shift+1 move container to workspace $ws1 -bindsym $mod+Shift+2 move container to workspace $ws2 -bindsym $mod+Shift+3 move container to workspace $ws3 -bindsym $mod+Shift+4 move container to workspace $ws4 -bindsym $mod+Shift+5 move container to workspace $ws5 -bindsym $mod+Shift+6 move container to workspace $ws6 - # Start a terminal bindsym $mod+Return exec $term +# Start wofi +bindsym $mod+d exec $menu + # Kill focused window bindsym $mod+Shift+q kill # Lock SwayWM -bindsym Control+Shift+l exec swaylock +bindsym Control+Shift+l exec swaylock # Change normal to inverse to use left mouse button for resizing and right # mouse button for dragging. @@ -155,8 +39,8 @@ bindsym $mod+Shift+x exec swaymsg -r exit 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 - -# Media playerctl + +# Media playerctl bindsym XF86AudioNext exec playerctl next bindsym XF86AudioPrev exec playerctl previous bindsym XF86AudioPlay exec playerctl play-pause @@ -249,6 +133,130 @@ mode "resize" { } bindsym $mod+r mode "resize" +# Screenshot (Grimshot) +bindsym $mod+g exec grimshot save active +bindsym $mod+Shift+g exec grimshot save area +bindsym $mod+Mod1+g exec grimshot save output +bindsym $mod+Ctrl+g exec grimshot save window + +# Notifications +exec_always --no-startup-id dunst + +# Clamshell Mode Script +exec_always ~/dotfiles/.config/sway/clamshell.sh + +# flash focus +exec --no-startup-id flashfocus + +# udiskie - auto usb mounting +exec --no-startup-id /usr/bin/udiskie + +# polkit +exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 + +# Network Manager tray applet +exec /usr/bin/nm-applet --indicator + +# Bluetooth manager tray applet +exec /usr/bin/blueman-applet + +# Gtk +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 + +# Wlsunset (Night Light) +exec_always wlsunset -l 47.6 -L -122.3 -t 3200 -T 6500 + +set $opacity 0.98 +for_window [class=".*"] opacity $opacity +for_window [app_id=".*"] opacity $opacity + +# Window Borders +default_border none +default_floating_border none + +# Gaps +smart_gaps on +gaps inner 10 +gaps outer 10 + +for_window [app_id="galendae"] floating enable, sticky enable, move position cursor, move down 35 + +# Idle configuration +# This will lock your screen after 300 seconds of inactivity, then turn off +# your displays after another 300 seconds, and turn your screens back on when +# resumed. It will also lock your screen before your computer goes to sleep. +exec swayidle -w \ + timeout 300 'swaylock -f' \ + timeout 1200 'swaymsg "output * dpms off"' \ + resume 'swaymsg "output * dpms on"' \ + timeout \ + before-sleep 'swaylock -f' + +### Input configuration +# +# Example configuration: +# +# input "2:14:SynPS/2_Synaptics_TouchPad" { +# dwt enabled +# tap enabled +# natural_scroll enabled +# middle_emulation enabled +# } +# +# You can get the names of your inputs by running: swaymsg -t get_inputs +# Read `man 5 sway-input` for more information about this section. +input type:keyboard { + # Capslock key should work as escape key + # See /usr/share/X11/xkb/rules/xorg.lst for options + xkb_options caps:escape + + repeat_delay 250 + repeat_rate 45 +} + +# Hide mouse cursor after inactivity +seat * hide_cursor 4000 + +set $laptop eDP-1 +bindswitch --reload --locked lid:on output $laptop disable +bindswitch --reload --locked lid:off output $laptop enable + +# Monitors +# You can get the names of your outputs by running: swaymsg -t get_outputs +output eDP-1 pos 0 0 res 1920x1200 +output DP-5 pos 1920 0 res 3440x1440 + +# Wallpaper +output DP-5 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 +output eDP-1 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 +output HDMI-A-1 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 + +# Assign workspaces to numbers +set $ws1 number 1 +set $ws2 number 2 +set $ws3 number 3 +set $ws4 number 4 +set $ws5 number 5 +set $ws6 number 6 + +# Switch to workspace +bindsym $mod+1 workspace $ws1 +bindsym $mod+2 workspace $ws2 +bindsym $mod+3 workspace $ws3 +bindsym $mod+4 workspace $ws4 +bindsym $mod+5 workspace $ws5 +bindsym $mod+6 workspace $ws6 + +# Move focused container to workspace +bindsym $mod+Shift+1 move container to workspace $ws1 +bindsym $mod+Shift+2 move container to workspace $ws2 +bindsym $mod+Shift+3 move container to workspace $ws3 +bindsym $mod+Shift+4 move container to workspace $ws4 +bindsym $mod+Shift+5 move container to workspace $ws5 +bindsym $mod+Shift+6 move container to workspace $ws6 + # Status Bar: bar { swaybar_command waybar diff --git a/desktop.org b/desktop.org index 5227ba3..045f18c 100644 --- a/desktop.org +++ b/desktop.org @@ -5,37 +5,6 @@ This =.org= document is where I store all of my small time user-level configurat I prefer to use programs that I can extend the functionality of via configuration files and source code. * Sway -** Autostart -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -# Notifications -exec_always --no-startup-id dunst - -# Clamshell Mode Script -exec_always ~/dotfiles/.config/sway/clamshell.sh - -# flash focus -exec --no-startup-id flashfocus - -# udiskie - auto usb mounting -exec --no-startup-id /usr/bin/udiskie - -# polkit -exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 - -# Network Manager tray applet -exec /usr/bin/nm-applet --indicator - -# Bluetooth manager tray applet -exec /usr/bin/blueman-applet - -# Gtk -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 - -# Wlsunset (Night Light) -exec_always wlsunset -lsd 47.6, -122.3 -t 3200 -T 6500 -#+end_src ** Variables #+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes # Directional Keys @@ -53,137 +22,20 @@ set $term alacritty # Application Launcher set $menu killall wofi || wofi #+end_src -** Opacity -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -set $opacity 0.98 -for_window [class=".*"] opacity $opacity -for_window [app_id=".*"] opacity $opacity -#+end_src -** Borders/Gaps -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -# Window Borders -default_border none -default_floating_border none - -# Gaps -smart_gaps on -gaps inner 10 -gaps outer 10 -#+end_src -** App Window Behavior -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -for_window [app_id="galendae"] floating enable, sticky enable, move position cursor, move down 35 -#+end_src -** Idle Behavior -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -# Idle configuration -# This will lock your screen after 300 seconds of inactivity, then turn off -# your displays after another 300 seconds, and turn your screens back on when -# resumed. It will also lock your screen before your computer goes to sleep. -exec swayidle -w \ - timeout 300 'swaylock -f' \ - timeout 1200 'swaymsg "output * dpms off"' \ - resume 'swaymsg "output * dpms on"' \ - timeout \ - before-sleep 'swaylock -f' - -#+end_src -** Input -*** Keyboard -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -### Input configuration -# -# Example configuration: -# -# input "2:14:SynPS/2_Synaptics_TouchPad" { -# dwt enabled -# tap enabled -# natural_scroll enabled -# middle_emulation enabled -# } -# -# You can get the names of your inputs by running: swaymsg -t get_inputs -# Read `man 5 sway-input` for more information about this section. -input type:keyboard { - # Capslock key should work as escape key - # See /usr/share/X11/xkb/rules/xorg.lst for options - xkb_options caps:escape - - repeat_delay 250 - repeat_rate 45 -} -#+end_src -*** Mouse -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -# Hide mouse cursor after inactivity -seat * hide_cursor 4000 -#+end_src -** Clamshell Mode -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -set $laptop eDP-1 -bindswitch --reload --locked lid:on output $laptop disable -bindswitch --reload --locked lid:off output $laptop enable -#+end_src - -When reloading sway while using clamshell mode, the displays may reset (i.e. enable the displays). We use a bash script to mitigate this: -#+begin_src shell :tangle ~/dotfiles/.config/sway/clamshell.sh :mkdirp yes -#!/usr/bin/bash -if grep -q open /proc/acpi/button/lid/LID/state; then - swaymsg output enable -else - swaymsg output disable -fi -#+end_src -** Wallpaper & Monitor(s) -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -# Monitors -# You can get the names of your outputs by running: swaymsg -t get_outputs -output eDP-1 pos 0 0 res 1920x1200 -output DP-5 pos 1920 0 res 3440x1440 - -# Wallpaper -output DP-5 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 -output DP-6 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 -output eDP-1 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 -output HDMI-A-1 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 -#+end_src -** Workspaces -#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes -# Assign workspaces to numbers -set $ws1 number 1 -set $ws2 number 2 -set $ws3 number 3 -set $ws4 number 4 -set $ws5 number 5 -set $ws6 number 6 - -# Switch to workspace -bindsym $mod+1 workspace $ws1 -bindsym $mod+2 workspace $ws2 -bindsym $mod+3 workspace $ws3 -bindsym $mod+4 workspace $ws4 -bindsym $mod+5 workspace $ws5 -bindsym $mod+6 workspace $ws6 - -# Move focused container to workspace -bindsym $mod+Shift+1 move container to workspace $ws1 -bindsym $mod+Shift+2 move container to workspace $ws2 -bindsym $mod+Shift+3 move container to workspace $ws3 -bindsym $mod+Shift+4 move container to workspace $ws4 -bindsym $mod+Shift+5 move container to workspace $ws5 -bindsym $mod+Shift+6 move container to workspace $ws6 -#+end_src ** Keybindings *** General #+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes # Start a terminal bindsym $mod+Return exec $term +# Start wofi +bindsym $mod+d exec $menu + # Kill focused window bindsym $mod+Shift+q kill # Lock SwayWM -bindsym Control+Shift+l exec swaylock +bindsym Control+Shift+l exec swaylock # Change normal to inverse to use left mouse button for resizing and right # mouse button for dragging. @@ -193,7 +45,7 @@ floating_modifier $mod normal bindsym $mod+Shift+c reload # Exit sway (logs you out of your Wayland session) -bindsym $mod+Shift+x exec swaymsg -r exit +bindsym $mod+Shift+x exec swaymsg -r exit #+end_src *** Media/Brightness #+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes @@ -201,8 +53,8 @@ bindsym $mod+Shift+x exec swaymsg -r exit 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 - -# Media playerctl + +# Media playerctl bindsym XF86AudioNext exec playerctl next bindsym XF86AudioPrev exec playerctl previous bindsym XF86AudioPlay exec playerctl play-pause @@ -213,7 +65,6 @@ bindsym XF86MonBrightnessDown exec light -U 10 && notify-send "󰃞 Light" "Brig #+end_src *** Navigation & Focus #+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes - # Moving around: # Move your focus around bindsym $mod+$left focus left @@ -301,11 +152,8 @@ mode "resize" { bindsym $mod+r mode "resize" #+end_src -*** Applications -#+begin_src shell -# Start wofi -bindsym $mod+d exec $menu - +*** Screenshot +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes # Screenshot (Grimshot) bindsym $mod+g exec grimshot save active bindsym $mod+Shift+g exec grimshot save area @@ -319,6 +167,155 @@ bindsym $mod+Shift+e exec swaynag -t custom -m 'Do you wish to fully reload your # Turn the system off bindsym $mod+Shift+p exec swaynag -t custom -m 'What action would you like to perform?' -b 'Shutdown' 'poweroff' -b 'Restart' 'poweroff --reboot' -b 'Suspend' 'systemctl suspend' #+end_src +** Autostart +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +# Notifications +exec_always --no-startup-id dunst + +# Clamshell Mode Script +exec_always ~/dotfiles/.config/sway/clamshell.sh + +# flash focus +exec --no-startup-id flashfocus + +# udiskie - auto usb mounting +exec --no-startup-id /usr/bin/udiskie + +# polkit +exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 + +# Network Manager tray applet +exec /usr/bin/nm-applet --indicator + +# Bluetooth manager tray applet +exec /usr/bin/blueman-applet + +# Gtk +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 + +# Wlsunset (Night Light) +exec_always wlsunset -l 47.6 -L -122.3 -t 3200 -T 6500 +#+end_src +** Opacity +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +set $opacity 0.98 +for_window [class=".*"] opacity $opacity +for_window [app_id=".*"] opacity $opacity +#+end_src +** Borders/Gaps +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +# Window Borders +default_border none +default_floating_border none + +# Gaps +smart_gaps on +gaps inner 10 +gaps outer 10 +#+end_src +** App Window Behavior +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +for_window [app_id="galendae"] floating enable, sticky enable, move position cursor, move down 35 +#+end_src +** Idle Behavior +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +# Idle configuration +# This will lock your screen after 300 seconds of inactivity, then turn off +# your displays after another 300 seconds, and turn your screens back on when +# resumed. It will also lock your screen before your computer goes to sleep. +exec swayidle -w \ + timeout 300 'swaylock -f' \ + timeout 1200 'swaymsg "output * dpms off"' \ + resume 'swaymsg "output * dpms on"' \ + timeout \ + before-sleep 'swaylock -f' +#+end_src +** Input +*** Keyboard +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +### Input configuration +# +# Example configuration: +# +# input "2:14:SynPS/2_Synaptics_TouchPad" { +# dwt enabled +# tap enabled +# natural_scroll enabled +# middle_emulation enabled +# } +# +# You can get the names of your inputs by running: swaymsg -t get_inputs +# Read `man 5 sway-input` for more information about this section. +input type:keyboard { + # Capslock key should work as escape key + # See /usr/share/X11/xkb/rules/xorg.lst for options + xkb_options caps:escape + + repeat_delay 250 + repeat_rate 45 +} +#+end_src +*** Mouse +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +# Hide mouse cursor after inactivity +seat * hide_cursor 4000 +#+end_src +** Clamshell Mode +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +set $laptop eDP-1 +bindswitch --reload --locked lid:on output $laptop disable +bindswitch --reload --locked lid:off output $laptop enable +#+end_src + +When reloading sway while using clamshell mode, the displays may reset (i.e. enable the displays). We use a bash script to mitigate this: +#+begin_src shell :tangle ~/dotfiles/.config/sway/clamshell.sh :mkdirp yes +#!/usr/bin/bash +if grep -q open /proc/acpi/button/lid/LID/state; then + swaymsg output eDP-1 enable +else + swaymsg output eDP-1 disable +fi +#+end_src +** Wallpaper & Monitor(s) +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +# Monitors +# You can get the names of your outputs by running: swaymsg -t get_outputs +output eDP-1 pos 0 0 res 1920x1200 +output DP-5 pos 1920 0 res 3440x1440 + +# Wallpaper +output DP-5 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 +output eDP-1 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 +output HDMI-A-1 bg /home/opal/dotfiles/.config/wallpapers/3.jpg fill #050402 +#+end_src +** Workspaces +#+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes +# Assign workspaces to numbers +set $ws1 number 1 +set $ws2 number 2 +set $ws3 number 3 +set $ws4 number 4 +set $ws5 number 5 +set $ws6 number 6 + +# Switch to workspace +bindsym $mod+1 workspace $ws1 +bindsym $mod+2 workspace $ws2 +bindsym $mod+3 workspace $ws3 +bindsym $mod+4 workspace $ws4 +bindsym $mod+5 workspace $ws5 +bindsym $mod+6 workspace $ws6 + +# Move focused container to workspace +bindsym $mod+Shift+1 move container to workspace $ws1 +bindsym $mod+Shift+2 move container to workspace $ws2 +bindsym $mod+Shift+3 move container to workspace $ws3 +bindsym $mod+Shift+4 move container to workspace $ws4 +bindsym $mod+Shift+5 move container to workspace $ws5 +bindsym $mod+Shift+6 move container to workspace $ws6 +#+end_src ** Status Bar #+begin_src shell :tangle ~/dotfiles/.config/sway/config :mkdirp yes # Status Bar: