27 lines
620 B
Bash
Executable File
27 lines
620 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -Eeuo pipefail
|
|
|
|
USER_HOME="$HOME"
|
|
MATRIX_SCRIPT="$USER_HOME/.config/swaylock/matrix.sh"
|
|
ALACRITTY_CONF="$USER_HOME/.config/swaylock/alacritty-matrix.toml"
|
|
|
|
# 1) Spawn matrix per monitor
|
|
mapfile -t MONS < <(hyprctl -j monitors | jq -r '.[].name')
|
|
for mon in "${MONS[@]}"; do
|
|
hyprctl dispatch focusmonitor "$mon"
|
|
printf "Monitor: $mon\n"
|
|
sleep 0.06
|
|
kitty \
|
|
--class matrix \
|
|
--title "matrix-$mon" \
|
|
--start-as fullscreen \
|
|
bash -lc "$MATRIX_SCRIPT" &
|
|
sleep 0.15
|
|
done
|
|
|
|
# 2) Lock screen (blocks until unlock)
|
|
swaylock
|
|
|
|
# 3) Tear down matrix
|
|
pkill -f "$MATRIX_SCRIPT" || true
|