From a0ade97e52b43db87e7c0c62872b96e72cd2f06f Mon Sep 17 00:00:00 2001 From: Thomas Forgione Date: Fri, 20 Jun 2025 21:15:08 +0200 Subject: [PATCH] Better hypridle conf --- hypr/hypridle.conf | 19 ++++++++ hypr/hyprland.conf | 6 +++ hypr/hyprlock.conf | 107 +++++++++++++++++++++++++++++++++++++++++++++ waybar/config | 13 +++++- 4 files changed, 144 insertions(+), 1 deletion(-) create mode 100644 hypr/hypridle.conf create mode 100644 hypr/hyprlock.conf diff --git a/hypr/hypridle.conf b/hypr/hypridle.conf new file mode 100644 index 0000000..5a35b93 --- /dev/null +++ b/hypr/hypridle.conf @@ -0,0 +1,19 @@ +# sample hypridle.conf +# for more configuration options, refer https://wiki.hyprland.org/Hypr-Ecosystem/hypridle + +general { + lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances. + before_sleep_cmd = loginctl lock-session # lock before suspend. + after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display. +} + +listener { + timeout = 300 # 5min. + on-timeout = loginctl lock-session # lock screen when timeout has passed. +} + +listener { + timeout = 330 # 5.5min. + on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed. + on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired. +} diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 54373b1..393567a 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -40,6 +40,7 @@ $social = firefox "http://jdb.localhost/todo.html" "https://web.telegram.org" "h exec-once = $hyprscript stat exec-once = hyprpaper +exec-once = hypridle exec-once = nm-applet exec-once = flameshot exec-once = blueberry-tray @@ -172,6 +173,8 @@ misc { force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :( focus_on_activate = true + mouse_move_enables_dpms = true + key_press_enables_dpms = true } @@ -248,6 +251,9 @@ bind = $mainMod, C, exec, alacritty -e numbat bind = $mainMod, P, exec, pavucontrol bind = $mainMod, B, exec, blueberry +bind = $mainMod, L, exec, sleep 0.5s && hyprctl dispatch dpms off +bind = $mainMod SHIFT, L, exec, loginctl lock-session && sleep 0.5s && (pidof hyprlock || hyprlock) && hyprctl dispatch dpms off + bind = $mainMod SHIFT, M, exec, sleep 0.5s && wtype "thomas@forgione.fr" bind = $mainMod SHIFT, code:48, exec, sleep 0.5s && wtype "thomas@polymny.studio" diff --git a/hypr/hyprlock.conf b/hypr/hyprlock.conf new file mode 100644 index 0000000..eed85da --- /dev/null +++ b/hypr/hyprlock.conf @@ -0,0 +1,107 @@ +# sample hyprlock.conf +# for more configuration options, refer https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock +# +# rendered text in all widgets supports pango markup (e.g. or tags) +# ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#general-remarks +# +# shortcuts to clear password buffer: ESC, Ctrl+U, Ctrl+Backspace +# +# you can get started by copying this config to ~/.config/hypr/hyprlock.conf +# + +$font = Monospace + +general { + hide_cursor = false +} + +# uncomment to enable fingerprint authentication +# auth { +# fingerprint { +# enabled = true +# ready_message = Scan fingerprint to unlock +# present_message = Scanning... +# retry_delay = 250 # in milliseconds +# } +# } + +animations { + enabled = true + bezier = linear, 1, 1, 0, 0 + animation = fadeIn, 1, 5, linear + animation = fadeOut, 1, 5, linear + animation = inputFieldDots, 1, 2, linear +} + +background { + monitor = + path = screenshot + blur_passes = 3 +} + +input-field { + monitor = + size = 20%, 5% + outline_thickness = 3 + inner_color = rgba(0, 0, 0, 0.0) # no fill + + outer_color = rgba(33ccffee) rgba(00ff99ee) 45deg + check_color = rgba(00ff99ee) rgba(ff6633ee) 120deg + fail_color = rgba(ff6633ee) rgba(ff0066ee) 40deg + + font_color = rgb(143, 143, 143) + fade_on_empty = false + rounding = 15 + + font_family = $font + placeholder_text = Input password... + fail_text = $PAMFAIL + + # uncomment to use a letter instead of a dot to indicate the typed password + # dots_text_format = * + # dots_size = 0.4 + dots_spacing = 0.3 + + # uncomment to use an input indicator that does not show the password length (similar to swaylock's input indicator) + # hide_input = true + + position = 0, -20 + halign = center + valign = center +} + +# TIME +label { + monitor = + text = $TIME # ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#variable-substitution + font_size = 90 + font_family = $font + + position = -30, 0 + halign = right + valign = top +} + +# DATE +label { + monitor = + text = cmd[update:60000] date +"%A, %d %B %Y" # update every 60 seconds + font_size = 25 + font_family = $font + + position = -30, -150 + halign = right + valign = top +} + +label { + monitor = + text = $LAYOUT[en,ru] + font_size = 24 + onclick = hyprctl switchxkblayout all next + + position = 250, -20 + halign = center + valign = center +} + diff --git a/waybar/config b/waybar/config index 2287d34..72f8d2c 100644 --- a/waybar/config +++ b/waybar/config @@ -57,13 +57,24 @@ "28": "8", "29": "9", "30": "0", + "31": "1", + "32": "2", + "33": "3", + "34": "4", + "35": "5", + "36": "6", + "37": "7", + "38": "8", + "39": "9", + "40": "0", }, "on-click": "activate", "sort-by-number": true, "persistent-workspaces": { "eDP-1": [11, 12, 13, 14, 15, 16, 17, 18, 19, 20], "DP-3": [11, 12, 13, 14, 15, 16, 17, 18, 19, 20], - "DP-2": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30] + "DP-2": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30], + "HDMI-A-1": [31, 32, 33, 34, 35, 36, 37, 38, 39, 40] }, "show-special": true },