mirror of
https://github.com/noctalia-dev/noctalia-shell.git
synced 2026-05-11 17:08:27 +08:00
Merge branch 'v5' of https://github.com/noctalia-dev/noctalia-shell into v5
This commit is contained in:
@@ -8,6 +8,10 @@ category = "terminal"
|
||||
name = "Btop"
|
||||
category = "misc"
|
||||
|
||||
[catalog.cava]
|
||||
name = "Cava"
|
||||
category = "audio"
|
||||
|
||||
[catalog.foot]
|
||||
name = "Foot"
|
||||
category = "terminal"
|
||||
@@ -86,6 +90,11 @@ input_path = "./btop/btop.theme"
|
||||
output_path = "~/.config/btop/themes/noctalia.theme"
|
||||
post_hook = "bash '{{ config_dir }}/btop/apply.sh'"
|
||||
|
||||
[templates.cava]
|
||||
input_path = "./cava/cava.ini"
|
||||
output_path = "~/.config/cava/themes/noctalia"
|
||||
post_hook = "bash '{{ config_dir }}/cava/apply.sh'"
|
||||
|
||||
[templates.foot]
|
||||
input_path = "./foot/foot"
|
||||
output_path = "~/.config/foot/themes/noctalia"
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
config_file="$HOME/.config/cava/config"
|
||||
|
||||
if [ ! -f "$config_file" ]; then
|
||||
echo "Error: cava config file not found at $config_file" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if grep -q '^\[color\]' "$config_file"; then
|
||||
if sed -n '/^\[color\]/,/^\[/p' "$config_file" | grep -qE '^theme\s*=\s*"noctalia"'; then
|
||||
:
|
||||
elif sed -n '/^\[color\]/,/^\[/p' "$config_file" | grep -qE '^theme\s*='; then
|
||||
sed -i -E '/^\[color\]/,/^\[/{s/^theme\s*=.*/theme = "noctalia"/}' "$config_file"
|
||||
else
|
||||
sed -i '/^\[color\]/a theme = "noctalia"' "$config_file"
|
||||
fi
|
||||
else
|
||||
printf '\n[color]\ntheme = "noctalia"\n' >>"$config_file"
|
||||
fi
|
||||
|
||||
if pgrep -x cava >/dev/null; then
|
||||
if ! pgrep -ax cava | grep -q -- '-p.*stdin'; then
|
||||
pkill -USR1 -x cava || true
|
||||
fi
|
||||
fi
|
||||
@@ -0,0 +1,15 @@
|
||||
[color]
|
||||
foreground = '{{colors.primary.default.hex}}'
|
||||
|
||||
gradient = 1
|
||||
gradient_color_1 = '{{colors.primary_container.default.hex}}'
|
||||
gradient_color_2 = '{{colors.primary.default.hex}}'
|
||||
gradient_color_3 = '{{colors.on_primary_container.default.hex}}'
|
||||
|
||||
horizontal_gradient = 0
|
||||
horizontal_gradient_color_1 = '{{colors.primary_container.default.hex}}'
|
||||
horizontal_gradient_color_2 = '{{colors.primary.default.hex}}'
|
||||
horizontal_gradient_color_3 = '{{colors.on_primary_container.default.hex}}'
|
||||
horizontal_gradient_color_4 = '{{colors.primary.default.hex}}'
|
||||
horizontal_gradient_color_5 = '{{colors.primary_container.default.hex}}'
|
||||
|
||||
@@ -448,7 +448,7 @@ void OverviewTab::layoutWallpaperBackground(Renderer& renderer) {
|
||||
m_wallpaperGradient->setPosition(bw, bw);
|
||||
m_wallpaperGradient->setFrameSize(cw, ch);
|
||||
const Color surface = colorForRole(ColorRole::Surface);
|
||||
const Color translucentSurface = rgba(surface.r, surface.g, surface.b, surface.a * 0.85f);
|
||||
const Color translucentSurface = rgba(surface.r, surface.g, surface.b, surface.a * 0.9f);
|
||||
const Color transparentSurface = rgba(surface.r, surface.g, surface.b, 0.0f);
|
||||
m_wallpaperGradient->setStyle(RoundedRectStyle{
|
||||
.fill = surface,
|
||||
|
||||
Reference in New Issue
Block a user