web-dev-qa-db-fra.com

Création du "programme d'installation" de Nice dmg pour Mac OS X

J'ai créé ma première application Qt pour Mac OS X. Je souhaite maintenant créer un fichier .dmg permettant à l'utilisateur de l'installer facilement. Je pense à quelque chose comme firefox (voir la photo): enter image description here

Je suis complètement nouveau dans ce domaine, alors je ne sais même pas par où commencer.

76
xx77aBs

Mise à jour de cette question en fournissant cette réponse.

appdmg est un programme de ligne de commande open source, simple, facile à utiliser, qui crée des fichiers dmg à partir d'une simple spécification Json. Jetez un coup d'œil au readme sur le site officiel:

https://github.com/LinusU/node-appdmg

Exemple rapide:

  1. Installer appdmg

    npm install -g appdmg
    
  2. Ecrire un fichier json (spec.json)

    {
      "title": "Test Title",
      "background": "background.png",
      "icon-size": 80,
      "contents": [
        { "x": 192, "y": 344, "type": "file", "path": "TestApp.app" },
        { "x": 448, "y": 344, "type": "link", "path": "/Applications" }
      ]
    }
    
  3. Exécuter de programme

    appdmg spec.json test.dmg
    

(disclaimer. Je suis le créateur de appdmg)

83
Linus Unnebäck

C’est assez simple - l’idée de base est de créer une image vierge en utilisant tilitaire de disque (rendez-la assez grande pour tenir au moins votre contenu - la taille exacte importe peu), ouvrez cette image en utilisant - Finder, placez vos éléments et organisez-les comme vous le souhaitez (utilisez les boutons droit de la souris et Options d'affichage pour définir des paramètres tels que la taille des icônes ou l'image d'arrière-plan). C'est presque tout - il ne reste plus qu'à convertir cette image r/w en une image compressée: éjectez-la et utilisez Convertir en tilitaire de disque pour le convertir en une image compressée.

19
Simon Urbanek

Aucune des réponses existantes ne l’a vraiment fait pour moi; une réponse est manuelle, et les deux autres options - iDMG et node-appdmg - impliquent toutes les deux l'application de script du Finder, ce qui n'est pas idéal.

La meilleure façon de le faire en tant que phase de construction automatique est de créer un template.dmg qui ressemble exactement à ce que vous voulez (en suivant les instructions habituelles, par exemple la réponse de Simon Urbanek, mais sans effectuer la dernière étape de compression), puis dans votre construction. scénario:

  1. Utilisez hdiutil pour attacher l'image
  2. Utilisez cp etc pour copier l'application dans l'image montée
  3. hdiutil se détache
  4. compresser l'image: hdiutil convertir "in.dmg" -quiet -format UDZO -imagekey zlib-level = 9 -o "MonApp-0.3.dmg"

Il y a un fichier makefile à l'emplacement https://github.com/remko/fancy-dmg/ qui contient ces étapes.

9
JosephH

Ce script rend la génération DMG très facile: https://github.com/andreyvit/create-dmg

De plus, il n'y a pas de dépendance de noeud :-)

4
Martin Delille

Vous pouvez le faire avec le Finder:

  1. Téléchargez et décompressez ce fichier DMG vide (c'est moi qui l'ai créé et téléchargé)
  2. Redimensionnez le fichier DMG à la taille appropriée (la taille appropriée est généralement sa taille actuelle plus la taille de votre fichier .app). Pour ce faire, ouvrez l'utilitaire de disque (si vous ne savez pas comment faire cela, recherchez disk utility Dans le tableau de bord). Cliquez ensuite sur "Images" dans la barre de menu et choisissez "Redimensionner ...". Vous obtiendrez une fenêtre pour ouvrir un fichier, ouvrez le fichier DMG vide.
  3. Double-cliquez sur le fichier DMG pour le monter. Un périphérique sur le bureau nommé Untitled devrait apparaître. Renommez-le avec le nom que vous voulez (vous voudrez probablement lui donner le même nom que votre programme).
  4. Ouvrez ce périphérique. Vous devriez voir quelque chose comme ça:

    enter image description here

    Si tout est blanc sauf le raccourci vers le dossier Applications, appuyez sur Cmd+J et une fenêtre sera ouverte. Au bas de cette fenêtre, il y a un carré avec l'étiquette "Drag image here". Cliquez sur cette case pour ouvrir une boîte de dialogue. Dans cette boîte de dialogue, appuyez sur Cmd+Shift+G et tapez /Volumes/(whatever you called the device in step 3)/.image et sélectionnez image.png.

    Tout ce qui se trouve ici, à l'exception du raccourci vers le dossier Applications, n'est qu'une image d'arrière-plan. Vous voudrez peut-être changer l'image d'arrière-plan (qui contient la couleur d'arrière-plan et la flèche). Pour ce faire, ouvrez le fichier /Volumes/(whatever you called the device in step 3)/.image/image.png dans un éditeur d’image et modifiez-le comme vous le souhaitez. Ensuite, vous devrez peut-être démonter le périphérique et le remonter en ouvrant le fichier DMG pour voir les modifications. Selon ce que vous avez inséré dans l'image, vous devrez peut-être également déplacer le raccourci vers le dossier Applications pour l'adapter à la nouvelle image d'arrière-plan.

  5. Faites glisser votre fichier .app au début de la flèche dans la fenêtre où le périphérique du fichier DMG est ouvert, de sorte qu'il se présente comme suit:

    enter image description here

    Vous pourriez avoir une erreur en disant qu'il n'y a pas assez d'espace libre. Si tel est le cas, revenez à l'étape 2 et redimensionnez le fichier DMG à une taille plus grande.

  6. Démontez le périphérique en cliquant sur la flèche à côté du nom du périphérique dans le Finder:

    enter image description here

  7. Convertir le fichier DMG en lecture seule. Pour ce faire, ouvrez le terminal et tapez ceci (remplacez /path/to/dmg/file Par le chemin du fichier DMG et nameOfDmgFile.dmg Par le nom du fichier DMG):

    cd /path/to/dmg/file
    hdiutil convert -format UDZO -o newNameOfDmgFile.dmg nameOfDmgFile.dmg
    

    Cela créera un nouveau fichier DMG appelé newNameOfDmgFile.dmg (Ou tout autre nom que vous avez utilisé ci-dessus), qui est le fichier souhaité.

1
Donald Duck

Vous pouvez utiliser Utilitaire de disque pour cela, mais si vous voulez une image en arrière-plan, vous avez besoin de directives avancées.

Tout d'abord, ouvrez Utilitaire de disque
Cliquez ensuite sur Fichier> Nouvelle image> Image vide.
Il vous demandera sa taille et son nom.
Après cela, vous pouvez y insérer des fichiers, et voilà!

REMARQUE: ceci a été testé sur Mac OS Mojave. Je ne sais pas pour les versions précédentes.

0