¿Dónde lanza Launchpad la información de la carpeta? (base de datos, etc?)

2

He estado buscando y tratando de resolver esto, pero parece que no puedo.

Sé que la base de datos SQL del launchpad se almacena en ~/Library/Application Support/Dock/some-uuid.db ( ref ), pero lo mejor que puedo decir es que no parece incluir ninguna información sobre las carpetas creadas en el launchpad.

¿Alguien sabe dónde se almacena esta información y en qué formato?

Editar: Encontré la ubicación, detalles en mi respuesta a continuación. Los únicos bits que no puedo entender ahora son:

  • Cómo crear una nueva carpeta mediante programación y mover aplicaciones a ella (usando esta db)
  • Para qué se utilizan los archivos db-shm y db-wal .
  • Ya sea que se use ~/Library/Application Support/Dock/some-uuid.db o si fue solo una sobra de una actualización de osx.
pregunta devalias 04.05.2016 - 05:04

1 respuesta

2

Ok, creo que lo he encontrado. Resulta que (al menos bajo El Capitán) las cosas son un poco diferentes.

Esta respuesta de AskDifferent por < a href="https://apple.stackexchange.com/users/112442/greg-hacke"> Greg Hacke me indicó la dirección correcta.

Parece que las bases de datos se almacenan en $TMPDIR/../0/com.apple.dock.launchpad/db/ , con la base de datos de sqlite principal apropiadamente llamada db .

(Después de leer Geoff Hackworth AskDifferent response , parece que una mejor manera de obtener la ruta sería getconf DARWIN_USER_DIR y no que $TMPDIR/../0/ )

Al editar esto con una GUI de sqlite se mostró que la tabla groups almacena las carpetas, con title sosteniendo el nombre de la carpeta.

Después de realizar los cambios deseados y volver a escribirlos en la base de datos, todavía necesitamos hacer un killall Dock para actualizar la pantalla del launchpad.

Algunas observaciones:

  • Hay varios grupos que no tienen un title (establecido en nulo), por lo que no estamos realmente seguros de para qué son.
  • Parece que solo crear una nueva entrada no hace que aparezca un grupo (¿quizás porque sería una 'carpeta vacía'?).
    • En este caso, ¿cómo podemos crear una nueva carpeta y mover aplicaciones desde la base de datos?
  • Al editar el campo title en la tabla apps , podemos cambiar el nombre para mostrar de la aplicación.
respondido por el devalias 04.05.2016 - 05:43

Lea otras preguntas en las etiquetas