it-swarm.com.de

Nautilus kann ein Desktop-Hintergrundbild festlegen. Wie kann das Anmelde- und Sperrbildschirm-Hintergrundbild eingestellt werden?

In Nautilus gibt es eine Menüoption, um das aktuelle Bild als Desktop-Hintergrund zu verwenden:

Nautilus Wallpaper

Wie kann ich das aktuelle Bild als Hintergrundbild für den Anmeldebildschirm und den Sperrbildschirm verwenden?

2

Nach der Verwendung von Nautilus zum Navigieren und Anzeigen einer geeigneten PNG- oder JPG-Datei als Anmeldebildschirm und Sperrbildschirmhintergrund kann Nautilus dies mithilfe eines Skripts für Sie festlegen:

Set Login Wallpaper.gif

Hinweis: In Ubuntu 18.04 wird nur das Hintergrundbild für den Sperrbildschirm geändert. Eine andere Technik ist erforderlich, um das Login-Hintergrundbild zu ändern.

So erstellen Sie das Skript:

cd ~/.local/share/nautilus/scripts/
gedit set-login-wallpaper

Füge diese Zeilen ein:

#!/bin/bash

## Set login wallpaper

# strip new line char passed by Nautilus
FILENAME=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | sed -e 's/\r//g')

# Multiple files can't be selected.
LINE_COUNT=$(wc -l <<< "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS")
LINE_COUNT=$((LINE_COUNT-1))

if [[ $LINE_COUNT > 1 ]] ; then
    zenity --error --text "Ony one file can be selected at a time! "
    exit 1
fi

# Object type must be "file..." (ie no directories, etc.)
if [ -d "${FILENAME}" ] ; then
    zenity --error --text "$FILENAME is a directory!";
    exit 1
else
    if [ -f "${FILENAME}" ]; then
        : # Bash noop
    else
        zenity --error --text "${FILENAME} is not a file!";
        exit 2
    fi
fi

# Build working file in /tmp
echo "[com.canonical.unity-greeter]" > /tmp/set-login-wallpaper.tmp
echo "draw-user-backgrounds=false" >> /tmp/set-login-wallpaper.tmp
echo "background='$FILENAME'" >> /tmp/set-login-wallpaper.tmp

# Must run as Sudo
if [ "$EUID" -ne 0 ] ; then

    # Get Sudo password
    PASSWORD=$(zenity --password --title="Set Login Wallpaper" --timeout=20)

    # copy working file to real file using Sudo
    echo $PASSWORD | Sudo -S cp /tmp/set-login-wallpaper.tmp \
/usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema.override

    # compile using Sudo
    echo $PASSWORD | Sudo -S glib-compile-schemas /usr/share/glib-2.0/schemas

else
    # Already Sudo so simply copy and compile
    # copy working file to real file
    cp /tmp/set-login-wallpaper.tmp \
/usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema.override

    # compile
    glib-compile-schemas /usr/share/glib-2.0/schemas
fi

exit 0

Speichern Sie die Datei und beenden Sie den Editor gedit.

Markieren Sie nun das Skript als ausführbar mit:

chmod +x set-login-wallpaper

Öffnen Sie Nautilus und navigieren Sie mit Hintergrundbildern zu Ihrem Verzeichnis. Suchen Sie ein passendes Bild und klicken Sie mit der rechten Maustaste darauf. Dieses Dropdown-Menü wird angezeigt:

Nautilus Right Click Drop Down

Klicken Sie auf die dritte Option Scripts. Ein weiteres Dropdown-Menü mit all Ihren Skripten wird angezeigt:

Nautilus set-login-wallpaper Drop Down

Wählen Sie set-login-wallpaper.

Wenn das Skript ausgeführt wird, müssen Sie Ihr Sudo Passwort eingeben.

Starten Sie neu und genießen Sie Ihr neues Login-Hintergrundbild.

3