adds matrix effect and style to swaylock

This commit is contained in:
2025-07-03 14:42:01 +02:00
parent f45424899d
commit b7fc65e62d
7 changed files with 205 additions and 3 deletions

View File

@ -31,13 +31,14 @@ This README contains all the necessary applications and dependencies required to
- **Hyprpicker**: Color picker (Super + P)
- **Waypaper**: Wallpaper management
- **Wallust**: Color scheme generation
- **cmatrix** & **swaylock**: Matrix style screen lock
## Core Dependencies
## Core Dependencies5
Install all packages:
```bash
yay -S hyprland hyprpaper hyprshot hyprpicker waybar mako swaylock swayidle grim slurp swappy alacritty tofi dolphin blueman-applet fcitx5 nm-applet polkit-kde-agent wob wl-screenrec ffmpeg wireplumber pulseaudio playerctl brightnessctl btop xsensors wl-paste xclip cliphist wl-copy waypaper wallust gnome-calculator ttf-hack
yay -S hyprland hyprpaper hyprshot hyprpicker waybar mako swaylock swayidle grim slurp swappy alacritty tofi dolphin blueman-applet fcitx5 nm-applet polkit-kde-agent wob wl-screenrec ffmpeg wireplumber pulseaudio playerctl brightnessctl btop xsensors wl-paste xclip cliphist wl-copy waypaper wallust gnome-calculator ttf-hack cmatrix swaylock
```
## Required Packages

View File

@ -43,7 +43,7 @@ bindd = , XF86AudioPrev, Previous track, exec, playerctl previous
bindel = , XF86MonBrightnessUp, exec, brightnessctl s +5% #Increases brightness 5%
bindel = , XF86MonBrightnessDown, exec, brightnessctl s 5%- #Decreases brightness 5%
bindd = $mainMod SHIFT, P, Runs the calculator application, exec, gnome-calculator
bindd = $mainMod, L, Lock the screen, exec, swaylock-fancy -e -K -p 10 -f Hack-Regular
bindd = $mainMod, L, Lock the screen, exec, ~/.config/swaylock/lockscript.sh
bindd = $mainMod, O, Reload/restarts Waybar, exec, killall -SIGUSR2 waybar
# ======= Window Actions =======

View File

@ -66,3 +66,6 @@ layerrule = animation fade 50%, wallpaper
windowrule = float,class:^(Zotero)$,title:^(Citation Dialog)$
windowrule = center,class:^(Zotero)$,title:^(Citation Dialog)$
windowrule = noanim,class:^(Zotero)$,title:^(Citation Dialog)$
windowrule = fullscreen, class:matrix
windowrule = opacity 0.8, class:matrix

View File

@ -0,0 +1,139 @@
[env]
TERM = "xterm-256color"
WINIT_X11_SCALE_FACTOR = "1"
[window]
dynamic_padding = true
decorations = "full"
title = "Alacritty"
opacity = 0.3
decorations_theme_variant = "Dark"
[window.dimensions]
columns = 100
lines = 30
[window.class]
instance = "Alacritty"
general = "Alacritty"
[scrolling]
history = 10000
multiplier = 4
[font]
size = 11
[font.normal]
family = "monospace"
style = "Regular"
[font.bold]
family = "monospace"
style = "Bold"
[font.italic]
family = "monospace"
style = "Italic"
[font.bold_italic]
family = "monospace"
style = "Bold Italic"
[selection]
semantic_escape_chars = ",│`|:\"' ()[]{}<>\t"
save_to_clipboard = true
[cursor]
style = "Underline"
vi_mode_style = "None"
unfocused_hollow = true
thickness = 0.15
[mouse]
hide_when_typing = true
[[mouse.bindings]]
mouse = "Middle"
action = "PasteSelection"
[keyboard]
[[keyboard.bindings]]
key = "Paste"
action = "Paste"
[[keyboard.bindings]]
key = "Copy"
action = "Copy"
[[keyboard.bindings]]
key = "L"
mods = "Control"
action = "ClearLogNotice"
[[keyboard.bindings]]
key = "L"
mods = "Control"
mode = "~Vi"
chars = "\f"
[[keyboard.bindings]]
key = "PageUp"
mods = "Shift"
mode = "~Alt"
action = "ScrollPageUp"
[[keyboard.bindings]]
key = "PageDown"
mods = "Shift"
mode = "~Alt"
action = "ScrollPageDown"
[[keyboard.bindings]]
key = "Home"
mods = "Shift"
mode = "~Alt"
action = "ScrollToTop"
[[keyboard.bindings]]
key = "End"
mods = "Shift"
mode = "~Alt"
action = "ScrollToBottom"
[[keyboard.bindings]]
key = "V"
mods = "Control|Shift"
action = "Paste"
[[keyboard.bindings]]
key = "C"
mods = "Control|Shift"
action = "Copy"
[[keyboard.bindings]]
key = "F"
mods = "Control|Shift"
action = "SearchForward"
[[keyboard.bindings]]
key = "B"
mods = "Control|Shift"
action = "SearchBackward"
[[keyboard.bindings]]
key = "C"
mods = "Control|Shift"
mode = "Vi"
action = "ClearSelection"
[[keyboard.bindings]]
key = "Key0"
mods = "Control"
action = "ResetFontSize"
[general]
live_config_reload = true
working_directory = "None"
import = ["/home/michaelb/.config/alacritty/colors.toml"]

33
.config/swaylock/config Normal file
View File

@ -0,0 +1,33 @@
show-failed-attempts
clock
color=00000000
indicator
indicator-radius=100
indicator-thickness=1
line-color=00000000
ring-color=00000000
inside-color=00000000
key-hl-color=ffffff88
separator-color=00000000
text-color=ffffff88
text-caps-lock-color=""
line-ver-color=00000000
ring-ver-color=00000000
inside-ver-color=00000000
text-ver-color=ffffff88
ring-wrong-color=00000000
text-wrong-color=ffffff88
inside-wrong-color=00000000
inside-clear-color=00000000
text-clear-color=ffffff88
ring-clear-color=00000000
line-clear-color=00000000
line-wrong-color=00000000
bs-hl-color=ffffff88
grace=2
grace-no-mouse
grace-no-touch
datestr=%a, %B %e
timestr=%I:%M %p
fade-in=0.2
ignore-empty-password

22
.config/swaylock/lockscript.sh Executable file
View File

@ -0,0 +1,22 @@
#!/usr/bin/env bash
USER_HOME="/home/michaelb"
MATRIX_SCRIPT="$USER_HOME/.config/swaylock/matrix.sh"
ALACRITTY_CONF="$USER_HOME/.config/swaylock/alacritty-matrix.toml"
mtrx_command="alacritty \
--config-file \"$ALACRITTY_CONF\" \
--class matrix \
-e \"$MATRIX_SCRIPT\""
# 1) Spawn Matrix windows per-monitor
screens=$(hyprctl -j monitors | jq length)
for (( i = -1; i < screens; i++ )); do
hyprctl dispatch focusmonitor $i
eval $mtrx_command &
done
# 2) Lock (blocks until unlock)
swaylock
# 3) Tear down Matrix
pkill -f "$MATRIX_SCRIPT"

4
.config/swaylock/matrix.sh Executable file
View File

@ -0,0 +1,4 @@
#!/bin/bash
sleep 0.03
cmatrix