Converti APP in DMG
Crea un DMG compresso e drag-and-drop a partire da un macOS .app bundle su un Mac.
Crea file DMG online
Non sappiamo ancora leggere i file APP, quindi questa conversione non è disponibile. Se puoi esportare il tuo lavoro in uno di questi formati, ne ricaviamo un DMG:
Come convertire app in dmg file
- Immagini del disco
- Ancora nessuna valutazione.
Le applicazioni macOS vengono spesso distribuite come bundle .app, mentre i download utilizzano comunemente una singola immagine disco .dmg per il montaggio e l’installazione tramite trascinamento. Impacchettare un’app in questo modo semplifica la distribuzione senza modificare l’applicazione stessa.
Che cos’è il formato APP
Su macOS, “APP” indica normalmente un bundle applicativo .app. È una directory contenente l’eseguibile, le risorse, i metadati, i framework e le informazioni di firma del codice; Finder lo visualizza come un’unica applicazione. Xcode e altri strumenti di sviluppo creano questi bundle, che si trovano comunemente in /Applications, negli archivi ZIP o in directory di build come build/Release/.
Questa operazione consiste nell’impacchettamento, non nella conversione del codice. Il formato dell’eseguibile dell’applicazione, l’architettura della CPU, le risorse e i dati di firma rimangono invariati; il bundle viene inserito in un contenitore di immagine disco.
Che cos’è il formato DMG
DMG è il formato di immagine disco di Apple per macOS. L’apertura di un file .dmg lo monta come volume virtuale in Finder, dove l’utente può copiare un’applicazione in /Applications, aprire la documentazione o eseguire un package di installazione incluso.
Un DMG può contenere compressione, crittografia, checksum, un nome personalizzato del volume e impostazioni di visualizzazione di Finder. Un’immagine compressa e di sola lettura, generalmente creata con il formato UDZO, è la scelta normale per i download di applicazioni perché riduce le dimensioni del trasferimento e impedisce modifiche accidentali ai file distribuiti.
Come creare un DMG con hdiutil
Il comando hdiutil integrato di Apple è l’opzione più affidabile per build ripetibili. Esegui questi comandi in Terminal su un Mac, sostituendo MyApp con il nome effettivo dell’applicazione:
- Crea una directory temporanea di staging, copia il bundle con
dittoe aggiungi un alias ad Applications:
staging=$(mktemp -d "${TMPDIR:-/tmp}/MyApp.XXXXXX")
ditto "/Applications/MyApp.app" "$staging/MyApp.app"
ln -s /Applications "$staging/Applications"
- Crea un DMG compresso sulla Scrivania:
hdiutil create \
-volname "MyApp" \
-srcfolder "$staging" \
-format UDZO \
-ov \
"$HOME/Desktop/MyApp.dmg"
rm -rf "$staging"
- Apri
MyApp.dmg, copia l’applicazione su un Mac di test e avviala. Dopo il test, smonta il volume montato con:
hdiutil detach "/Volumes/MyApp"
Il bundle sorgente può provenire da una directory di build invece che da /Applications. Copiarlo con ditto preserva i metadati del bundle applicativo in modo più affidabile rispetto a trattare il bundle come una normale raccolta di file.
Opzioni grafiche e di terze parti
Per una conversione occasionale, usa Utility Disco: seleziona File → New Image → Image from Folder, scegli una cartella di staging contenente il bundle .app e un alias facoltativo ad Applications, seleziona compressed come formato dell’immagine e salva con estensione .dmg.
DropDMG è una valida alternativa desktop per macOS in grado di automatizzare lo staging, il layout del volume, la compressione, la firma e i release ripetibili. Anche una semplice utility come App2Dmg può creare un’immagine per l’installazione tramite trascinamento, ma esamina il risultato e testa l’immagine montata prima della distribuzione. Gli strumenti nativi di macOS sono preferibili perché possono preservare i metadati del bundle e verificare il risultato.
I convertitori online non sono appropriati per i normali bundle .app. Il caricamento di un’applicazione espone il codice eseguibile e le risorse proprietarie, inoltre un servizio web potrebbe non preservare i symlink, gli attributi estesi, i permessi o i dati di firma. Usa uno strumento locale per Mac; le utility per Windows possono creare un contenitore, ma non possono verificare in modo affidabile l’avvio, la firma o la notarizzazione su macOS.
Limitazioni di compatibilità e firma
La creazione di un DMG non rende l’applicazione multipiattaforma e non ne modifica l’architettura. Un’applicazione esclusivamente Intel necessita ancora del supporto Intel o di Rosetta 2 sui dispositivi Apple silicon, un’applicazione esclusivamente Apple silicon necessita di un Mac compatibile e un’applicazione universale contiene entrambe le architetture. L’immagine inoltre non aggira i controlli di Gatekeeper, quarantena, firma del codice o notarizzazione.
Per la distribuzione pubblica, firma l’applicazione prima di creare l’immagine, quindi firma e sottoponi a notarizzazione il DMG finito. Non modificare l’applicazione dopo averla firmata. Un comando di verifica è:
codesign --verify --deep --strict --verbose=2 "/Applications/MyApp.app"
Usa un formato di immagine scrivibile solo quando gli utenti devono modificare file all’interno dell’immagine montata. Per un normale download di applicazione, UDZO è più piccolo e di sola lettura; testa l’applicazione copiata sulle versioni di macOS e sui tipi di processore che intendi supportare.