Administre elementos de inicio de sesión desde la terminal en 10.11 El Capitan

Anteriormente ,

% launchctl submit -l label -- command args

era el camino a seguir.

Esto no funciona en 10.11.2, estoy bastante seguro de que funcionaba en 10.10.x, pero no puedo estar seguro.

El plist de aspecto probable no acepta la edición manual:

% defaults read ~/Library/Preferences/com.apple.loginitems.plist
{
    SessionItems = {
        Controller = CustomListItems;
        CustomListItems = (
            ...,
            {
                Alias = <00000000 00ec0003 00010000 d29c9a2e 0000482b 00000000 00083b9f 00083ba5 0000d217 ce980000 00000920 fffe0000 00000000 0000ffff ffff0001 00140008 3b9f0008 3b9e0007 91170007 91160007 9115000e 001c000d 00530070 00650063 00740061 0063006c 0065002e 00610070 0070000f 00300017 00410050 0050004c 00450020 00530053 00440020 00530044 00300031 00320038 00460020 004d0065 00640069 00610012 00386f70 742f686f 6d656272 65772d63 61736b2f 4361736b 726f6f6d 2f737065 63746163 6c652f31 2e302e31 2f537065 63746163 6c652e61 70700013 00012f00 ffff0000>;
                CustomItemProperties = {
                    "com.apple.LSSharedFileList.Binding" = <646e6962 00000000 02000000 00000000 00000000 00000000 00000000 41000000 00000000 66696c65 3a2f2f2f 6f70742f 686f6d65 62726577 2d636173 6b2f4361 736b726f 6f6d2f73 70656374 61636c65 2f312e30 2e312f53 70656374 61636c65 2e617070 2f1d0000 00000000 00636f6d 2e646976 69736962 6c656279 7a65726f 2e537065 63746163 6c650000 000000f4 07008e40 10100200 00009855 a21b>;
                };
                Name = "Spectacle.app";
            },
            ...
        );
    };
}
%

Seguramente hay una mejor manera?

Respuestas (1)

Bueno, parece que no hay una forma más limpia que Applescript, al menos mis búsquedas no han arrojado nada.

Así que he escrito un script simple para agregar/eliminar/enumerar elementos de inicio de sesión :

% loginitems -a Caffeine -p "/Applications/Caffeine.app"
% loginitems -l
Caffeine
% loginitems -d Caffeine
% loginitems -l
%
¿No debería la fórmula Homebrew que creó para esto estar en un toque separado en lugar de una bifurcación del repositorio heredado de Homebrew , que quedó obsoleto por lo que los mantenedores y colaboradores del proyecto llamaron la "división de núcleo/fórmula", que se documentó en este ¿ Problema de GitHub ? Arreglar esto eliminaría una gran cantidad de basura de su repositorio, ¿no está de acuerdo?
@RandomDSdevel cf. github.com/ojford/homebrew-formulae ( brew tap OJFord/formulae && brew install loginitems, o creo que brew install OJFord/formulae/loginitemstambién funciona)
¡Excelente! Gracias por actuar tan rápido en mi sugerencia!
@RandomDSdevel No lo hice;) ( ver historial ).
Ah, así que simplemente se olvidó de agregar un aviso de obsolescencia y redirigir a la bifurcación anterior (o simplemente aún no lo ha hecho).
@RandomDSdevel El enlace a mi bifurcación de preparación (heredada) es un poco confuso, pero las instrucciones protegidas por código son exactamente como las describí aquí.
Sí, vi que al menos has hecho eso por ahora. Solo pensé en mencionar arreglar la confusión de enlaces que mencionaste como un posible elemento pendiente futuro para que puedas agregarlo a tu lista de tareas pendientes si lo deseas.
No he cambiado nada, no necesita cambiar por lo que puedo ver, ya que funciona bien tal como está. Eres una de las 5 personas que lo usan, por lo que difícilmente sería un gran problema incluso si no lo hiciera;)
Si te molesta tanto, las relaciones públicas son bienvenidas.
No sé si podría hacerlo de inmediato, pero podría bifurcar su repositorio y crear un problema en dicha bifurcación para recordarme que lo resuelva con un PR más tarde (eso me recuerda que necesito hacer eso para algunas otras cosas, también...)