deleted: ../apps-list-zero.md
new file: DankMaterialShell/.changelog-1.4 new file: DankMaterialShell/.firstlaunch new file: DankMaterialShell/firefox.css new file: DankMaterialShell/plugins/cavaVisualizer new file: DankMaterialShell/plugins/dankAudioVisualizer new file: DankMaterialShell/plugins/desktopCommand new file: DankMaterialShell/settings.json new file: DankMaterialShell/themes/peaceAndQuiet/preview-blue-dark.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-blue-light.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-blue.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-cyan-dark.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-cyan-light.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-cyan.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-dark.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-lavender-dark.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-lavender-light.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-lavender.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-light.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-mint-dark.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-mint-light.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-mint.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-pink-dark.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-pink-light.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-pink.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-salmon-dark.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-salmon-light.svg new file: DankMaterialShell/themes/peaceAndQuiet/preview-salmon.svg new file: DankMaterialShell/themes/peaceAndQuiet/theme.json new file: DankMaterialShell/themes/zzz/theme.json new file: DankMaterialShell/themes/zzz/theme1.json new file: DankMaterialShell/zen.css new file: Kvantum/KvLibadwaitaDark#/KvLibadwaitaDark#.kvconfig new file: Kvantum/kvantum.kvconfig new file: aichat/config.yaml modified: btop/btop.conf new file: btop/themes/noctalia.theme new file: calcurse/conf new file: calcurse/keys new file: cava/config new file: cava/shaders/bar_spectrum.frag new file: cava/shaders/eye_of_phi.frag new file: cava/shaders/northern_lights.frag new file: cava/shaders/pass_through.vert new file: cava/shaders/spectrogram.frag new file: cava/shaders/winamp_line_style_spectrum.frag new file: cava/themes/solarized_dark new file: cava/themes/tricolor new file: fastfetch/0.01.jsonc new file: fastfetch/0.02.jsonc new file: fastfetch/color.jsonc new file: fastfetch/setts/all.jsonc new file: fastfetch/setts/archey.jsonc new file: fastfetch/setts/ci.jsonc new file: fastfetch/setts/examples/10.jsonc new file: fastfetch/setts/examples/11.jsonc new file: fastfetch/setts/examples/12.jsonc new file: fastfetch/setts/examples/13.jsonc new file: fastfetch/setts/examples/14.jsonc new file: fastfetch/setts/examples/15.jsonc new file: fastfetch/setts/examples/16.jsonc new file: fastfetch/setts/examples/17.jsonc new file: fastfetch/setts/examples/18.jsonc new file: fastfetch/setts/examples/19.jsonc new file: fastfetch/setts/examples/2.jsonc new file: fastfetch/setts/examples/20.jsonc new file: fastfetch/setts/examples/21.jsonc new file: fastfetch/setts/examples/22.jsonc new file: fastfetch/setts/examples/23.jsonc new file: fastfetch/setts/examples/24.jsonc new file: fastfetch/setts/examples/25.jsonc new file: fastfetch/setts/examples/26.jsonc new file: fastfetch/setts/examples/27.jsonc new file: fastfetch/setts/examples/28.jsonc new file: fastfetch/setts/examples/29.jsonc new file: fastfetch/setts/examples/3.jsonc new file: fastfetch/setts/examples/30.jsonc new file: fastfetch/setts/examples/4.jsonc new file: fastfetch/setts/examples/5.jsonc new file: fastfetch/setts/examples/6.jsonc new file: fastfetch/setts/examples/7.jsonc new file: fastfetch/setts/examples/8.jsonc new file: fastfetch/setts/examples/9.jsonc new file: fastfetch/setts/neofetch.jsonc new file: fastfetch/setts/paleofetch.jsonc new file: fastfetch/setts/screenfetch.jsonc modified: fish/config.fish modified: fish/fish_variables new file: fish/fish_variables2DWmNcGa9T new file: fish/functions/ffcolor.fish modified: fish/functions/fish_prompt.fish.bak new file: fish/functions/lt.fish modified: fish/functions/p.fish new file: fish/functions/tide/configure/icons.fish new file: fish/functions/vpn-debug.fish modified: fish/functions/vpn.fish new file: foot/dank-colors.ini modified: foot/foot.ini new file: fsel/config.toml modified: fuzzel/fuzzel.ini modified: hyprwave/config.conf new file: hyprwhspr/config.json new file: hyprwhspr/mic_osd.pid new file: i3/config new file: ironbar/config.json new file: ironbar/schema-v0.18.0.json new file: ironbar/scripts/pomo new file: ironbar/scripts/walker.sh new file: ironbar/style.css new file: keymap.xkb new file: kitty/dank-tabs.conf new file: kitty/dank-theme.conf new file: matugen/config.toml new file: matugen/custom3.json modified: mimeapps.list modified: mpDris2/mpDris2.conf new file: niri/animation.kdl new file: niri/bak.config.kdl new file: niri/binds.kdl new file: niri/caps modified: niri/config.kdl new file: niri/config.kdl.backup1776208575 new file: niri/config.kdl.backup1776211503 new file: niri/config.kdl.backup1776211623 new file: niri/dms/alttab.kdl new file: niri/dms/binds.kdl new file: niri/dms/colors.kdl new file: niri/dms/cursor.kdl new file: niri/dms/layout.kdl new file: niri/dms/outputs.kdl new file: niri/dms/profiles/profile_1776211496314_g03e3q.kdl new file: niri/dms/windowrules.kdl new file: niri/dms/wpblur.kdl new file: niri/emoji.png new file: niri/executable_caps new file: niri/input.kdl new file: niri/ironbar-toggle.sh new file: niri/layer-rule.kdl new file: niri/layout.kdl new file: niri/lock.sh new file: niri/noctalia-toggle.sh new file: niri/output-pc.kdl new file: niri/spawn-at-startup.kdl new file: niri/window-rule.kdl new file: nix/nix.conf modified: nvim/lazy-lock.json modified: nvim/lazyvim.json new file: nvim/lua/plugins/dankcolors.lua new file: nvim/lua/plugins/gpanders-nvim-parinfer.lua new file: nvim/lua/plugins/tokyo-night.lua new file: nvim/lua/tokyonight.nvim new file: nwg-look/config new file: omarchy/current/background new file: omarchy/hooks/theme-set new file: omarchy/hooks/theme-set.d/00-fish.sh new file: omarchy/hooks/theme-set.d/00-fzf.sh new file: omarchy/hooks/theme-set.d/10-discord.sh new file: omarchy/hooks/theme-set.d/10-gtk.sh new file: omarchy/hooks/theme-set.d/10-qt6ct.sh new file: omarchy/hooks/theme-set.d/10-spotify.sh new file: omarchy/hooks/theme-set.d/10-superfile.sh new file: omarchy/hooks/theme-set.d/10-vicinae.sh new file: omarchy/hooks/theme-set.d/15-typora.sh new file: omarchy/hooks/theme-set.d/20-nwg-dock-hyprland.sh new file: omarchy/hooks/theme-set.d/20-zed.sh new file: omarchy/hooks/theme-set.d/30-cursor.sh new file: omarchy/hooks/theme-set.d/30-vscode.sh new file: omarchy/hooks/theme-set.d/30-windsurf.sh new file: omarchy/hooks/theme-set.d/40-cava.sh new file: omarchy/hooks/theme-set.d/40-firefox.sh new file: omarchy/hooks/theme-set.d/40-steam.sh new file: omarchy/hooks/theme-set.d/40-zen.sh new file: omarchy/hooks/theme-set.d/50-heroic.sh new file: omarchy/themes/aether new file: pomo/config.json new file: scripts/niri/caps new file: scripts/niri/ru.png new file: scripts/niri/us.png new file: starship.toml modified: swaync/config.json new file: swaync/config_1.json modified: swaync/style.css new file: swaync/style_1.css new file: systemd/user/default.target.wants/mpDris2.service new file: systemd/user/default.target.wants/mpd.service new file: systemd/user/default.target.wants/mpris-proxy.service new file: systemd/user/default.target.wants/openrazer-daemon.service new file: systemd/user/default.target.wants/pipewire-pulse.service new file: systemd/user/default.target.wants/pipewire.service new file: systemd/user/default.target.wants/ydotool.service new file: systemd/user/elephant.service new file: systemd/user/gnome-session.target.wants/gnome-remote-desktop.service new file: systemd/user/graphical-session.target.wants/elephant.service new file: systemd/user/graphical-session.target.wants/hyprwhspr.service new file: systemd/user/hyprwhspr.service new file: systemd/user/sockets.target.wants/mpd.socket new file: systemd/user/sockets.target.wants/pipewire-pulse.socket new file: systemd/user/sockets.target.wants/pipewire.socket new file: tofi/config new file: user-dirs.conf renamed: ../user-dirs.dirs -> user-dirs.dirs new file: user-dirs.locale modified: walker/config.toml new file: wl-kbptr/config new file: xdg-desktop-portal/portals.conf new file: xsettingsd/xsettingsd.conf new file: yt-dlp/config new file: zathura/zathurarc renamed: ../zram-generator.conf -> zram-generator.conf modified: ../copy.sh deleted: ../nix-packages.md new file: ../nix-pkgs.txt deleted: ../pacman-packages.md renamed: ../apps-list.md -> ../pkgs.txt renamed: ../services.md -> ../services.txt
This commit is contained in:
parent
2a13fe3170
commit
6604f0b324
215 changed files with 25265 additions and 3898 deletions
125
config/omarchy/hooks/theme-set.d/20-nwg-dock-hyprland.sh
Executable file
125
config/omarchy/hooks/theme-set.d/20-nwg-dock-hyprland.sh
Executable file
|
|
@ -0,0 +1,125 @@
|
|||
#!/bin/bash
|
||||
|
||||
# This script respects user's existing nwg-dock-hyprland configuration.
|
||||
# It searches ~/.config/hypr/*.conf for exec/exec-once commands and preserves user flags.
|
||||
# Falls back to default configuration only if no user command is found.
|
||||
|
||||
output_file="$HOME/.config/omarchy/current/theme/nwg-dock.css"
|
||||
default_dock_command="nwg-dock-hyprland -r -mb 10 -mt 10 -i 22 -x -nolauncher"
|
||||
|
||||
if ! command -v nwg-dock-hyprland >/dev/null 2>&1; then
|
||||
skipped "NWG Dock"
|
||||
fi
|
||||
|
||||
# Search for user's nwg-dock-hyprland command in Hyprland config files
|
||||
user_dock_command=""
|
||||
hypr_config_dir="$HOME/.config/hypr"
|
||||
|
||||
if [[ -d "$hypr_config_dir" ]]; then
|
||||
# Find all config files containing nwg-dock-hyprland exec commands
|
||||
mapfile -t dock_files < <(grep -l -E "^\s*(exec|exec-once)\s*=.*nwg-dock-hyprland" "$hypr_config_dir"/*.conf 2>/dev/null)
|
||||
|
||||
# Find all matching command lines
|
||||
mapfile -t dock_commands < <(grep -h -E "^\s*(exec|exec-once)\s*=.*nwg-dock-hyprland" "$hypr_config_dir"/*.conf 2>/dev/null)
|
||||
|
||||
# Check for multiple commands and warn user
|
||||
if [[ ${#dock_commands[@]} -gt 1 ]]; then
|
||||
warning "Multiple nwg-dock-hyprland commands found in Hyprland config:"
|
||||
for file in "${dock_files[@]}"; do
|
||||
warning " - $file"
|
||||
done
|
||||
warning "Using first occurrence. Please consolidate to a single command."
|
||||
fi
|
||||
|
||||
# Extract the command from first match
|
||||
if [[ ${#dock_commands[@]} -gt 0 ]]; then
|
||||
# Remove 'exec' or 'exec-once' prefix and '=' sign, trim whitespace
|
||||
user_dock_command=$(echo "${dock_commands[0]}" | sed 's/^[[:space:]]*exec\(-once\)\?[[:space:]]*=[[:space:]]*//')
|
||||
|
||||
# Validate extraction succeeded
|
||||
if [[ -z "$user_dock_command" || ! "$user_dock_command" =~ nwg-dock-hyprland ]]; then
|
||||
warning "Failed to parse user's nwg-dock-hyprland command: ${dock_commands[0]}"
|
||||
warning "Using default configuration."
|
||||
user_dock_command=""
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ! -f "$output_file" ]]; then
|
||||
mkdir -p "$(dirname "$output_file")"
|
||||
|
||||
cat >"$output_file" <<EOF
|
||||
window {
|
||||
background: #${primary_background}; /* base01 */
|
||||
border-color: #${bright_black}; /* base02 */
|
||||
border: 2px solid #${bright_black};
|
||||
}
|
||||
|
||||
button,
|
||||
image {
|
||||
color: #${bright_white}; /* base07 */
|
||||
}
|
||||
|
||||
button {
|
||||
color: #${normal_white}; /* base05 */
|
||||
padding: 3px;
|
||||
}
|
||||
|
||||
button:hover {
|
||||
background-color: rgba($rgb_bright_black, 0.5); /* base02 */
|
||||
}
|
||||
EOF
|
||||
|
||||
mkdir -p "$HOME/.config/nwg-dock-hyprland"
|
||||
style_file="$HOME/.config/nwg-dock-hyprland/style.css"
|
||||
if [[ ! -f $style_file ]]; then
|
||||
cat > $style_file <<EOF
|
||||
@import url("./colors.css");
|
||||
|
||||
window {
|
||||
border-radius: 12px;
|
||||
border-style: solid;
|
||||
border-width: 2px;
|
||||
}
|
||||
|
||||
#box {
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
button,
|
||||
image {
|
||||
background: none;
|
||||
border-style: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
button {
|
||||
padding: 5px;
|
||||
margin-left: 4px;
|
||||
margin-right: 4px;
|
||||
margin-top: 4px;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
button:focus {
|
||||
box-shadow: none;
|
||||
}
|
||||
EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
cp "$output_file" "$HOME/.config/nwg-dock-hyprland/colors.css"
|
||||
|
||||
# Kill existing dock instance
|
||||
killall nwg-dock-hyprland 2>/dev/null
|
||||
|
||||
# Restart dock with user's command or default
|
||||
if [[ -n "$user_dock_command" ]]; then
|
||||
eval "$user_dock_command" &
|
||||
disown
|
||||
else
|
||||
eval "$default_dock_command" &
|
||||
disown
|
||||
fi
|
||||
|
||||
success "Dock theme updated!"
|
||||
Loading…
Add table
Add a link
Reference in a new issue