diff options
| author | Don Williams <don.e.williams@gmail.com> | 2026-08-28 20:53:38 -0400 |
|---|---|---|
| committer | Pinapelz <yukais@pinapelz.com> | 2026-08-29 21:41:57 -0700 |
| commit | 52a4303cdd1cbd474d4ff5ee833bb705b8d099df (patch) | |
| tree | 5c800db00c25f01386de9e4eda19b1372fe42d8c | |
| parent | 7b8e57dad69facd776788c69f2456260428483dd (diff) | |
Added theming for nwg-dock-hyprland
Signed-off-by: Don Williams <don.e.williams@gmail.com>
On branch development
Your branch is up to date with 'origin/development'.
Changes to be committed:
modified: CHANGELOG.md
modified: config/hypr/configs/Keybinds.conf
modified: config/hypr/configs/system_keybinds.lua
new file: config/hypr/scripts/Dock.sh
modified: config/hypr/scripts/KeyHints.sh
modified: config/hypr/scripts/Refresh.sh
new file: config/nwg-dock-hyprland/style.css
new file: config/nwg-dock-hyprland/wallust/colors-wallust.css
new file: config/wallust/templates/colors-nwg-dock.css
modified: config/wallust/wallust-v4.toml
modified: config/wallust/wallust.toml
modified: docs/Keybinds.md
modified: scripts/lib_copy.sh
| -rw-r--r-- | CHANGELOG.md | 1 | ||||
| -rw-r--r-- | config/hypr/configs/Keybinds.conf | 1 | ||||
| -rw-r--r-- | config/hypr/configs/system_keybinds.lua | 1 | ||||
| -rwxr-xr-x | config/hypr/scripts/Dock.sh | 66 | ||||
| -rwxr-xr-x | config/hypr/scripts/KeyHints.sh | 1 | ||||
| -rwxr-xr-x | config/hypr/scripts/Refresh.sh | 5 | ||||
| -rw-r--r-- | config/nwg-dock-hyprland/style.css | 43 | ||||
| -rw-r--r-- | config/nwg-dock-hyprland/wallust/colors-wallust.css | 12 | ||||
| -rw-r--r-- | config/wallust/templates/colors-nwg-dock.css | 12 | ||||
| -rw-r--r-- | config/wallust/wallust-v4.toml | 3 | ||||
| -rw-r--r-- | config/wallust/wallust.toml | 3 | ||||
| -rw-r--r-- | docs/Keybinds.md | 1 | ||||
| -rw-r--r-- | scripts/lib_copy.sh | 2 |
13 files changed, 150 insertions, 1 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index eb7630fb..ec72f125 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ ## Added: +- `nwg-dock-hyprland` that themes with wallpaper - LUA script `float.all.samesizze.lua`script - `SUPER + CTRL + SPACE` to activate - sets the sizes based on number of windows and resolution diff --git a/config/hypr/configs/Keybinds.conf b/config/hypr/configs/Keybinds.conf index 9fa00a63..3ff5308c 100644 --- a/config/hypr/configs/Keybinds.conf +++ b/config/hypr/configs/Keybinds.conf @@ -92,6 +92,7 @@ bindd = $mainMod, Q, Close active window, killactive, bindd = $mainMod SHIFT, Q, Terminate active process, exec, $scriptsDir/KillActiveProcess.sh bindd = CTRL ALT, L, Lock screen, exec, $scriptsDir/LockScreen.sh bindd = CTRL ALT, P, Powermenu, exec, $scriptsDir/Wlogout.sh +bindd = CTRL ALT, D, Toggle dock, exec, $scriptsDir/Dock.sh bindd = $mainMod SHIFT, N, Notification panel, exec, swaync-client -t -sw bindd = $mainMod SHIFT, E, Quick settings menu, exec, $scriptsDir/Kool_Quick_Settings.sh diff --git a/config/hypr/configs/system_keybinds.lua b/config/hypr/configs/system_keybinds.lua index 0106b3fa..ce0414ab 100644 --- a/config/hypr/configs/system_keybinds.lua +++ b/config/hypr/configs/system_keybinds.lua @@ -497,6 +497,7 @@ bind( ) bind("CTRL ALT", "L", exec_cmd("$HOME/.config/hypr/scripts/LockScreen.sh"), { description = "lock screen" }) bind("CTRL ALT", "P", exec_cmd("$HOME/.config/hypr/scripts/Wlogout.sh"), { description = "powermenu" }) +bind("CTRL ALT", "D", exec_cmd("$HOME/.config/hypr/scripts/Dock.sh"), { description = "toggle dock" }) bind("SUPER SHIFT", "N", exec_cmd("swaync-client -t -sw"), { description = "notification panel" }) bind( "SUPER SHIFT", diff --git a/config/hypr/scripts/Dock.sh b/config/hypr/scripts/Dock.sh new file mode 100755 index 00000000..c919d573 --- /dev/null +++ b/config/hypr/scripts/Dock.sh @@ -0,0 +1,66 @@ +#!/usr/bin/env bash +# ================================================== +# KoolDots (2026) +# Project URL: https://github.com/LinuxBeginnings +# License: GNU GPLv3 +# SPDX-License-Identifier: GPL-3.0-or-later +# ================================================== +# nwg-dock-hyprland launcher and toggle script + +DOCK_CONFIG_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/nwg-dock-hyprland" + +# Ensure dock configuration and wallust directory exist +mkdir -p "$DOCK_CONFIG_DIR/wallust" 2>/dev/null || true + +# Check if nwg-dock-hyprland is installed +if ! command -v nwg-dock-hyprland >/dev/null 2>&1; then + notify-send -u normal "Dock" "nwg-dock-hyprland is not installed" 2>/dev/null || true + exit 1 +fi + +is_dock_running() { + pgrep -x "nwg-dock-hyprla" >/dev/null 2>&1 || pgrep -x "nwg-dock-hyprland" >/dev/null 2>&1 || pgrep -f "nwg-dock-hyprland" >/dev/null 2>&1 +} + +kill_dock() { + pkill -x "nwg-dock-hyprla" 2>/dev/null || true + pkill -x "nwg-dock-hyprland" 2>/dev/null || true + pkill -f "nwg-dock-hyprland" 2>/dev/null || true +} + +start_dock() { + # Dock configuration: + # -p bottom : bottom dock position + # -x : exclusive zone (moves other windows aside) + # -i 32 : icon size 32 + # -g "kitty-dropterm" : ignores dropdown terminal class + # -c : launcher button command (rofi menu) + # (no -d : no auto-hide) + local launcher_cmd="pkill rofi || rofi -show drun -modi drun,filebrowser,run,window" + nwg-dock-hyprland -p bottom -x -i 32 -g "kitty-dropterm" -c "$launcher_cmd" >/dev/null 2>&1 & +} + +case "${1:-toggle}" in + --restart|restart) + kill_dock + sleep 0.2 + start_dock + ;; + --start|start|activate) + if ! is_dock_running; then + start_dock + fi + ;; + --stop|stop|deactivate) + kill_dock + ;; + --toggle|toggle|*) + if is_dock_running; then + kill_dock + else + start_dock + fi + ;; +esac + +exit 0 diff --git a/config/hypr/scripts/KeyHints.sh b/config/hypr/scripts/KeyHints.sh index 08415dab..cff74da1 100755 --- a/config/hypr/scripts/KeyHints.sh +++ b/config/hypr/scripts/KeyHints.sh @@ -58,6 +58,7 @@ GDK_BACKEND=$BACKEND yad \ " CTRL SHIFT Print" "screenshot timer 10 secs " "(grim)" \ "ALT Print" "Screenshot active window" "active window only" \ "CTRL ALT P" "power-menu" "(wlogout)" \ + "CTRL ALT D" "Toggle dock" "(nwg-dock-hyprland)" \ "CTRL ALT L" "screen lock" "(hyprlock)" \ "CTRL ALT Del" "Hyprland Exit" "(NOTE: Hyprland Will exit immediately)" \ " SHIFT F" "Fullscreen" "Toggles to full screen" \ diff --git a/config/hypr/scripts/Refresh.sh b/config/hypr/scripts/Refresh.sh index 79d9df8b..a9113c6b 100755 --- a/config/hypr/scripts/Refresh.sh +++ b/config/hypr/scripts/Refresh.sh @@ -123,6 +123,11 @@ fi # reload swaync (asynchronous to prevent DBus timeout delays) (swaync-client --reload-config >/dev/null 2>&1 &) +# reload / restart nwg-dock-hyprland if running +if pgrep -x "nwg-dock-hyprla" >/dev/null 2>&1 || pgrep -x "nwg-dock-hyprland" >/dev/null 2>&1 || pgrep -f "nwg-dock-hyprland" >/dev/null 2>&1; then + "${SCRIPTSDIR}/Dock.sh" --restart >/dev/null 2>&1 & +fi + # Relaunching rainbow borders based on selected mode sleep 1 rainbow_mode_file="${UserScripts}/rainbow-borders.mode" diff --git a/config/nwg-dock-hyprland/style.css b/config/nwg-dock-hyprland/style.css new file mode 100644 index 00000000..0bf4f337 --- /dev/null +++ b/config/nwg-dock-hyprland/style.css @@ -0,0 +1,43 @@ +/* ----------- 💫 https://github.com/LinuxBeginnings 💫 -------- */ +/* nwg-dock-hyprland style - themed with system / wallust */ + +@import 'wallust/colors-wallust.css'; + +window { + background: @background; + border-radius: 10px; + border: 1px solid @border; +} + +#box { + padding: 6px 10px; +} + +#active { + border-bottom: 2px solid @button-active; +} + +button, image { + background: none; + border-style: none; + box-shadow: none; + color: @foreground; +} + +button { + padding: 4px; + margin-left: 4px; + margin-right: 4px; + color: @foreground; + border-radius: 10px; + transition: all 0.2s ease-in-out; +} + +button:hover { + background-color: @hovered; + border-radius: 10px; +} + +button:focus { + box-shadow: none; +} diff --git a/config/nwg-dock-hyprland/wallust/colors-wallust.css b/config/nwg-dock-hyprland/wallust/colors-wallust.css new file mode 100644 index 00000000..01bbb39b --- /dev/null +++ b/config/nwg-dock-hyprland/wallust/colors-wallust.css @@ -0,0 +1,12 @@ +/* ---- 💫 https://github.com/LinuxBeginnings 💫 ---- */ +/* Default fallback wallust template for nwg-dock-hyprland */ + +@define-color foreground #cdd6f4; +@define-color background rgba(24, 24, 37, 0.85); +@define-color background-alt #1e1e2e; +@define-color cursor #f5e0dc; +@define-color hovered #89b4fa; +@define-color button-background #89b4fa; +@define-color button-active #a6e3a1; +@define-color border #89b4fa; +@define-color urgent #f38ba8; diff --git a/config/wallust/templates/colors-nwg-dock.css b/config/wallust/templates/colors-nwg-dock.css new file mode 100644 index 00000000..f8ff62be --- /dev/null +++ b/config/wallust/templates/colors-nwg-dock.css @@ -0,0 +1,12 @@ +/* ---- 💫 https://github.com/LinuxBeginnings 💫 ---- */ +/* wallust template - colors-nwg-dock */ + +@define-color foreground {{foreground}}; +@define-color background rgba({{background | rgb}}, 0.85); +@define-color background-alt {{background}}; +@define-color cursor {{cursor}}; +@define-color hovered {{color12}}; +@define-color button-background {{color4}}; +@define-color button-active {{color2}}; +@define-color border {{color12}}; +@define-color urgent {{color15}}; diff --git a/config/wallust/wallust-v4.toml b/config/wallust/wallust-v4.toml index 9dd74e79..ec8cc61e 100644 --- a/config/wallust/wallust-v4.toml +++ b/config/wallust/wallust-v4.toml @@ -51,3 +51,6 @@ ghostty.target = '~/.config/ghostty/wallust.conf' quickshell.template = 'qml_color.json' quickshell.target = '~/.config/quickshell/qml_color.json' + +nwg-dock.template = 'colors-nwg-dock.css' +nwg-dock.target = '~/.config/nwg-dock-hyprland/wallust/colors-wallust.css' diff --git a/config/wallust/wallust.toml b/config/wallust/wallust.toml index b74794d9..73941140 100644 --- a/config/wallust/wallust.toml +++ b/config/wallust/wallust.toml @@ -53,6 +53,9 @@ ghostty.target = '~/.config/ghostty/wallust.conf' quickshell.template = 'qml_color.json' quickshell.target = '~/.config/quickshell/qml_color.json' +nwg-dock.template = 'colors-nwg-dock.css' +nwg-dock.target = '~/.config/nwg-dock-hyprland/wallust/colors-wallust.css' + #swaync.template = 'colors-swaync.css' #swaync.target = '~/.config/swaync/wallust/colors-wallust.css' diff --git a/docs/Keybinds.md b/docs/Keybinds.md index 19fd5d08..c0e91d74 100644 --- a/docs/Keybinds.md +++ b/docs/Keybinds.md @@ -59,6 +59,7 @@ Source: `config/hypr/configs/Keybinds.conf` - `CTRL + ALT + Delete` — Exit Hyprland - `CTRL + ALT + L` — Lock screen - `CTRL + ALT + P` — Power menu +- `CTRL + ALT + D` — Toggle dock (nwg-dock) - `SUPER + SHIFT + H` — Toggle active-window mute - `SUPER + SHIFT + G` — Toggle game mode - `SUPER + N` — Toggle night light diff --git a/scripts/lib_copy.sh b/scripts/lib_copy.sh index da78ca16..4e8dda71 100644 --- a/scripts/lib_copy.sh +++ b/scripts/lib_copy.sh @@ -124,7 +124,7 @@ copy_waybar() { copy_phase2() { local log="$1" local base="${DOTFILES_DIR:-.}" - local DIR="btop cava hypr Kvantum qt5ct qt6ct starship swappy wallust wlogout yazi" + local DIR="btop cava hypr Kvantum nwg-dock-hyprland qt5ct qt6ct starship swappy wallust wlogout yazi" for DIR_NAME in $DIR; do local DIRPATH="${XDG_CONFIG_HOME:-$HOME/.config}/$DIR_NAME" if [ -d "$DIRPATH" ]; then |
