From c66ac873681ea2b5c40d1e7034b25e483b3f0a0d Mon Sep 17 00:00:00 2001 From: Maurizio Galli Date: Sun, 19 Mar 2023 22:43:27 +0800 Subject: [PATCH 1/5] Split default configs across multiple files --- config/sway/config | 225 ++--------------------- config/sway/config.d/50-firstboot.conf | 1 - config/sway/config.d/50-greybeard.conf | 110 ----------- config/sway/config.d/90-appearance.conf | 34 ++++ config/sway/config.d/90-audio.conf | 20 ++ config/sway/config.d/90-defaultapps.conf | 13 ++ config/sway/config.d/90-input.conf | 12 ++ config/sway/config.d/90-keybindings.conf | 166 +++++++++++++++++ config/sway/config.d/90-lockscreen.conf | 15 ++ config/sway/config.d/90-output.conf | 14 ++ config/sway/config.d/90-system.conf | 24 +++ 11 files changed, 310 insertions(+), 324 deletions(-) delete mode 100644 config/sway/config.d/50-firstboot.conf delete mode 100644 config/sway/config.d/50-greybeard.conf create mode 100644 config/sway/config.d/90-appearance.conf create mode 100644 config/sway/config.d/90-audio.conf create mode 100644 config/sway/config.d/90-defaultapps.conf create mode 100644 config/sway/config.d/90-input.conf create mode 100644 config/sway/config.d/90-keybindings.conf create mode 100644 config/sway/config.d/90-lockscreen.conf create mode 100644 config/sway/config.d/90-output.conf create mode 100644 config/sway/config.d/90-system.conf diff --git a/config/sway/config b/config/sway/config index afa7c43..1a2d746 100644 --- a/config/sway/config +++ b/config/sway/config @@ -1,220 +1,19 @@ # Default config for sway # -# Copy this to ~/.config/sway/config and edit it to your liking. -# # Read `man 5 sway` for a complete reference. - -### Variables -# -# Logo key. Use Mod1 for Alt. -set $mod Mod4 -# Home row direction keys, like vim -set $left h -set $down j -set $up k -set $right l -# Your preferred terminal emulator -set $term foot -# 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 dmenu_path | dmenu | xargs swaymsg exec -- -# it is set in config.d/50-openSUSE.conf - -### 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 -# -# Example configuration: -# -# output HDMI-A-1 resolution 1920x1080 position 1920,0 -# -# You can get the names of your outputs by running: swaymsg -t get_outputs - -### Idle configuration -# -# Example configuration: -# -# exec swayidle -w \ -# timeout 300 'swaylock -f -c 000000' \ -# timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \ -# before-sleep 'swaylock -f -c 000000' -# -# 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. - -### 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. - -### Key bindings -# -# Basics: -# - # Start a terminal - bindsym $mod+Return exec $$term - - # Kill focused window - bindsym $mod+Shift+q kill - - # Start your launcher - bindsym $mod+d exec $menu - - # 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+Shift+c reload - - # Exit sway (logs you out of your Wayland session) - bindsym $mod+Shift+e 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' -# -# 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: -# - # Switch to workspace - 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 - # 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+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 - # 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+b splith - bindsym $mod+v splitv - - # Switch the current container between different layout styles - bindsym $mod+s layout stacking - 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 -# -# 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. -# it is set in config.d/50-openSUSE.conf -#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 # -# colors { -# statusline #ffffff -# background #323232 -# inactive_workspace #32323200 #32323200 #5c5c5c -# } -#} +# Default config files are split in /etc/sway/config.d as follow: +# 90-appearance.conf +# 90-audio.conf +# 90-defaultapps.conf +# 90-input.conf +# 90-keybindings.conf +# 90-lockscreen.conf +# 90-output.conf +# 90-system.conf +# +# To override the defaults, copy the above files to ~/.config/sway/config.d/ +# and edit it to your liking. include /etc/sway/config.d/*.conf include ~/.config/sway/config.d/* diff --git a/config/sway/config.d/50-firstboot.conf b/config/sway/config.d/50-firstboot.conf deleted file mode 100644 index d77e0f4..0000000 --- a/config/sway/config.d/50-firstboot.conf +++ /dev/null @@ -1 +0,0 @@ -exec /bin/bash /usr/bin/mod-firstboot diff --git a/config/sway/config.d/50-greybeard.conf b/config/sway/config.d/50-greybeard.conf deleted file mode 100644 index 15b0b3e..0000000 --- a/config/sway/config.d/50-greybeard.conf +++ /dev/null @@ -1,110 +0,0 @@ -#### Default greybeard config for sway -# Copy this to ~/.config/sway/config.d/ -# or leave `include /etc/sway/config.d/*` -# in your local config file - -# distrobox as secondary terminal -bindsym $mod+Shift+Return exec $$term -e distrobox enter - -# wofi as application launcher, displaying icons and using dark mode -# set $menu wofi --show drun,run -I -G - -# set sway-launcher-desktop as launcher -for_window [app_id="^launcher$"] floating enable, sticky enable, resize set 30 ppt 30 ppt, border pixel 10 -set $menu exec $term -a launcher -e sway-launcher-desktop - -# greybeard wallpaper -output * bg /usr/share/wallpapers/wallpaper.png fill - -# window title colors and indicator color -client.focused "#000000" "#2d3436" "#ffffff" "#fdf6e3" "#000000" -client.unfocused "#000000" "#4d5051" "#958e8e" "#fdf6e3" "#000000" - -# Enable common options for generic touchpads -input "type:touchpad" { - tap enabled - natural_scroll enabled - middle_emulation enabled -} - -# Cycle through workspaces -bindsym $mod+tab workspace next_on_output -bindsym $mod+Shift+tab workspace prev_on_output - -# Lockscreen configuration -set $screenlock 'swaylock -f -c 000000' -# Idle configuration -exec swayidle -w \ - timeout 300 $screenlock \ - timeout 600 'swaymsg "output * dpms off"' \ - resume 'swaymsg "output * dpms on"' \ - before-sleep $screenlock - -bindsym --to-code { - $mod+b splith - $mod+v splitv -} - -# Media keys -bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle - -bindsym XF86MonBrightnessDown exec brightnessctl -q set 5%- && ( echo $((`brightnessctl get` * 100 / `brightnessctl m`)) > $SWAYSOCK.wob ) -bindsym XF86MonBrightnessUp exec brightnessctl -q set +5% && ( echo $((`brightnessctl get` * 100 / `brightnessctl m`)) > $SWAYSOCK.wob ) - -bindsym XF86AudioRaiseVolume exec pamixer --allow-boost -ui 2 && dc -e "[`pamixer --get-volume`]sM 100d `pamixer --get-volume` $SWAYSOCK.wob -bindsym XF86AudioLowerVolume exec pamixer --allow-boost -ud 2 && dc -e "[`pamixer --get-volume`]sM 100d `pamixer --get-volume` $SWAYSOCK.wob -bindsym XF86AudioMute exec pamixer --toggle-mute && ( pamixer --get-mute && echo 0 > $SWAYSOCK.wob ) - -# Media player controls -bindsym --no-warn XF86AudioPlay exec playerctl play-pause -bindsym --no-warn XF86AudioNext exec playerctl next -bindsym --no-warn XF86AudioPrev exec playerctl previous - -# -# Status Bar: -# -bar { - swaybar_command waybar -} - -# System mode menu -set $mode_system "What to do? (l) lock, (e) logout, (r) reboot, (s) suspend, (Shift+s) shutdown" -mode $mode_system { - bindsym l exec $screenlock; mode "default" - bindsym e exec swaymsg exit; mode "default" - bindsym r exec systemctl reboot; mode "default" - bindsym s exec systemctl suspend; mode "default" - bindsym Shift+s exec systemctl poweroff; mode "default" - - # back to normal: Enter or Escape - bindsym Return mode "default" - bindsym Escape mode "default" -} -unbindsym $mod+Shift+e -bindsym $mod+Shift+e mode $mode_system - -# Toggle notification bar -set $toggle_notification "swaync-client -t -sw" -bindsym $mod+Shift+n exec $toggle_notification - -set $wob wob --config /etc/sway/wob/wob.ini - -exec_always { - systemctl --user import-environment - gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' - gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita-dark' - gsettings set org.gnome.desktop.interface icon-theme 'Adwaita' - gsettings set org.gnome.desktop.interface cursor-theme 'Adwaita' - test -e $SWAYSOCK.wob || mkfifo $SWAYSOCK.wob - tail -f $SWAYSOCK.wob | $wob - swaync --style /etc/sway/swaync/style.css --config /etc/sway/swaync/config.json -} - -exec /usr/libexec/polkit-gnome-authentication-agent-1 - -# Enable Adwaita cursor theme -seat seat0 xcursor_theme Adwaita 16 - -# Use PrtSc (Print) key to take a screenshot of the entire screen and save it in $HOME -bindsym Print exec grim - diff --git a/config/sway/config.d/90-appearance.conf b/config/sway/config.d/90-appearance.conf new file mode 100644 index 0000000..b5beaff --- /dev/null +++ b/config/sway/config.d/90-appearance.conf @@ -0,0 +1,34 @@ +#### Default greybeard config for sway +# Copy this file to ~/.config/sway/config.d/ and edit it to +# your liking. +# +# Read `man 5 sway` for a complete reference. + +# Theme +exec_always { + systemctl --user import-environment + gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita-dark' + gsettings set org.gnome.desktop.interface icon-theme 'Adwaita' + gsettings set org.gnome.desktop.interface cursor-theme 'Adwaita' + test -e $SWAYSOCK.wob || mkfifo $SWAYSOCK.wob + tail -f $SWAYSOCK.wob | $wob + swaync --style /etc/sway/swaync/style.css --config /etc/sway/swaync/config.json +} + +# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/) +output * bg /usr/share/wallpapers/wallpaper.png fill + +# Status bar +bar { + swaybar_command waybar +} + +# Notification bar +set $toggle_notification "swaync-client -t -sw" +## Toggle notification bar +bindsym $mod+Shift+n exec $toggle_notification + +# Window title colors and indicator color +client.focused "#000000" "#2d3436" "#ffffff" "#fdf6e3" "#000000" +client.unfocused "#000000" "#4d5051" "#958e8e" "#fdf6e3" "#000000" + diff --git a/config/sway/config.d/90-audio.conf b/config/sway/config.d/90-audio.conf new file mode 100644 index 0000000..d88c9da --- /dev/null +++ b/config/sway/config.d/90-audio.conf @@ -0,0 +1,20 @@ +#### Default greybeard config for sway +# Copy this file to ~/.config/sway/config.d/ and edit it to +# your liking. +# +# Read `man 5 sway` for a complete reference. + +# Media keys +bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle + +bindsym XF86MonBrightnessDown exec brightnessctl -q set 5%- && ( echo $((`brightness> +bindsym XF86MonBrightnessUp exec brightnessctl -q set +5% && ( echo $((`brightnessct> + +bindsym XF86AudioRaiseVolume exec pamixer --allow-boost -ui 2 && dc -e "[`pamixer --> +bindsym XF86AudioLowerVolume exec pamixer --allow-boost -ud 2 && dc -e "[`pamixer --> +bindsym XF86AudioMute exec pamixer --toggle-mute && ( pamixer --get-mute && echo 0 >> + +# Media player controls +bindsym --no-warn XF86AudioPlay exec playerctl play-pause +bindsym --no-warn XF86AudioNext exec playerctl next +bindsym --no-warn XF86AudioPrev exec playerctl previous diff --git a/config/sway/config.d/90-defaultapps.conf b/config/sway/config.d/90-defaultapps.conf new file mode 100644 index 0000000..dc7ca80 --- /dev/null +++ b/config/sway/config.d/90-defaultapps.conf @@ -0,0 +1,13 @@ +#### Default greybeard config for sway +# Copy this file to ~/.config/sway/config.d/ and edit it to +# your liking. +# +# Read `man 5 sway` for a complete reference. + +# Your preferred terminal emulator +set $term foot + +# Set sway-launcher-desktop as launcher +for_window [app_id="^launcher$"] floating enable, sticky enable, resize set 30 ppt 30 ppt, border pixel 10 +set $menu exec $term -a launcher -e sway-launcher-desktop + diff --git a/config/sway/config.d/90-input.conf b/config/sway/config.d/90-input.conf new file mode 100644 index 0000000..3bd3c21 --- /dev/null +++ b/config/sway/config.d/90-input.conf @@ -0,0 +1,12 @@ +#### Default greybeard config for sway +# Copy this file to ~/.config/sway/config.d/ and edit it to +# your liking. +# +# Read `man 5 sway` for a complete reference. + +# Enable common options for generic touchpads +input "type:touchpad" { + tap enabled + natural_scroll enabled + middle_emulation enabled +} diff --git a/config/sway/config.d/90-keybindings.conf b/config/sway/config.d/90-keybindings.conf new file mode 100644 index 0000000..f09274d --- /dev/null +++ b/config/sway/config.d/90-keybindings.conf @@ -0,0 +1,166 @@ +#### Default greybeard config for sway +# Copy this file to ~/.config/sway/config.d/ and edit it to +# your liking. +# +# Read `man 5 sway` for a complete reference. + +# +# Basics: +# + # Logo key. Use Mod1 for Alt. + set $mod Mod4 + + # Home row direction keys, like vim + set $left h + set $down j + set $up k + set $right l + + # Start a terminal + bindsym $mod+Return exec $$term + + # Start distrobox as secondary terminal + bindsym $mod+Shift+Return exec $$term -e distrobox enter + + # Kill focused window + bindsym $mod+Shift+q kill + + # 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+Shift+c reload + + # Exit sway (logs you out of your Wayland session) + bindsym $mod+Shift+e 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' + + # Use PrtSc (Print) key to take a screenshot of the entire screen and save it in $HOME + bindsym Print exec grim# Take a screenshot using grim + +# +# 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 +# + # Cycle through workspaces + bindsym $mod+tab workspace next_on_output + bindsym $mod+Shift+tab workspace prev_on_output + + # Switch to workspace + 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 + + # 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+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 + + # 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 --to-code { + $mod+b splith + $mod+v splitv + } + + # Switch the current container between different layout styles + bindsym $mod+s layout stacking + 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 + +# +# 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" + diff --git a/config/sway/config.d/90-lockscreen.conf b/config/sway/config.d/90-lockscreen.conf new file mode 100644 index 0000000..e2aa90f --- /dev/null +++ b/config/sway/config.d/90-lockscreen.conf @@ -0,0 +1,15 @@ +#### Default greybeard config for sway +# Copy this file to ~/.config/sway/config.d/ and edit it to +# your liking. +# +# Read `man 5 sway` for a complete reference. + +# Lockscreen configuration +set $screenlock 'swaylock -f -c 000000' + +# Idle configuration +exec swayidle -w \ + timeout 300 $screenlock \ + timeout 600 'swaymsg "output * dpms off"' \ + resume 'swaymsg "output * dpms on"' \ + before-sleep $screenlock diff --git a/config/sway/config.d/90-output.conf b/config/sway/config.d/90-output.conf new file mode 100644 index 0000000..be26b24 --- /dev/null +++ b/config/sway/config.d/90-output.conf @@ -0,0 +1,14 @@ +#### Default greybeard config for sway +# Copy this file to ~/.config/sway/config.d/ and edit it to +# your liking. +# +# Read `man 5 sway` for a complete reference. + +# Example configuration: +# +# output HDMI-A-1 resolution 1920x1080 position 1920,0 +# +# You can get the names of your outputs by running: swaymsg -t get_outputs + + + diff --git a/config/sway/config.d/90-system.conf b/config/sway/config.d/90-system.conf new file mode 100644 index 0000000..47658ea --- /dev/null +++ b/config/sway/config.d/90-system.conf @@ -0,0 +1,24 @@ +#### Default greybeard config for sway +# Copy this file to ~/.config/sway/config.d/ and edit it to +# your liking. +# +# Read `man 5 sway` for a complete reference. + +# System mode menu +set $mode_system "What to do? (l) lock, (e) logout, (r) reboot, (s) suspend, (Shift+> +mode $mode_system { + bindsym l exec $screenlock; mode "default" + bindsym e exec swaymsg exit; mode "default" + bindsym r exec systemctl reboot; mode "default" + bindsym s exec systemctl suspend; mode "default" + bindsym Shift+s exec systemctl poweroff; mode "default" + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} +unbindsym $mod+Shift+e +bindsym $mod+Shift+e mode $mode_system + +# Enable Polkit agent +exec /usr/libexec/polkit-gnome-authentication-agent-1 From ff900c8cb15675d5f0cd5bbe6659afd853f9b6b7 Mon Sep 17 00:00:00 2001 From: Maurizio Galli Date: Sun, 19 Mar 2023 23:09:13 +0800 Subject: [PATCH 2/5] Restore 50-firstboot.conf accidentally deleted --- config/sway/config.d/50-firstboot.conf | 1 + 1 file changed, 1 insertion(+) create mode 100644 config/sway/config.d/50-firstboot.conf diff --git a/config/sway/config.d/50-firstboot.conf b/config/sway/config.d/50-firstboot.conf new file mode 100644 index 0000000..d77e0f4 --- /dev/null +++ b/config/sway/config.d/50-firstboot.conf @@ -0,0 +1 @@ +exec /bin/bash /usr/bin/mod-firstboot From bb5adb2bbd518c1e478bf08cdb4189fd911da638 Mon Sep 17 00:00:00 2001 From: Maurizio Galli Date: Sun, 19 Mar 2023 23:32:35 +0800 Subject: [PATCH 3/5] Move misplaced swaync keybindings to 90-keybinding.conf --- config/sway/config.d/90-appearance.conf | 5 ----- config/sway/config.d/90-keybindings.conf | 6 +++++- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/config/sway/config.d/90-appearance.conf b/config/sway/config.d/90-appearance.conf index b5beaff..079f117 100644 --- a/config/sway/config.d/90-appearance.conf +++ b/config/sway/config.d/90-appearance.conf @@ -23,11 +23,6 @@ bar { swaybar_command waybar } -# Notification bar -set $toggle_notification "swaync-client -t -sw" -## Toggle notification bar -bindsym $mod+Shift+n exec $toggle_notification - # Window title colors and indicator color client.focused "#000000" "#2d3436" "#ffffff" "#fdf6e3" "#000000" client.unfocused "#000000" "#4d5051" "#958e8e" "#fdf6e3" "#000000" diff --git a/config/sway/config.d/90-keybindings.conf b/config/sway/config.d/90-keybindings.conf index f09274d..aad3af6 100644 --- a/config/sway/config.d/90-keybindings.conf +++ b/config/sway/config.d/90-keybindings.conf @@ -40,7 +40,11 @@ # Use PrtSc (Print) key to take a screenshot of the entire screen and save it in $HOME bindsym Print exec grim# Take a screenshot using grim - + + # Notification bar + set $toggle_notification "swaync-client -t -sw" + bindsym $mod+Shift+n exec $toggle_notification + # # Moving around: # From 1cdbd7c915ce7b5644046b2a62a506e5e60db2df Mon Sep 17 00:00:00 2001 From: Maurizio Galli Date: Sun, 19 Mar 2023 23:47:52 +0800 Subject: [PATCH 4/5] Include application menu keybinding --- config/sway/config.d/90-keybindings.conf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/config/sway/config.d/90-keybindings.conf b/config/sway/config.d/90-keybindings.conf index aad3af6..de8a9f9 100644 --- a/config/sway/config.d/90-keybindings.conf +++ b/config/sway/config.d/90-keybindings.conf @@ -9,6 +9,9 @@ # # Logo key. Use Mod1 for Alt. set $mod Mod4 + + # Start your launcher + bindsym $mod+d exec $menu # Home row direction keys, like vim set $left h From d7159af8d6a0e3e766baaa0d93463e6fd6ccfb69 Mon Sep 17 00:00:00 2001 From: "Maurizio Galli (m4u)" Date: Sun, 19 Mar 2023 23:58:49 +0800 Subject: [PATCH 5/5] Update 90-audio.conf Fixed strings that were not properly parsed. --- config/sway/config.d/90-audio.conf | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/config/sway/config.d/90-audio.conf b/config/sway/config.d/90-audio.conf index d88c9da..43fed01 100644 --- a/config/sway/config.d/90-audio.conf +++ b/config/sway/config.d/90-audio.conf @@ -7,12 +7,12 @@ # Media keys bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle -bindsym XF86MonBrightnessDown exec brightnessctl -q set 5%- && ( echo $((`brightness> -bindsym XF86MonBrightnessUp exec brightnessctl -q set +5% && ( echo $((`brightnessct> +bindsym XF86MonBrightnessDown exec brightnessctl -q set 5%- && ( echo $((`brightnessctl get` * 100 / `brightnessctl m`)) > $SWAYSOCK.wob ) +bindsym XF86MonBrightnessUp exec brightnessctl -q set +5% && ( echo $((`brightnessctl get` * 100 / `brightnessctl m`)) > $SWAYSOCK.wob ) -bindsym XF86AudioRaiseVolume exec pamixer --allow-boost -ui 2 && dc -e "[`pamixer --> -bindsym XF86AudioLowerVolume exec pamixer --allow-boost -ud 2 && dc -e "[`pamixer --> -bindsym XF86AudioMute exec pamixer --toggle-mute && ( pamixer --get-mute && echo 0 >> +bindsym XF86AudioRaiseVolume exec pamixer --allow-boost -ui 2 && dc -e "[`pamixer --get-volume`]sM 100d `pamixer --get-volume` $SWAYSOCK.wob +bindsym XF86AudioLowerVolume exec pamixer --allow-boost -ud 2 && dc -e "[`pamixer --get-volume`]sM 100d `pamixer --get-volume` $SWAYSOCK.wob +bindsym XF86AudioMute exec pamixer --toggle-mute && ( pamixer --get-mute && echo 0 > $SWAYSOCK.wob ) # Media player controls bindsym --no-warn XF86AudioPlay exec playerctl play-pause