diff --git a/.config/README.md b/.config/README.md index a4463e6..d0c11fd 100644 --- a/.config/README.md +++ b/.config/README.md @@ -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 diff --git a/.config/hypr/config/keybinds.conf b/.config/hypr/config/keybinds.conf index 743ad8a..499baf8 100644 --- a/.config/hypr/config/keybinds.conf +++ b/.config/hypr/config/keybinds.conf @@ -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 ======= diff --git a/.config/hypr/config/windowrules.conf b/.config/hypr/config/windowrules.conf index fa59a24..878fea6 100644 --- a/.config/hypr/config/windowrules.conf +++ b/.config/hypr/config/windowrules.conf @@ -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 diff --git a/.config/swaylock/alacritty-matrix.toml b/.config/swaylock/alacritty-matrix.toml new file mode 100644 index 0000000..8130185 --- /dev/null +++ b/.config/swaylock/alacritty-matrix.toml @@ -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"] + diff --git a/.config/swaylock/config b/.config/swaylock/config new file mode 100644 index 0000000..9f2e177 --- /dev/null +++ b/.config/swaylock/config @@ -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 diff --git a/.config/swaylock/lockscript.sh b/.config/swaylock/lockscript.sh new file mode 100755 index 0000000..ff91bce --- /dev/null +++ b/.config/swaylock/lockscript.sh @@ -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" diff --git a/.config/swaylock/matrix.sh b/.config/swaylock/matrix.sh new file mode 100755 index 0000000..833bdeb --- /dev/null +++ b/.config/swaylock/matrix.sh @@ -0,0 +1,4 @@ + +#!/bin/bash +sleep 0.03 +cmatrix