¿Por qué hay tantas descargas de Mac que .dmg solo contiene un único .pkg?

22

Me di cuenta de que muchas descargas son un dmg (imagen de disco) que contiene un solo archivo pkg (paquete de instalación). Por lo general, el paquete parece estar ya comprimido, ya que el dmg no reduce el tamaño del archivo, si es que lo hay.

Ejemplo :

Un ahorro de 737,658 bytes, o 0.6% del tamaño original del archivo.

¿Hay alguna razón para no solo distribuir el paquete? ¿Es tan importante el ahorro de compresión del 0.6%? ¿O es la forma en que siempre se han hecho las cosas en Mac?

(Sí, me doy cuenta de que 737,658 bytes por todos los millones de descargas que obtiene dmg se suman, pero siempre parece molesto tener esos pasos adicionales para montar un dmg, ejecutar el instalador y luego desmontar el dmg. Quizás un La mejor pregunta es "¿por qué Mac OS X no reconoce un dmg con un solo paquete dentro de él como un simple paquete y simplemente lo instala sin requerir todo ese montaje y desmontaje?")

Jim McKeeth
fuente
En realidad, los paquetes modernos son archivos planos, no carpetas. Por lo tanto, ya no es necesario ponerlos en un dmg solo para proporcionar un archivo plano.
mlaster
@mlaster Eso no parece ser cierto. ¿Tienes un ejemplo?
Gerry
1
radiosilenceapp.com/downloads/Private%20Eye.pkg es un ejemplo, como lo es JavaForMacOSX10.7.pkg (aunque Apple todavía lo tiene como .dmg cuando está listo para descargar). Tengo varios otros en mi archivo de Descargas, pero definitivamente aún no es universal. filelos enumera como "archivo xar - versión 1" Pero luego está la cuestión de asegurarse de que el servidor web esté configurado para forzar la descarga de archivos .pkg en lugar de mostrarlos. (Espero que algunos desarrolladores usen .zip en lugar de .dmg por la misma razón: incluso los servidores y navegadores web peor configurados saben que deben descargar archivos .zip).
TJ Luoma
1
Sin embargo, incluso una vez que obtuvimos archivos planos, muchos desarrolladores pusieron archivos .pkg dentro de un .zip porque pueden contar con servidores para tener su tipo MIME configurado correctamente para archivos .zip pero no necesariamente para .pkg (o .dmg para el caso) )
TJ Luoma

Respuestas:

24

Técnicamente, un .pkg no es un archivo , sino una carpeta . Entonces, tal vez recopilarlo en un solo archivo es esencial para la descarga.

GEdgar
fuente
1
Ni siquiera me di cuenta de esto, pero golpeaste el clavo en la cabeza.
Gerry
Tampoco sabía eso de un .pkg. Sabiendo que todo tiene sentido. ¡Gracias!
Jim McKeeth
2
Empaquetarlo en un dmg significa que cualquier atributo de archivo extendido de OS X y / o tenedores de recursos se conservan y puede servirlo desde un servidor web que no sea OS X. También es la razón por la cual el formato del paquete se actualizó para incluir archivos planos en versiones recientes de OS X.
Joe Block
66
Esta respuesta ya no es exactamente cierta, .pkghoy en día los archivos son más que una carpeta simple: en.wikipedia.org/wiki/Installer_(OS_X)#Installer_package
t0r0X
1
@wisbucky: eso debe ser más reciente que 2011, como lo señala t0r0X.
GEdgar
14

Se puede verificar la integridad de los datos en la imagen DMG con la utilidad Disco. Puede hacer que sea obligatorio que el usuario acepte la licencia antes de montar dmg. Podría estar bloqueado por modificaciones. Puede agregar fácilmente archivos y carpetas ocultos en DMG. Puedes hacer una imagen de fondo. Puede evitar que se eliminen durante el tránsito a través de sistemas de archivos no compatibles con metadatos como FAT.

Muchas razones en realidad .

iskra
fuente
1
Todas las características interesantes de un DMG, pero no agregan nada a un PKG a menos que no puedan verificar seriamente su propia integridad.
Jim McKeeth el
6

Una posible razón podría ser que Safari por defecto monta automáticamente archivos DMG, y que una ventana del Finder aparecería con los contenidos. A su vez, la carpeta DMG podría diseñarse con, por ejemplo, una imagen de fondo. Supongo que podría considerarse más fácil de usar que tener que buscar un instalador en su carpeta Descargas, pero estoy de acuerdo en que es bastante discutible.

Otra razón sería la capacidad de agrupar también otros archivos de soporte, por ejemplo, archivos de documentación o incluso instaladores secundarios.

Sin embargo, no es una distribución tan común para empezar. La mayoría de las aplicaciones se distribuyen como carpetas .app autónomas dentro de un archivo DMG (si no a través de la App Store ahora). Su ejemplo parece ser más bien una excepción para mí, aunque ¿quizás es más común con algunos canales de distribución particulares? Personalmente, no me detendría mucho más.

Gerry
fuente
1
+ 1 para el último párrafo - pensé debido a troyanos som .dmg s no son (definitivamente no debe) ser montado de forma automática
user151019
@Gerry, montado automáticamente ?? ¿Qué loca loca es esta?
Pacerier
@Gerry, ¿no contradice esto "... estoy de acuerdo con la licencia ..." en apple.stackexchange.com/a/30698/6533 ?
Pacerier
1

Otra razón más es que no puede ejecutar archivos .pkg directamente desde volúmenes de red, pero puede ejecutar un .dmg desde un volumen de red y luego iniciar el paquete.

benwiggy
fuente