diff --git a/assets/branding/veilor-logo.svg b/assets/branding/veilor-logo.svg
new file mode 100644
index 0000000..dd319e6
--- /dev/null
+++ b/assets/branding/veilor-logo.svg
@@ -0,0 +1,38 @@
+
+
+
diff --git a/assets/kde/plasma-desktop.conf b/assets/kde/plasma-desktop.conf
index 89e96f1..8d55783 100644
--- a/assets/kde/plasma-desktop.conf
+++ b/assets/kde/plasma-desktop.conf
@@ -1,8 +1,8 @@
-# veilor-os default desktop config — solid black wallpaper (matches reference system).
+# veilor-os default desktop config — solid black wallpaper.
# Plasma uses `wallpaperplugin=org.kde.color` (not org.kde.image) — pure
-# black solid color rendering, no SVG asset needed.
-# Applied via 30-apply-v03-theme.sh into ~/.config/plasma-org.kde.plasma.desktop-appletsrc
-# default for new users.
+# black solid color rendering, no image asset required at runtime.
+# Applied via 30-apply-v03-theme.sh into the system kdedefaults so new
+# users inherit a black desktop on first login.
[Containments][Wallpaper]
wallpaperplugin=org.kde.color
diff --git a/assets/konsole/veilor.profile b/assets/konsole/veilor.profile
index 7516907..a01e724 100644
--- a/assets/konsole/veilor.profile
+++ b/assets/konsole/veilor.profile
@@ -12,7 +12,7 @@ TerminalCenter=false
TerminalMargin=4
[Appearance]
-ColorScheme=Linux
+ColorScheme=Veilor
Font=Fira Code,11,-1,5,400,0,0,0,0,0,0,0,0,0,0,1
LineSpacing=1
UseFontLineCharacters=true
diff --git a/assets/wallpapers/veilor-black.png b/assets/wallpapers/veilor-black.png
new file mode 100644
index 0000000..34d4a5e
Binary files /dev/null and b/assets/wallpapers/veilor-black.png differ
diff --git a/assets/wallpapers/veilor-black.svg b/assets/wallpapers/veilor-black.svg
new file mode 100644
index 0000000..8dcc6c4
--- /dev/null
+++ b/assets/wallpapers/veilor-black.svg
@@ -0,0 +1,20 @@
+
+
+
diff --git a/scripts/30-apply-v03-theme.sh b/scripts/30-apply-v03-theme.sh
index b074a76..3f20cf3 100755
--- a/scripts/30-apply-v03-theme.sh
+++ b/scripts/30-apply-v03-theme.sh
@@ -76,7 +76,7 @@ if [[ -d $SDDM_SRC ]]; then
install -d -m 0755 /etc/sddm.conf.d
# Preserve other sddm.conf.d/*.conf entries; this file owns [Theme] only.
cat > /etc/sddm.conf.d/veilor-theme.conf << 'EOF'
-# veilor-os v0.3 — set veilor-black SDDM theme as default (matches reference system)
+# veilor-os v0.3 — set veilor-black SDDM theme as system default
[Theme]
Current=veilor-black
CursorTheme=Breeze_Light
@@ -128,12 +128,44 @@ else
fi
# ─────────────────────────────────────────────────────────────────────
-# 4. Wallpaper — solid black (matches reference system, no SVG asset)
+# 4. Wallpaper — pure black (default: org.kde.color plugin; image fallback)
# ─────────────────────────────────────────────────────────────────────
-info "Wallpaper: setting Plasma default to org.kde.color (solid black)"
-# reference system uses `wallpaperplugin=org.kde.color` + `Color=0,0,0` — pure black
-# rendered by Plasma's color plugin, no image asset needed.
-# Apply via system-wide kdedefaults so new users inherit.
+info "Wallpaper: installing veilor-black image and setting Plasma defaults"
+
+# 4a. Install wallpaper images for users who prefer org.kde.image. The
+# veilor-black asset (PNG primary, SVG fallback) is a 3840x2160 pure
+# black canvas with a tiny low-opacity wordmark in the corner.
+WP_SRC="$ASSETS/wallpapers"
+WP_DST="/usr/share/wallpapers/veilor-black/contents/images"
+WP_META="/usr/share/wallpapers/veilor-black/metadata.desktop"
+if [[ -d $WP_SRC ]]; then
+ install -d -m 0755 "$WP_DST"
+ if [[ -f $WP_SRC/veilor-black.png ]]; then
+ install -m 0644 "$WP_SRC/veilor-black.png" "$WP_DST/veilor-black.png"
+ ok "wallpaper PNG installed at $WP_DST/veilor-black.png"
+ fi
+ if [[ -f $WP_SRC/veilor-black.svg ]]; then
+ install -m 0644 "$WP_SRC/veilor-black.svg" "$WP_DST/veilor-black.svg"
+ ok "wallpaper SVG installed at $WP_DST/veilor-black.svg"
+ fi
+ install -d -m 0755 "$(dirname "$WP_META")"
+ cat > "$WP_META" << 'EOF'
+[Desktop Entry]
+Name=veilor-black
+X-KDE-PluginInfo-Name=veilor-black
+X-KDE-PluginInfo-Author=veilor-os
+X-KDE-PluginInfo-License=MIT
+X-KDE-PluginInfo-Version=0.3
+EOF
+ ok "wallpaper metadata installed at $WP_META"
+else
+ warn "wallpaper source dir missing at $WP_SRC — skipping image install"
+fi
+
+# 4b. Default wallpaper plugin: org.kde.color with Color=0,0,0 (pure black).
+# This is the lowest-overhead path — Plasma renders the colour without
+# loading an image. Users may switch to org.kde.image and pick the
+# veilor-black wallpaper installed above if they prefer.
KDD=/etc/xdg/kdedefaults
install -d -m 0755 "$KDD"
cat > "$KDD/plasma-org.kde.plasma.desktop-appletsrc" << 'EOF'
@@ -143,8 +175,11 @@ wallpaperplugin=org.kde.color
[Containments][1][Wallpaper][org.kde.color][General]
Color=0,0,0
+
+[Containments][1][Wallpaper][org.kde.image][General]
+Image=/usr/share/wallpapers/veilor-black/contents/images/veilor-black.png
EOF
-ok "default wallpaper = solid #000000 (Plasma color plugin)"
+ok "default wallpaper plugin = org.kde.color (#000000); image fallback wired"
# ─────────────────────────────────────────────────────────────────────
# 5. Breeze decoration override
@@ -173,7 +208,25 @@ else
fi
# ─────────────────────────────────────────────────────────────────────
-# 6. Sanity: brand leak check (mirrors kickstart %post sanity)
+# 6. Branding logo (referenced by /etc/os-release LOGO field)
+# ─────────────────────────────────────────────────────────────────────
+info "Branding: installing veilor logo into /usr/share/pixmaps"
+BR_SRC="$ASSETS/branding"
+if [[ -f $BR_SRC/veilor-logo.svg ]]; then
+ install -d -m 0755 /usr/share/pixmaps
+ install -m 0644 "$BR_SRC/veilor-logo.svg" /usr/share/pixmaps/veilor-logo.svg
+ ok "logo installed at /usr/share/pixmaps/veilor-logo.svg"
+ # Plymouth theme can pick up the same asset for consistency.
+ if [[ -d /usr/share/plymouth/themes/veilor ]]; then
+ install -m 0644 "$BR_SRC/veilor-logo.svg" /usr/share/plymouth/themes/veilor/veilor-logo.svg
+ ok "logo mirrored into plymouth theme dir"
+ fi
+else
+ warn "branding source missing at $BR_SRC/veilor-logo.svg — skipping"
+fi
+
+# ─────────────────────────────────────────────────────────────────────
+# 7. Sanity: brand leak check (mirrors kickstart %post sanity)
# ─────────────────────────────────────────────────────────────────────
info "Sanity: scanning installed v0.3 paths for brand leaks"
LEAK_PATHS=(
@@ -185,6 +238,8 @@ LEAK_PATHS=(
"/etc/sddm.conf.d/veilor-theme.conf"
"/etc/xdg/konsolerc"
"/etc/xdg/kdedefaults/plasma-org.kde.plasma.desktop-appletsrc"
+ "/usr/share/wallpapers/veilor-black"
+ "/usr/share/pixmaps/veilor-logo.svg"
)
LEAK=0
for p in "${LEAK_PATHS[@]}"; do