Ho uno screensaver molto bello ispirato a Matrix. Mi piacerebbe avere lo screensaver in movimento da posizionare come immagine di sfondo del mio desktop.
Come posso impostare il mio salvaschermo come immagine di sfondo per il desktop?
Ho uno screensaver molto bello ispirato a Matrix. Mi piacerebbe avere lo screensaver in movimento da posizionare come immagine di sfondo del mio desktop.
Come posso impostare il mio salvaschermo come immagine di sfondo per il desktop?
Devi aprire il terminale e digitare cd /System/Library/Frameworks/ScreenSaver.framework/Resources
e ./ScreenSaverEngine.app/Contents/MacOS/ScreenSaverEngine -background
. Ci vorranno molte risorse però, quindi per uscire, devi uscire dalla finestra del terminale.
fonte: TUAW e Lifehacker
È inoltre possibile creare un file plist posizionato nella cartella LaunchAgent dell'utente.
/Users/username/Library/LaunchAgents/com.username.runscreensaver.plist
Hai caricato un terminale con:
launchctl load /Users/username/Library/LaunchAgents/com.username.runscreensaver.plist
O scaricalo con:
launchctl unload /Users/username/Library/LaunchAgents/com.username.runscreensaver.plist
Ecco il contenuto di questo file plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>com.username.runscreensaver</string>
<key>ProgramArguments</key>
<array>
<string>/System/Library/Frameworks/ScreenSaver.framework/Resources/ScreenSaverEngine.app/Contents/MacOS/ScreenSaverEngine</string>
<string>-background</string>
</array>
<key>ThrottleInterval</key>
<integer>0</integer>
</dict>
</plist>
Sfortunatamente (almeno sotto 10.9.5) ScreenSaverEngine ha impostato il livello della finestra errato (sotto kCGDesktopWindowLevel) per funzionare correttamente con il controllo della missione e gli spazi che portano ad alcuni problemi durante il riavvio, cambia schermo, accesso e disconnessione che porta ad un screensaver invisibile.
Per risolvere questo problema è necessario scrivere il proprio salvaschermo che eredita le proprietà di ScreenSaverEngine durante l'esecuzione e corregge il livello della finestra (ad esempio [self.window setLevel: kCGDesktopWindowLevel];).
Leggi altre domande sui tag desktop screensaver wallpaper