From a5df21ab9ea3134f4e2cdfd4d884c060a295678d Mon Sep 17 00:00:00 2001 From: Daniel Napora Date: Fri, 18 Feb 2022 20:34:22 +0100 Subject: [PATCH] wallpaper generator --- usr/bin/jgwallpaperchanger | 12 +++- usr/bin/jgwallpapergenerate | 120 ++++++++++++++++++++++++++++++++++++ 2 files changed, 130 insertions(+), 2 deletions(-) create mode 100755 usr/bin/jgwallpapergenerate diff --git a/usr/bin/jgwallpaperchanger b/usr/bin/jgwallpaperchanger index 37539df..712dfc9 100755 --- a/usr/bin/jgwallpaperchanger +++ b/usr/bin/jgwallpaperchanger @@ -26,9 +26,12 @@ source <(grep = $CONFIG_FILE) case $LANG in pl*) TITLE="Zmieniacz tapet" + NITROGEN="Nitrogen" WALLPAPERS="Tapety" RANDWALL="Losowa tapeta" + GENERATOR="Generuj (ImageMagick)..." CHOOSE="Wybierz tapetę..." + SLIDESHOW="Pokaz slajdów" STARTS="Uruchom Pokaz slajdów (zatrzymany)" STOPS="Zatrzymaj Pokaz slajdów (działający)" CONF="Konfiguracja" @@ -41,9 +44,12 @@ case $LANG in ;; *) TITLE="Wallpaper Changer" + NITROGEN="Nitrogen" WALLPAPERS="Wallpapers" RANDWALL="Random Wallpaper" + GENERATOR="Generate (ImageMagick)..." CHOOSE="Choose Wallpaper..." + SLIDESHOW="Slideshow" STARTS="Start Slideshow (stopped)" STOPS="Stop Slideshow (running)" CONF="Configuration" @@ -64,17 +70,19 @@ me="jgwallpaperchanger -s" #out+=("^sep($TITLE)") out+=("^sep($WALLPAPERS)") if ! pgrep mbwallpaper > /dev/null; then + out+=("$NITROGEN,nitrogen") out+=("$RANDWALL,mbwallpaper -o;$me") out+=("$CHOOSE,mbwallpaper -c") + out+=("$GENERATOR,^pipe(jgwallpapergenerate)") +out+=("^sep($SLIDESHOW)") out+=("$STARTS,run_wallpaperslideshow;$me") - out+=("Nitrogen,nitrogen") else out+=("$STOPS,killall mbwallpaper;$me") fi -out+=("^sep($CONF)") #out+=("About Wallpaper changer,\"\"\"notify-send.sh -u critical -i mbcc 'Wallpaper Changer - rotate desktop wallpaper every n-seconds' '$help' -o 'Edit configuration file:geany ~/.config/mbwallpaper/mbwallpaper.conf'\"\"\"") +out+=("^sep()") out+=("$WALLDIR: [ $wallpaper_dir ],geany $CONFIG_FILE") out+=("$INTERVAL [ $interval ] ($SEC),^checkout(interval)") out+=("^sep()") diff --git a/usr/bin/jgwallpapergenerate b/usr/bin/jgwallpapergenerate new file mode 100755 index 0000000..07ca311 --- /dev/null +++ b/usr/bin/jgwallpapergenerate @@ -0,0 +1,120 @@ +#!/bin/bash +# jgwallpapergenerate - submenu to generate wallpapers +# + +case $LANG in + pl*) + TITLE="Generator tapet (ImageMagick)" + RANDCOLORS="Losowe kolory" + PICKCOLORS="Wybór kolorów..." + WALLPAPERMENU="Menu Tapety" + RANDOMEFFECT="Losowy efekt" + SOLID="Jednolity kolor" + BLURRED="Rozmycie" + LINEAR="Gradient liniowy" + RADIAL="Gradient promieniowy" + TWISTED="Skręcony gradient " + BILINEAR="Gradient dwuliniowy" + PLASMA="Plazma" + ONECOLOR="(jeden kolor)" + TWOCOLORS="(dwa kolory)" + FOURCOLORS="(cztery kolory)" + IMAGES="Wygenerowane obrazy" + OPENDIR="Otwórz katalog" + EMPTYDIR="Opróżnij katalog" + SIZE="rozmiar" + ;; + *) + TITLE="Wallpaper Generator (ImageMagick)" + RANDCOLORS="Random colors" + PICKCOLORS="Pick colors..." + WALLPAPERMENU="Wallpapers Menu" + RANDOMEFFECT="Random effect" + SOLID="Solid color" + BLURRED="Blurred" + LINEAR="Linear gradient" + RADIAL="Radial gradient" + TWISTED="Twisted gradient" + BILINEAR="Bilinear gradient" + PLASMA="Plasma" + ONECOLOR="(pick one color)" + TWOCOLORS="(pick two colors)" + FOURCOLORS="(pick four colors)" + IMAGES="Generated images" + OPENDIR="Open directory" + EMPTYDIR="Empty directory" + SIZE="size" + ;; +esac + +. $HOME/.config/mabox/mabox.conf +DIR="$(xdg-user-dir PICTURES)/mb-canvas" +files="$(ls ${DIR}|wc -l)" +du="$(du -sh ${DIR}|awk '{print $1}')" +me="jgwallpapergenerate -s" + + + +out+=("^sep($TITLE)") +out+=("^sep($RANDCOLORS)") +out+=("$RANDOMEFFECT,mb-canvas -Ra;$me") +out+=("^sep()") +out+=("$SOLID,mb-canvas -Ras;$me") +out+=("$BLURRED,mb-canvas -RaB;$me") +out+=("$LINEAR,mb-canvas -Ral;$me") +out+=("$RADIAL,mb-canvas -Rar;$me") +out+=("$TWISTED,mb-canvas -Rat;$me") +out+=("$BILINEAR,mb-canvas -Rab;$me") +out+=("$PLASMA,mb-canvas -Rap;$me") +out+=("^sep($PICKCOLORS)") +out+=("$SOLID $ONECOLOR,mb-canvas -as;$me") +out+=("$LINEAR $TWOCOLORS,mb-canvas -al;$me") +out+=("$RADIAL $TWOCOLORS,mb-canvas -ar;$me") +out+=("$TWISTED $TWOCOLORS,mb-canvas -at;$me") +out+=("$BILINEAR $FOURCOLORS,mb-canvas -ab;$me") +if [ "$files" -gt "0" ]; then +out+=("\"\"\"^sep($IMAGES: $files - $SIZE: ${du})\"\"\"") +out+=("$OPENDIR,xdg-open $DIR") +out+=("$EMPTYDIR,rm ${DIR}/*.png;$me") +fi + + +### RUN +if [[ "$1" == "-s" ]]; then +. /usr/share/mb-jgtools/pipemenu-standalone.cfg +. $HOME/.config/mabox/mabox.conf + +out+=("^sep()") +out+=(" ⮜ $WALLPAPERMENU,jgwallpaperchanger -s") + +if [[ $panels_heightpos == "top" ]]; then +MENU_VALIGN="top" +MENU_MARGIN_Y=${panels_topmargin:-0} +elif [[ $panels_heightpos == "bottom" ]]; then +MENU_VALIGN="bottom" +MENU_MARGIN_Y=${panels_topmargin:-0} +else + MENU_VALIGN="center" +fi +MENU_PADDING_TOP=${jgtools_padding:-0} +MENU_HALIGN="left" +jgmenu_icon_size=0 +JGWIDTH=40 +menu_margin_x=${submenu_spacing:-0} +[ $(pidof picom) ] && MENU_RADIUS=$jgtools_radius +[ -z $jgmenu_use_borders ] && menu_border=0 + +mkconfigfile + +cat < ${MENU_ITEMS} +$(printf '%s\n' "${out[@]}") +$(printf '%s\n' "${out2[@]}") +EOF + +jgmenu --config-file=${CONFIG_FILE} --csv-file=${MENU_ITEMS} 2>/dev/null + +exit 0 + +fi +printf '%s\n' "${out[@]}" +printf '%s\n' "${out2[@]}"