Тож я налаштовую деякі шаблони користувальницьких шаблонів LaunchAgents для налаштування заставки за замовчуванням для деяких із найпопулярніших фан-артів моєї компанії. (Це насправді було добре сприйнято командою). Вони розроблені як перші запущені зображення, коли вони входять у своїх примусово-локальних користувачів Active Directory.
Однак я зараз отримую дуже непослідовні результати ... а саме це зовсім не працює.
.Plist запускає скрипт оболонки, розташований у папці / sbin /. Дивна річ у тому, що вона здебільшого працює у існуючого користувача.
Заставка призначена для використання "Flipup" із певною папкою зображень, переміщенням зображень та зміщенням часу початку 5 хвилин.
Наприклад, я навмисно встановив свою заставку "Користувач конфігурації за замовчуванням" спочатку на "Holiday Mobile", встановив для вибору зображення "Cosmos" (один із значень за замовчуванням) з початковим часом 20 хвилин і невірно встановленим "переміщенням зображень". Потім я змінив його на "Арабеск".
Коли я вийшов із системи та знову увійшов, щоб запустити сценарій, у результаті я отримав "Holiday Mobile". Однак, коли я перейшов до "Налаштування робочого столу та заставки", "Arabesque" був фактично вибраний, хоча попередній перегляд "Holiday Mobile" відображався із сірим "Параметри заставки" внизу. (Однак час початку змінився на 5 хвилин, і коли я натиснув "Holiday Mobile", "Замовлення слайдів-перемикачів" було перевірено належним чином.)
Тож у тестового користувача переходить у Fan Art, активуючи Shuffle та змінюючи час.
Але коли я створюю нового користувача після додавання LaunchAgent .plist до шаблону користувача за замовчуванням, я не отримую нічого, крім стандартної заставки «Ім'я комп’ютера» на чорному тлі.
Я повністю розгублений, чому це відбувається. Будь-які пропозиції?
Ось сценарій оболонки:
`` `
#!/bin/sh
## Set Screensaver to Photo Slideshow
/usr/bin/defaults -currentHost write com.apple.screensaver 'CleanExit' -string "YES"
/usr/bin/defaults -currentHost write com.apple.screensaver 'PrefsVersion' -int "100"
/usr/bin/defaults -currentHost write com.apple.screensaver 'idleTime' -int "300"
/usr/bin/defaults -currentHost write com.apple.screensaver "moduleDict" -dict-add "path" -string "/System/Library/Frameworks/ScreenSaver.framework/Resources/iLifeSlideshows.saver"
/usr/bin/defaults -currentHost write com.apple.screensaver "moduleDict" -dict-add "type" -int "0"
/usr/bin/defaults -currentHost write com.apple.screensaver 'ShowClock' -bool "false"
/usr/bin/defaults -currentHost write com.apple.screensaver 'tokenRemovalAction' -int "0"
## Set Type of Slideshow to "Flipup" (Results inconsistent)
/usr/bin/defaults -currentHost write com.apple.ScreenSaver.iLifeSlideshows 'styleKey' -string "Flipup"
## Set location of photos to Fan Art
/usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser 'SelectedSource' -int "4"
/usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser 'SelectedFolderPath' "/Manehattan Files/Manehattan Backgrounds/Fan Art"
/usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser 'ShufflesPhotos' -bool "true"
## Removes the .plist LaunchAgent from inside the User Launch Agent Folder.
rm -f ~/Library/LaunchAgents/set-screensaver.plist
exit
`` `