fix: apply Antergos NeXT wallpaper in live environment
The wallpaper autostart script was failing on Plasma 6 + Wayland, causing the live session to show the default Plasma background instead of the Antergos NeXT branded wallpaper. Changes: - Rewrote set-antergos-wallpaper.sh with three fallback methods: 1. plasma-apply-wallpaperimage (primary) 2. kwriteconfig6 + qdbus6 config reload 3. qdbus6 evaluateScript API - Added direct wallpaper config in live-overlay/home/antergos/ for the live user (most reliable, runs before Plasma starts) - Updated existing /etc/skel/ and main.xml defaults to use antergos-wallpaper.png instead of adwaita-morning.webp - Downloaded and included original Antergos wallpaper from the project's wallpapers repo
This commit is contained in:
+1
-1
@@ -7,5 +7,5 @@ plugin=org.kde.plasma.folder
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][1][Wallpaper][org.kde.image][General]
|
||||
Image=file:///usr/share/wallpapers/antergos-wallpaper/contents/images/adwaita-morning.webp
|
||||
Image=file:///usr/share/wallpapers/antergos-wallpaper/contents/images/antergos-wallpaper.png
|
||||
FillMode=2
|
||||
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
[Containments][1]
|
||||
activity=
|
||||
formfactor=0
|
||||
lastScreen=0
|
||||
location=0
|
||||
plugin=org.kde.plasma.folder
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][1][Wallpaper][org.kde.image][General]
|
||||
Image=file:///usr/share/wallpapers/antergos-wallpaper/contents/images/antergos-wallpaper.png
|
||||
FillMode=2
|
||||
@@ -1,10 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
# One-shot wallpaper setter for Antergos NeXT
|
||||
# Runs at first login via autostart, then disables itself
|
||||
# Uses multiple fallback methods for Plasma 6 + Wayland compatibility
|
||||
|
||||
LOG="/tmp/antergos-wallpaper.log"
|
||||
MARKER="$HOME/.config/antergos-wallpaper-set"
|
||||
WALLPAPER="/usr/share/wallpapers/antergos-wallpaper/contents/images/adwaita-morning.webp"
|
||||
WALLPAPER="/usr/share/wallpapers/antergos-wallpaper/contents/images/antergos-wallpaper.png"
|
||||
|
||||
echo "[$(date)] Starting" > "$LOG"
|
||||
|
||||
@@ -22,22 +23,46 @@ fi
|
||||
|
||||
echo "[$(date)] Wallpaper found, applying..." >> "$LOG"
|
||||
|
||||
echo "[$(date)] Applying wallpaper..." >> "$LOG"
|
||||
# Method 1: plasma-apply-wallpaperimage (primary, works on Plasma 6)
|
||||
echo "[$(date)] Method 1: plasma-apply-wallpaperimage..." >> "$LOG"
|
||||
/usr/bin/plasma-apply-wallpaperimage "$WALLPAPER" >> "$LOG" 2>&1
|
||||
RC=$?
|
||||
echo "[$(date)] plasma-apply-wallpaperimage exit code: $RC" >> "$LOG"
|
||||
echo "[$(date)] Method 1 exit code: $RC" >> "$LOG"
|
||||
|
||||
if [[ $RC -ne 0 ]]; then
|
||||
echo "[$(date)] Falling back to qdbus script..." >> "$LOG"
|
||||
qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript "
|
||||
desktops().forEach(function(d) {
|
||||
d.currentConfigGroup = ['Wallpaper', 'org.kde.image', 'General'];
|
||||
d.writeConfig('Image', 'file://${WALLPAPER}');
|
||||
d.reloadConfig();
|
||||
});
|
||||
" >> "$LOG" 2>&1
|
||||
FALLBACK_RC=$?
|
||||
echo "[$(date)] qdbus fallback exit code: $FALLBACK_RC" >> "$LOG"
|
||||
# Method 2: kwriteconfig6 + qdbus6 config reload
|
||||
echo "[$(date)] Method 2: kwriteconfig6 + qdbus6..." >> "$LOG"
|
||||
CONFIG="$HOME/.config/plasma-org.kde.plasma.desktop-appletsrc"
|
||||
if [[ -f "$CONFIG" ]]; then
|
||||
kwriteconfig6 --file "$CONFIG" \
|
||||
--group "Containments" --group "1" \
|
||||
--group "Wallpaper" --group "org.kde.image" --group "General" \
|
||||
--key "Image" "file://${WALLPAPER}" >> "$LOG" 2>&1
|
||||
kwriteconfig6 --file "$CONFIG" \
|
||||
--group "Containments" --group "1" \
|
||||
--group "Wallpaper" --group "org.kde.image" --group "General" \
|
||||
--key "FillMode" "2" >> "$LOG" 2>&1
|
||||
qdbus6 org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.refreshCurrentShell >> "$LOG" 2>&1
|
||||
RC2=$?
|
||||
echo "[$(date)] Method 2 exit code: $RC2" >> "$LOG"
|
||||
else
|
||||
echo "[$(date)] Config not found at $CONFIG, skipping method 2" >> "$LOG"
|
||||
RC2=1
|
||||
fi
|
||||
|
||||
if [[ $RC2 -ne 0 ]]; then
|
||||
# Method 3: qdbus6 evaluateScript (legacy API fallback)
|
||||
echo "[$(date)] Method 3: qdbus6 evaluateScript..." >> "$LOG"
|
||||
qdbus6 org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript "
|
||||
desktops().forEach(function(d) {
|
||||
d.currentConfigGroup = ['Wallpaper', 'org.kde.image', 'General'];
|
||||
d.writeConfig('Image', 'file://${WALLPAPER}');
|
||||
d.reloadConfig();
|
||||
});
|
||||
" >> "$LOG" 2>&1
|
||||
RC3=$?
|
||||
echo "[$(date)] Method 3 exit code: $RC3" >> "$LOG"
|
||||
fi
|
||||
fi
|
||||
|
||||
touch "$MARKER"
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@
|
||||
- if no fragment is specified, plasma will switch between dark and light
|
||||
images depending on the currently used color scheme
|
||||
</tooltip>
|
||||
<default>file:///usr/share/wallpapers/antergos-wallpaper/contents/images/adwaita-morning.webp</default>
|
||||
<default>file:///usr/share/wallpapers/antergos-wallpaper/contents/images/antergos-wallpaper.png</default>
|
||||
</entry>
|
||||
<entry name="PreviewImage" type="String">
|
||||
<label>Wallpaper preview image path</label>
|
||||
|
||||
Reference in New Issue
Block a user