Quiero distribuir una aplicación multiplataforma para la cual el archivo ejecutable es ligeramente diferente, dependiendo del usuario que lo descargó. Esto se hace teniendo una cadena de marcador de posición en algún lugar del ejecutable que se reemplaza con algo específico del usuario al momento de la descarga.Creación de archivos .dmg personalizados al descargar
El servidor web que tiene que hacer estos reemplazos de cadena es una máquina Linux. Para Windows, el ejecutable no está comprimido en el instalador .exe, por lo que el reemplazo de cadenas es fácil.
Para archivos .dmg Mac OS X sin comprimir, esto también es fácil. Sin embargo, los archivos .dmg comprimidos con gzip o bzip2 no son tan fáciles. Por ejemplo, en el último caso, la .dmg comprimida no es una gran imagen de disco comprimido bzip2, sino que consiste en unas pocas partes comprimidas bzip2 diferentes (con diferentes tamaños de bloque) y un sufijo plist. Además, descomprimir y recomprimir las diferentes partes con bzip2 no da como resultado los datos originales, así que supongo que Apple usa algunos parámetros diferentes para bzip2 que la herramienta de línea de comandos.
¿Hay alguna manera de generar un .dmg comprimido desde uno sin comprimir en Linux (que no tiene hdiutil)? ¿O tal vez otra sugerencia para crear aplicaciones personalizadas sin pregenerarlas? Debería funcionar sin ninguna entrada por parte del usuario.
¿Estás preguntando cómo cambiar el nombre de un archivo que vive dentro de un archivo .dmg en Linux? – Seth
No, reemplazando una cadena terminada en nulo en algún lugar dentro de uno de los archivos en .dmg. – Marten
¿Por qué necesita estar en un archivo .dmg en absoluto? –