From c8d8e3a7d7e20a6add62e1fb1ac784761de72a58 Mon Sep 17 00:00:00 2001 From: Dominik Agres Date: Tue, 28 Oct 2025 15:37:56 +0100 Subject: [PATCH] lock script, styling --- sway/config | 20 +++++++++++--------- sway/scripts/lock-sway-instant.sh | 9 +++++++++ sway/scripts/lock-sway.sh | 10 ++++++++++ sway/scripts/status.sh | 2 +- 4 files changed, 31 insertions(+), 10 deletions(-) create mode 100755 sway/scripts/lock-sway-instant.sh create mode 100755 sway/scripts/lock-sway.sh diff --git a/sway/config b/sway/config index 178e79d..bc05a26 100644 --- a/sway/config +++ b/sway/config @@ -5,7 +5,7 @@ set $down j set $up k set $right l set $term alacritty -set $menu wmenu-run +set $menu wmenu-run -l 5 # Font font pango:MesloLGL Nerd Font Mono 10 @@ -17,14 +17,8 @@ output * bg /home/agres/.config/sway/wallpaper/wallpaper.jpg fill gaps inner 2 gaps outer 2 -# exec swayidle -w \ -# timeout 300 'swaylock -f -c 000000' \ -# timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power 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. +# Screen Locker +exec_always /home/agres/.config/sway/scripts/lock-sway.sh # Key bindings bindsym $mod+Return exec $term @@ -33,6 +27,7 @@ gaps outer 2 floating_modifier $mod normal bindsym $mod+Shift+r reload 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' + bindsym $mod+q exec /home/agres/.config/sway/scripts/lock-sway-instant.sh # Moving around: bindsym $mod+$left focus left @@ -143,5 +138,12 @@ output eDP-1 { scale_filter linear } +# Opacity Settings +for_window [app_id="Alacritty"] opacity 0.98 + +# Border Colors +client.focused #00b5af #00b5af #fdf6e3 #073642 +client.focused_inactive #073642 #073642 #fdf6e3 #073642 +client.unfocused #073642 #073642 #fdf6e3 #073642 include /etc/sway/config.d/* diff --git a/sway/scripts/lock-sway-instant.sh b/sway/scripts/lock-sway-instant.sh new file mode 100755 index 0000000..0eeb804 --- /dev/null +++ b/sway/scripts/lock-sway-instant.sh @@ -0,0 +1,9 @@ +#!/usr/bin/env bash +set -euo pipefail + +IMG_PATH="${XDG_RUNTIME_DIR:-/tmp}/lock.png" + +grim -t png "$IMG_PATH" +magick "$IMG_PATH" -blur 0x12 "$IMG_PATH" +swaylock -f -i "$IMG_PATH" + diff --git a/sway/scripts/lock-sway.sh b/sway/scripts/lock-sway.sh new file mode 100755 index 0000000..cddb0ff --- /dev/null +++ b/sway/scripts/lock-sway.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +set -euo pipefail + +IMG_PATH="${XDG_RUNTIME_DIR:-/tmp}/lock.png" + +exec swayidle -w \ + timeout 30 "grim -t png \"$IMG_PATH\" && magick \"$IMG_PATH\" -blur 0x12 \"$IMG_PATH\" && swaylock -f -i \"$IMG_PATH\"" \ + timeout 600 'swaymsg "output * power off"' \ + resume 'swaymsg "output * power on"' \ + before-sleep "grim -t png \"$IMG_PATH\" && magick \"$IMG_PATH\" -blur 0x12 \"$IMG_PATH\" && swaylock -f -i \"$IMG_PATH\"" diff --git a/sway/scripts/status.sh b/sway/scripts/status.sh index 9abc528..6fc9596 100755 --- a/sway/scripts/status.sh +++ b/sway/scripts/status.sh @@ -4,5 +4,5 @@ cpu=$(grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {printf " bat=$(cat /sys/class/power_supply/macsmc-battery/capacity 2>/dev/null || echo "N/A") time=$(date "+%d.%m %H:%M:%S") -echo "CPU: $cpu | MEM: $mem | BAT: $bat% | $time" +echo "$USER | CPU: $cpu | MEM: $mem | BAT: $bat% | $time"