From ce6991ddc78f16c22bf16239d162850bddb5c387 Mon Sep 17 00:00:00 2001 From: iamBadgers Date: Fri, 25 Apr 2025 23:37:39 -0700 Subject: [PATCH] asdf --- hyprland/.config/hypr/hyprland.conf | 23 +- hyprland/.config/hypr/keybinds.conf | 12 +- hyprlock/.config/hypr/hyprlock.conf | 6 +- swaync/.config/swaync/config.json | 93 ++++++++ swaync/.config/swaync/style.css | 342 ++++++++++++++++++++++++++++ waybar/.config/waybar/config | 28 ++- waybar/.config/waybar/style.css | 6 + 7 files changed, 500 insertions(+), 10 deletions(-) create mode 100644 swaync/.config/swaync/config.json create mode 100644 swaync/.config/swaync/style.css diff --git a/hyprland/.config/hypr/hyprland.conf b/hyprland/.config/hypr/hyprland.conf index b7db051..a5bb83a 100644 --- a/hyprland/.config/hypr/hyprland.conf +++ b/hyprland/.config/hypr/hyprland.conf @@ -23,6 +23,7 @@ # See https://wiki.hyprland.org/Configuring/Monitors/ monitor= DP-1, 5120x1440@120, 0x0, 1 +monitor= DP-2, preferred, auto-left, 1, transform, 3 ################### @@ -49,10 +50,10 @@ $powerMenu = rofi -show power-menu -modi power-menu:rofi-power-menu -theme round exec-once = waybar exec-once = hyprpaper exec-once = hypridle -exec-once = systemctl --user start polkit-gnome - +exec-once = systemctl --user start hyprpolkitagent +exec-once = swaync exec-once = steam -silent -exec-once = [workspace 4] flatpak run com.discordapp.Discord +exec-once = [workspace 4] flatpak run com.discordapp.Discord --start-minimized ############################# @@ -99,6 +100,9 @@ decoration { active_opacity = 1.0 inactive_opacity = 1.0 + dim_inactive = true + dim_strength = .10 + shadow { enabled = true range = 4 @@ -200,6 +204,10 @@ input { } } +cursor { + no_hardware_cursors = 1 +} + # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more device { @@ -232,3 +240,12 @@ windowrulev2 = suppressevent maximize, class:.* # Fix some dragging issues with XWayland windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 +#Multi-monitor Worksapces +workspace = 1, monitor: DP-1 +workspace = 2, monitor: DP-1 +workspace = 3, monitor: DP-1 +workspace = 4, monitor: DP-1 +workspace = 5, monitor: DP-2 +workspace = 6, monitor: DP-2 +workspace = 7, monitor: DP-2 +workspace = 8, monitor: DP-2 diff --git a/hyprland/.config/hypr/keybinds.conf b/hyprland/.config/hypr/keybinds.conf index 17800c4..3d4b612 100644 --- a/hyprland/.config/hypr/keybinds.conf +++ b/hyprland/.config/hypr/keybinds.conf @@ -9,17 +9,23 @@ bind = ALT, F4, killactive, bind = $mainMod, M, exit, bind = $mainMod, E, exec, $fileManager bind = $mainMod, V, togglefloating, +bind = $mainMod + CTRL, V, fullscreen, 0 bind = $mainMod, R, exec, $menu bind = $mainMod, P, pseudo, # dwindle bind = $mainMod, J, togglesplit, # dwindle bind = ALT, TAB, exec, $windowSwitcher bind = $mainMod, F12, exec, $powerMenu +bind = $mainMod, F, exec, kitty lf # Move focus with mainMod + arrow keys bind = $mainMod, left, movefocus, l bind = $mainMod, right, movefocus, r bind = $mainMod, up, movefocus, u bind = $mainMod, down, movefocus, d +bind = $mainMod ALT, left, swapwindow, l +bind = $mainMod ALT, right, swapwindow, r +bind = $mainMod ALT, up, swapwindow, u +bind = $mainMod ALT, down, swapwindow, d # Switch workspaces with mainMod + [0-9] bind = $mainMod, 1, workspace, 1 @@ -32,6 +38,8 @@ bind = $mainMod, 7, workspace, 7 bind = $mainMod, 8, workspace, 8 bind = $mainMod, 9, workspace, 9 bind = $mainMod, 0, workspace, 10 +bind = $mainMod CTRL, left, workspace, r-1 +bind = $mainMod CTRL, right, workspace, r+1 # Move active window to a workspace with mainMod + SHIFT + [0-9] bind = $mainMod SHIFT, 1, movetoworkspace, 1 @@ -44,6 +52,8 @@ bind = $mainMod SHIFT, 7, movetoworkspace, 7 bind = $mainMod SHIFT, 8, movetoworkspace, 8 bind = $mainMod SHIFT, 9, movetoworkspace, 9 bind = $mainMod SHIFT, 0, movetoworkspace, 10 +bind = $mainMod SHIFT, left, movetoworkspace, r-1 +bind = $mainMod SHIFT, right, movetoworkspace, r+1 # Example special workspace (scratchpad) bind = $mainMod, S, togglespecialworkspace, magic @@ -69,4 +79,4 @@ bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%- bindl = , XF86AudioNext, exec, playerctl next bindl = , XF86AudioPause, exec, playerctl play-pause bindl = , XF86AudioPlay, exec, playerctl play-pause -bindl = , XF86AudioPrev, exec, playerctl previous \ No newline at end of file +bindl = , XF86AudioPrev, exec, playerctl previous diff --git a/hyprlock/.config/hypr/hyprlock.conf b/hyprlock/.config/hypr/hyprlock.conf index ebaa446..fd767d6 100644 --- a/hyprlock/.config/hypr/hyprlock.conf +++ b/hyprlock/.config/hypr/hyprlock.conf @@ -1,11 +1,11 @@ background { - monitor = DP-1 + monitor = path = $HOME/.config/hypr/backgrounds/mask.jpg blur_passes = 0 } input-field { - monitor = DP-1 + monitor = size = 20%, 5% outline_thickness = 3 inner_color = rgba(0, 0, 0, 1.0) # no fill @@ -21,4 +21,4 @@ input-field { position = 0, -150 halign = center valign = center -} \ No newline at end of file +} diff --git a/swaync/.config/swaync/config.json b/swaync/.config/swaync/config.json new file mode 100644 index 0000000..0fdd67f --- /dev/null +++ b/swaync/.config/swaync/config.json @@ -0,0 +1,93 @@ +{ + "$schema": "/etc/xdg/swaync/configSchema.json", + "positionX": "right", + "positionY": "top", + "layer": "overlay", + "control-center-layer": "top", + "layer-shell": true, + "layer-shell-cover-screen": true, + "cssPriority": "application", + "control-center-margin-top": 0, + "control-center-margin-bottom": 0, + "control-center-margin-right": 0, + "control-center-margin-left": 0, + "notification-2fa-action": true, + "notification-inline-replies": false, + "notification-icon-size": 64, + "notification-body-image-height": 100, + "notification-body-image-width": 200, + "timeout": 10, + "timeout-low": 5, + "timeout-critical": 0, + "fit-to-screen": true, + "relative-timestamps": true, + "control-center-width": 500, + "control-center-height": 600, + "notification-window-width": 500, + "keyboard-shortcuts": true, + "image-visibility": "when-available", + "transition-time": 200, + "hide-on-clear": false, + "hide-on-action": true, + "text-empty": "No Notifications", + "script-fail-notify": true, + "scripts": { + "example-script": { + "exec": "echo 'Do something...'", + "urgency": "Normal" + }, + "example-action-script": { + "exec": "echo 'Do something actionable!'", + "urgency": "Normal", + "run-on": "action" + } + }, + "notification-visibility": { + "example-name": { + "state": "muted", + "urgency": "Low", + "app-name": "Spotify" + } + }, + "widgets": [ + "inhibitors", + "title", + "mpris", + "notifications" + ], + "widget-config": { + "inhibitors": { + "text": "Inhibitors", + "button-text": "Clear All", + "clear-all-button": true + }, + "title": { + "text": "Notifications", + "clear-all-button": true, + "button-text": "Clear All" + }, + "dnd": { + "text": "Do Not Disturb" + }, + "label": { + "max-lines": 5, + "text": "Label Text" + }, + "mpris": { + "image-size": 96, + "image-radius": 12, + "blacklist": [] + }, + "buttons-grid": { + "actions": [ + { + "label": "直", + "type": "toggle", + "active": true, + "command": "sh -c '[[ $SWAYNC_TOGGLE_STATE == true ]] && nmcli radio wifi on || nmcli radio wifi off'", + "update-command": "sh -c '[[ $(nmcli radio wifi) == \"enabled\" ]] && echo true || echo false'" + } + ] + } + } +} diff --git a/swaync/.config/swaync/style.css b/swaync/.config/swaync/style.css new file mode 100644 index 0000000..ce5aa67 --- /dev/null +++ b/swaync/.config/swaync/style.css @@ -0,0 +1,342 @@ +* { + all: unset; + font-size: 14px; + font-family: "Ubuntu Nerd Font"; + transition: 200ms; +} + +trough highlight { + background: #cdd6f4; +} + +scale trough { + margin: 0rem 1rem; + background-color: #313244; + min-height: 8px; + min-width: 70px; +} + +slider { + background-color: #89b4fa; +} + +.floating-notifications.background .notification-row .notification-background { + box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.8), inset 0 0 0 1px #313244; + border-radius: 12.6px; + margin: 18px; + background-color: #1e1e2e; + color: #cdd6f4; + padding: 0; +} + +.floating-notifications.background .notification-row .notification-background .notification { + padding: 7px; + border-radius: 12.6px; +} + +.floating-notifications.background .notification-row .notification-background .notification.critical { + box-shadow: inset 0 0 7px 0 #f38ba8; +} + +.floating-notifications.background .notification-row .notification-background .notification .notification-content { + margin: 7px; +} + +.floating-notifications.background .notification-row .notification-background .notification .notification-content .summary { + color: #cdd6f4; +} + +.floating-notifications.background .notification-row .notification-background .notification .notification-content .time { + color: #a6adc8; +} + +.floating-notifications.background .notification-row .notification-background .notification .notification-content .body { + color: #cdd6f4; +} + +.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * { + min-height: 3.4em; +} + +.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action { + border-radius: 7px; + color: #cdd6f4; + background-color: #313244; + box-shadow: inset 0 0 0 1px #45475a; + margin: 7px; +} + +.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action:hover { + box-shadow: inset 0 0 0 1px #45475a; + background-color: #313244; + color: #cdd6f4; +} + +.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action:active { + box-shadow: inset 0 0 0 1px #45475a; + background-color: #74c7ec; + color: #cdd6f4; +} + +.floating-notifications.background .notification-row .notification-background .close-button { + margin: 7px; + padding: 2px; + border-radius: 6.3px; + color: #1e1e2e; + background-color: #f38ba8; +} + +.floating-notifications.background .notification-row .notification-background .close-button:hover { + background-color: #eba0ac; + color: #1e1e2e; +} + +.floating-notifications.background .notification-row .notification-background .close-button:active { + background-color: #f38ba8; + color: #1e1e2e; +} + +.control-center { + box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.8), inset 0 0 0 1px #313244; + border-radius: 12.6px; + margin: 18px; + background-color: #1e1e2e; + color: #cdd6f4; + padding: 14px; +} + +.control-center .widget-title > label { + color: #cdd6f4; + font-size: 1.3em; +} + +.control-center .widget-title button { + border-radius: 7px; + color: #cdd6f4; + background-color: #313244; + box-shadow: inset 0 0 0 1px #45475a; + padding: 8px; +} + +.control-center .widget-title button:hover { + box-shadow: inset 0 0 0 1px #45475a; + background-color: #585b70; + color: #cdd6f4; +} + +.control-center .widget-title button:active { + box-shadow: inset 0 0 0 1px #45475a; + background-color: #74c7ec; + color: #1e1e2e; +} + +.control-center .notification-row .notification-background { + border-radius: 7px; + color: #cdd6f4; + background-color: #313244; + box-shadow: inset 0 0 0 1px #45475a; + margin-top: 14px; +} + +.control-center .notification-row .notification-background .notification { + padding: 7px; + border-radius: 7px; +} + +.control-center .notification-row .notification-background .notification.critical { + box-shadow: inset 0 0 7px 0 #f38ba8; +} + +.control-center .notification-row .notification-background .notification .notification-content { + margin: 7px; +} + +.control-center .notification-row .notification-background .notification .notification-content .summary { + color: #cdd6f4; +} + +.control-center .notification-row .notification-background .notification .notification-content .time { + color: #a6adc8; +} + +.control-center .notification-row .notification-background .notification .notification-content .body { + color: #cdd6f4; +} + +.control-center .notification-row .notification-background .notification > *:last-child > * { + min-height: 3.4em; +} + +.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action { + border-radius: 7px; + color: #cdd6f4; + background-color: #11111b; + box-shadow: inset 0 0 0 1px #45475a; + margin: 7px; +} + +.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action:hover { + box-shadow: inset 0 0 0 1px #45475a; + background-color: #313244; + color: #cdd6f4; +} + +.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action:active { + box-shadow: inset 0 0 0 1px #45475a; + background-color: #74c7ec; + color: #cdd6f4; +} + +.control-center .notification-row .notification-background .close-button { + margin: 7px; + padding: 2px; + border-radius: 6.3px; + color: #1e1e2e; + background-color: #eba0ac; +} + +.close-button { + border-radius: 6.3px; +} + +.control-center .notification-row .notification-background .close-button:hover { + background-color: #f38ba8; + color: #1e1e2e; +} + +.control-center .notification-row .notification-background .close-button:active { + background-color: #f38ba8; + color: #1e1e2e; +} + +.control-center .notification-row .notification-background:hover { + box-shadow: inset 0 0 0 1px #45475a; + background-color: #7f849c; + color: #cdd6f4; +} + +.control-center .notification-row .notification-background:active { + box-shadow: inset 0 0 0 1px #45475a; + background-color: #74c7ec; + color: #cdd6f4; +} + +.notification.critical progress { + background-color: #f38ba8; +} + +.notification.low progress, +.notification.normal progress { + background-color: #89b4fa; +} + +.control-center-dnd { + margin-top: 5px; + border-radius: 8px; + background: #313244; + border: 1px solid #45475a; + box-shadow: none; +} + +.control-center-dnd:checked { + background: #313244; +} + +.control-center-dnd slider { + background: #45475a; + border-radius: 8px; +} + +.widget-dnd { + margin: 0px; + font-size: 1.1rem; +} + +.widget-dnd > switch { + font-size: initial; + border-radius: 8px; + background: #313244; + border: 1px solid #45475a; + box-shadow: none; +} + +.widget-dnd > switch:checked { + background: #313244; +} + +.widget-dnd > switch slider { + background: #45475a; + border-radius: 8px; + border: 1px solid #6c7086; +} + +.widget-mpris .widget-mpris-player { + background: #313244; + padding: 7px; +} + +.widget-mpris .widget-mpris-title { + font-size: 1.2rem; +} + +.widget-mpris .widget-mpris-subtitle { + font-size: 0.8rem; +} + +.widget-menubar > box > .menu-button-bar > button > label { + font-size: 3rem; + padding: 0.5rem 2rem; +} + +.widget-menubar > box > .menu-button-bar > :last-child { + color: #f38ba8; +} + +.power-buttons button:hover, +.powermode-buttons button:hover, +.screenshot-buttons button:hover { + background: #313244; +} + +.control-center .widget-label > label { + color: #cdd6f4; + font-size: 2rem; +} + +.widget-buttons-grid { + padding-top: 1rem; +} + +.widget-buttons-grid > flowbox > flowboxchild > button label { + font-size: 2.5rem; +} + +.widget-volume { + padding-top: 1rem; +} + +.widget-volume label { + font-size: 1.5rem; + color: #74c7ec; +} + +.widget-volume trough highlight { + background: #74c7ec; +} + +.widget-backlight trough highlight { + background: #f9e2af; +} + +.widget-backlight label { + font-size: 1.5rem; + color: #f9e2af; +} + +.widget-backlight .KB { + padding-bottom: 1rem; +} + +.image { + padding-right: 0.5rem; +} diff --git a/waybar/.config/waybar/config b/waybar/.config/waybar/config index 50eb2da..7e9d7f2 100644 --- a/waybar/.config/waybar/config +++ b/waybar/.config/waybar/config @@ -1,10 +1,10 @@ { - "margin-top" : 5, + "margin-top" : 5, "margin-left": 10, "margin-right": 10, "height" : 30, "modules-left": [ - "hyprland/window" + "hyprland/window", ], "modules-center": [ "hyprland/workspaces", @@ -17,6 +17,7 @@ "memory", "temperature", "clock", + "custom/notification", "custom/power", ], "hyprland/window": { @@ -62,6 +63,7 @@ "tooltip-format": "{ifname} via {gwaddr} ", "format-linked": "{ifname} (No IP) ", "format-disconnected": " ⚠ ", + "on-click": "nm-connection-editor", }, "pulseaudio": { "format": "{icon} {volume}%", @@ -85,5 +87,25 @@ "custom/power": { "format": "⏻", "on-click": "rofi -show power-menu -modi power-menu:rofi-power-menu -theme rounded-purple-dark", - } + }, + "custom/notification": { + "tooltip": false, + "format": "{icon}", + "format-icons": { + "notification": "", + "none": "", + "dnd-notification": "", + "dnd-none": "", + "inhibited-notification": "", + "inhibited-none": "", + "dnd-inhibited-notification": "", + "dnd-inhibited-none": "" + }, + "return-type": "json", + "exec-if": "which swaync-client", + "exec": "swaync-client -swb", + "on-click": "swaync-client -t -sw", + "on-click-right": "swaync-client -d -sw", + "escape": true + }, } diff --git a/waybar/.config/waybar/style.css b/waybar/.config/waybar/style.css index fc44605..bb017f8 100644 --- a/waybar/.config/waybar/style.css +++ b/waybar/.config/waybar/style.css @@ -150,3 +150,9 @@ label:focus { #pulseaudio.muted { color: @text; } + +#custom-notification { + color: #ffffff; + padding-left: 10px; + padding-right: 10px; +}