added bing wallpaper
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
#!/usr/bin/env bash
|
||||
# bing-wallpaper: Tages-Wallpaper von Bing laden und direkt setzen.
|
||||
# Quelle: HPImageArchive-API (inoffiziell, aber seit Jahren stabil),
|
||||
# Markt de-DE, UHD-Aufloesung. Lizenz: nur zur privaten Nutzung als
|
||||
# Hintergrund (keine Redistribution - es wird nur heruntergeladen).
|
||||
# Ablage: ~/Bilder/Bing/bing-YYYY-MM-DD.jpg, Retention 7 Tage.
|
||||
# Setzen via Noctalia-IPC (persistiert + triggert Theme-Resolve neu).
|
||||
# Laeuft die Shell gerade nicht, bleibt die Datei fuer spaeter liegen.
|
||||
set -euo pipefail
|
||||
|
||||
API="https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=de-DE"
|
||||
OUTDIR="${HOME}/Bilder/Bing"
|
||||
[[ -d "${HOME}/Bilder" ]] || OUTDIR="${HOME}/Pictures/Bing"
|
||||
mkdir -p "${OUTDIR}"
|
||||
|
||||
TODAY="$(date +%F)"
|
||||
TARGET="${OUTDIR}/bing-${TODAY}.jpg"
|
||||
|
||||
if [[ ! -s "${TARGET}" ]]; then
|
||||
JSON="$(curl -fsSL --retry 3 --retry-delay 5 "${API}")"
|
||||
URLBASE="$(printf '%s' "${JSON}" | jq -r '.images[0].urlbase // empty')"
|
||||
[[ -n "${URLBASE}" ]] || { echo "Bing-Antwort ohne urlbase"; exit 1; }
|
||||
curl -fsSL --retry 3 --retry-delay 5 -o "${TARGET}" "https://www.bing.com${URLBASE}_UHD.jpg"
|
||||
echo "Geladen: ${TARGET}"
|
||||
else
|
||||
echo "Bereits vorhanden: ${TARGET}"
|
||||
fi
|
||||
|
||||
# Alte behalten wir 7 Tage (Rotation via Noctalia-Automation moeglich)
|
||||
ls -t "${OUTDIR}"/bing-*.jpg 2>/dev/null | tail -n +8 | xargs -r rm -f --
|
||||
echo "Bereinigt, behalten: $(ls "${OUTDIR}"/bing-*.jpg 2>/dev/null | wc -l)"
|
||||
|
||||
# Direkt setzen (schlaegt fehl ohne laufende Shell -> Datei bleibt liegen)
|
||||
noctalia msg wallpaper-set "${TARGET}" && echo "Gesetzt: ${TARGET}" || echo "Noctalia laeuft nicht - Datei liegt bereit"
|
||||
Reference in New Issue
Block a user