diff --git a/env/.config/dunst/dunstrc b/env/.config/dunst/dunstrc index 0128360..73b8868 100644 --- a/env/.config/dunst/dunstrc +++ b/env/.config/dunst/dunstrc @@ -5,7 +5,7 @@ # Which monitor should the notifications be displayed on. # i keep having to change this because hyprland ◔̯◔ - monitor = 1 + monitor = 0 # Display notification on focused monitor. Possible modes are: # mouse: follow mouse pointer diff --git a/env/.config/hypr/hyprlock.conf b/env/.config/hypr/hyprlock.conf new file mode 100644 index 0000000..2869351 --- /dev/null +++ b/env/.config/hypr/hyprlock.conf @@ -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. 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 = 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 +} diff --git a/env/.config/waybar/config.jsonc b/env/.config/waybar/config.jsonc index bce5021..578860f 100644 --- a/env/.config/waybar/config.jsonc +++ b/env/.config/waybar/config.jsonc @@ -134,10 +134,15 @@ "custom/power": { "tooltip": false, - "on-click": "wlogout &", + "on-click": "~/.config/wlogout/wlogout.sh", "format": "⏻" }, + "custom/lock": { + "format": "", + "on-click": "hyprlock" + }, + "custom/docker": { "format": "{}", "return-type": "json", diff --git a/env/.config/waybar/style.css b/env/.config/waybar/style.css index 8c9e107..8dd6b69 100644 --- a/env/.config/waybar/style.css +++ b/env/.config/waybar/style.css @@ -160,4 +160,4 @@ button { #custom-weather.error { color: #263640; /* Red */ -} \ No newline at end of file +} diff --git a/env/.config/wlogout/layout b/env/.config/wlogout/layout new file mode 100644 index 0000000..9f88d6a --- /dev/null +++ b/env/.config/wlogout/layout @@ -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" +} diff --git a/env/.config/wlogout/style.css b/env/.config/wlogout/style.css new file mode 100644 index 0000000..7e961e3 --- /dev/null +++ b/env/.config/wlogout/style.css @@ -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")); +} + diff --git a/env/.config/wlogout/wlogout.sh b/env/.config/wlogout/wlogout.sh new file mode 100755 index 0000000..c13945c --- /dev/null +++ b/env/.config/wlogout/wlogout.sh @@ -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}") & diff --git a/env/.local/bin/system/start-scripts/autostart.sh b/env/.local/bin/system/start-scripts/autostart.sh index 2ccbc04..68e9ac4 100755 --- a/env/.local/bin/system/start-scripts/autostart.sh +++ b/env/.local/bin/system/start-scripts/autostart.sh @@ -60,7 +60,7 @@ fi if [ "$(cat /etc/hostname)" == "Kasino" ]; then if [ -z "$(pgrep vesktop)" ]; then sleep 2s - flatpak run dev.vencord.Vesktop & disown + vesktop & disown fi if [ -z "$(pgrep gajim)" ]; then diff --git a/env/.markdownlint.yaml b/env/.markdownlint.yaml index f127da0..a0e9d23 100644 --- a/env/.markdownlint.yaml +++ b/env/.markdownlint.yaml @@ -1,5 +1,8 @@ MD013: false # max line length MD007: false # ul indendtation MD025: false # single h1 title +# i like no spaces around headings +MD022: false # spacing around heading +MD032: false # spacing before lines MD012: maximum: 2 # maximum blank lines diff --git a/runs-all/get-reqs-arch.sh b/runs-all/get-reqs-arch.sh index 8b2a18e..f54e322 100755 --- a/runs-all/get-reqs-arch.sh +++ b/runs-all/get-reqs-arch.sh @@ -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 fcitx5-im fcitx5-mozc networkmanager openvpn networkmanager-openvpn openresolv +$sudo pacman -S wlogout hyprlock # for vr $sudo pacman -S cli11 eigen glib2 glib2-devel nlohmann-json patch fcitx5-im-emoji-picker-git