1 votos

Modificar la configuración de fondo de pantalla "Mostrar en todos los espacios" por shell en macOS Sonoma

En la configuración del sistema, en Wallpaper, hay una nueva opción de alternancia para "Mostrar en todos los espacios". Estoy buscando una forma de establecer esta opción a través de la terminal en el shell ya que cuando se establece un nuevo fondo de pantalla, el interruptor vuelve a desactivarse.

wallpaper

He intentado diferenciar los valores predeterminados antes y después de cambiar la opción para ver si hay alguna configuración a la que tenga acceso, pero sin suerte. También estoy investigando con osascript y puedo establecer la imagen de fondo de escritorio allí, pero no he encontrado una forma de cambiar esa configuración desde osascript.

Edición: aquí hay una forma de hacerlo, pero no es lo ideal. ¡Me gustaría poder configurarlo sin lanzar la aplicación!

  tell application "System Events"
      tell application "System Settings"
          activate
      end tell
      delay 0.5
      tell process "System Settings"
          delay 0.5
          click menu item "Wallpaper" of menu "View" of menu bar 1
          delay 0.5
          click checkbox "Show on all Spaces" of group 2 of scroll area 1 of group 1 of group 2 of splitter group 1 of group 1 of window "Wallpaper"
      end tell
      delay 0.5
      tell application "System Settings"
          quit
      end tell
  end tell

0voto

sumga13 Puntos 16

Así que investigué un poco y parece que macOS Sonoma usa un nuevo archivo .plist para cosas relacionadas con fondos de pantalla/pantalla de protector, ubicado en ~/Library/Application Support/com.apple.wallpaper/Store/Index.plist.

Puedes editar este .plist para lograr lo que estás buscando.

  1. Ve a Preferencias del Sistema > Fondo de Escritorio y asegúrate de seleccionar un fondo de pantalla de una carpeta que has añadido tú mismo y que "Mostrar en todos los Espacios" esté activado.
  2. Ingresa lo siguiente en una terminal:

    nueva_ruta_fondo="/ruta/al/fondo_de_pantalla.jpg"; \ /usr/libexec/PlistBuddy -c "set AllSpacesAndDisplays:Desktop:Content:Choices:0:Files:0:relative file:///$nueva_ruta_fondo" ~/Library/Application\ Support/com.apple.wallpaper/Store/Index.plist && \ killall WallpaperAgent

Issue de GitHub que me ayudó a entender esto: https://github.com/JohnCoates/Aerial/issues/1332

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X