software - no puedo instalar macos high sierra
¿Puedes actualizar una aplicación de Mac en un espacio aislado con Sparkle o algo similar? (3)
Para aquellos que distribuyen aplicaciones de Mac fuera de la tienda de aplicaciones de Mac, ¿cómo planea admitir la actualización y el sandboxing? Supongo que las respuestas de la mayoría de las personas por el momento son que no lo son, pero espero que las aplicaciones que no son MAS eventualmente se puedan convertir en una caja de arena como las aplicaciones MAS.
Para usar Sparkle, su aplicación necesitaría acceso a la red, que podría otorgarse, así como la capacidad de sobrescribirse en las aplicaciones. Actualmente, podría hacer esto con el derecho com.apple.security.temporary-exception.files.absolute-path.read-write, pero esa no es una buena solución. Es probable que desaparezca, e incluso si no es así, tiene poco sentido en una aplicación de espacio aislado si va a darle acceso completo de lectura y escritura al sistema de archivos, así como acceso a la red.
¿Alguien ya ha tomado este camino y ha encontrado una buena solución? Lo pregunto porque trato de mantener mi compilación MAS y mi compilación no MAS tan idénticas como sea posible, y actualmente estoy considerando que mi compilación de MAS sea una caja de arena y mi compilación no MAS.
En realidad, tenemos dos versiones de nuestra aplicación: una para nuestro propio sitio web y otra para la tienda de aplicaciones.
Recomiendo usar el enfoque de Sam Deane que puede encontrar en su repositorio de GitHub . Funciona bien para nosotros.
En una conversación iniciada por @chockenberry en twitter , @andy_matuschak respondió favorablemente a la creación de un servicio XPC para Sparkle.
Tengo una solicitud de extracción abierta en GitHub que realmente crea el servicio XPC. Con suerte, esto se incorporará a Sparkle pronto.
github.com/sparkle-project/Sparkle/issues/363
A partir de la 1.15, Sparkle no admite sandboxing, y el parche que está flotando tiene una vulnerabilidad que permite eludir completamente la seguridad de sandbox.