added hyprlock, wlogout, and wlogout script.

This commit is contained in:
iceyrazor 2025-06-10 18:49:54 -05:00
parent fafe4746e4
commit a67c7f6bab
10 changed files with 210 additions and 4 deletions

View File

@ -5,7 +5,7 @@
# Which monitor should the notifications be displayed on. # Which monitor should the notifications be displayed on.
# i keep having to change this because hyprland ◔̯◔ # i keep having to change this because hyprland ◔̯◔
monitor = 1 monitor = 0
# Display notification on focused monitor. Possible modes are: # Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer # mouse: follow mouse pointer

106
env/.config/hypr/hyprlock.conf vendored Normal file
View File

@ -0,0 +1,106 @@
# 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. <b> or <i> 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 = B612
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
}

View File

@ -134,10 +134,15 @@
"custom/power": { "custom/power": {
"tooltip": false, "tooltip": false,
"on-click": "wlogout &", "on-click": "~/.config/wlogout/wlogout.sh",
"format": "⏻" "format": "⏻"
}, },
"custom/lock": {
"format": "",
"on-click": "hyprlock"
},
"custom/docker": { "custom/docker": {
"format": "{}", "format": "{}",
"return-type": "json", "return-type": "json",

View File

@ -160,4 +160,4 @@ button {
#custom-weather.error { #custom-weather.error {
color: #263640; /* Red */ color: #263640; /* Red */
} }

24
env/.config/wlogout/layout vendored Normal file
View File

@ -0,0 +1,24 @@
{
"label" : "shutdown",
"action" : "poweroff",
"text" : "Shutdown",
"keybind" : "s"
}
{
"label" : "reboot",
"action" : "reboot",
"text" : "Reboot",
"keybind" : "r"
}
{
"label" : "logout",
"action" : "loginctl kill-session $XDG_SESSION_ID",
"text" : "Logout",
"keybind" : "e"
}
{
"label" : "lock",
"action" : "hyprlock",
"text" : "Lock",
"keybind" : "l"
}

52
env/.config/wlogout/style.css vendored Normal file
View File

@ -0,0 +1,52 @@
/* ----------- 💫 https://github.com/JaKooLit 💫 -------- */
@define-color foreground #be9eda;
@define-color color6 #834ABD;
window {
font-family: b612;
font-size: 16pt;
color: @foreground; /* text */
background-color: rgba(24, 27, 32, 0.2);
}
button {
background-repeat: no-repeat;
background-position: center;
background-size: 20%;
background-color: transparent;
animation: gradient_f 20s ease-in infinite;
transition: all 0.3s ease-in;
box-shadow: 0 0 10px 2px transparent;
border-radius: 36px;
margin: 10px;
}
button:focus {
box-shadow: none;
background-size : 20%;
}
button:hover {
background-size: 50%;
box-shadow: 0 0 10px 3px rgba(0,0,0,.4);
background-color: @color6;
color: transparent;
transition: all 0.3s cubic-bezier(.55, 0.0, .28, 1.682), box-shadow 0.5s ease-in;
}
#lock {
background-image: image(url("/usr/share/wlogout/icons/lock.png"), url("/usr/local/share/wlogout/icons/lock.png"));
}
#logout {
background-image: image(url("/usr/share/wlogout/icons/logout.png"), url("/usr/local/share/wlogout/icons/logout.png"));
}
#shutdown {
background-image: image(url("/usr/share/wlogout/icons/shutdown.png"), url("/usr/local/share/wlogout/icons/shutdown.png"));
}
#reboot {
background-image: image(url("/usr/share/wlogout/icons/reboot.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
}

15
env/.config/wlogout/wlogout.sh vendored Executable file
View File

@ -0,0 +1,15 @@
#!/usr/bin/env bash
# https://github.com/zDyanTB/HyprNova/blob/master/.config/hypr/scripts/wlogout.sh
A_1080=1000
B_1080=1000
# Check if wlogout is already running
if pgrep -x "wlogout" > /dev/null; then
pkill -x "wlogout"
exit 0
fi
# Detect monitor resolution and scaling factor
resolution=$(hyprctl -j monitors | jq -r '.[] | select(.focused==true) | .height / .scale' | awk -F'.' '{print $1}')
hypr_scale=$(hyprctl -j monitors | jq -r '.[] | select(.focused==true) | .scale')
wlogout --protocol layer-shell -b 4 -T $(awk "BEGIN {printf \"%.0f\", $A_1080 * 1080 * $hypr_scale / $resolution}") -B $(awk "BEGIN {printf \"%.0f\", $B_1080 * 1080 * $hypr_scale / $resolution}") &

View File

@ -60,7 +60,7 @@ fi
if [ "$(cat /etc/hostname)" == "Kasino" ]; then if [ "$(cat /etc/hostname)" == "Kasino" ]; then
if [ -z "$(pgrep vesktop)" ]; then if [ -z "$(pgrep vesktop)" ]; then
sleep 2s sleep 2s
flatpak run dev.vencord.Vesktop & disown vesktop & disown
fi fi
if [ -z "$(pgrep gajim)" ]; then if [ -z "$(pgrep gajim)" ]; then

View File

@ -1,5 +1,8 @@
MD013: false # max line length MD013: false # max line length
MD007: false # ul indendtation MD007: false # ul indendtation
MD025: false # single h1 title MD025: false # single h1 title
# i like no spaces around headings
MD022: false # spacing around heading
MD032: false # spacing before lines
MD012: MD012:
maximum: 2 # maximum blank lines maximum: 2 # maximum blank lines

View File

@ -9,6 +9,7 @@ echo GETTING CURRENT REQS ARCH
$sudo pacman -S xorg-server libxft libxinerama pipewire-pulse pipewire-alsa pipewire-jack qpwgraph wezterm ttf-inconsolata sddm wayland hyprland waybar xdg-desktop-portal xdg-desktop-portal-hyprland xdg-desktop-portal-gtk zsh vlc v4l2loopback-dkms qt6-wayland qt5-wayland ntfs-3g gnome-keyring inetutils doas cowsay fastfetch yt-dlp ttf-jetbrains-mono ttf-jetbrains-mono-nerd noto-fonts-emoji font-manager atuin gvfs-mtp bat lxappearance cmus grim btop htop rxvt-unicode lf inetutils openrgb reflector steam rofi-wayland ripgrep $sudo pacman -S xorg-server libxft libxinerama pipewire-pulse pipewire-alsa pipewire-jack qpwgraph wezterm ttf-inconsolata sddm wayland hyprland waybar xdg-desktop-portal xdg-desktop-portal-hyprland xdg-desktop-portal-gtk zsh vlc v4l2loopback-dkms qt6-wayland qt5-wayland ntfs-3g gnome-keyring inetutils doas cowsay fastfetch yt-dlp ttf-jetbrains-mono ttf-jetbrains-mono-nerd noto-fonts-emoji font-manager atuin gvfs-mtp bat lxappearance cmus grim btop htop rxvt-unicode lf inetutils openrgb reflector steam rofi-wayland ripgrep
$sudo pacman -S fcitx5-im fcitx5-mozc networkmanager openvpn networkmanager-openvpn openresolv $sudo pacman -S fcitx5-im fcitx5-mozc networkmanager openvpn networkmanager-openvpn openresolv
$sudo pacman -S wlogout hyprlock
# for vr # for vr
$sudo pacman -S cli11 eigen glib2 glib2-devel nlohmann-json patch fcitx5-im-emoji-picker-git $sudo pacman -S cli11 eigen glib2 glib2-devel nlohmann-json patch fcitx5-im-emoji-picker-git