[Plan du site]
Vous êtes ici ---
> Le Site du Zér0
> Les tutoriels
> Non-Officiels
> Systèmes d'exploitation
> MacOS
> Lecture du tutoriel
Créer une installation Mac OS X
Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Comment créer une installation pour son programme sous Mac OS X ?
Vous venez de terminer votre programme avec Xcode, vous en êtes fiers (

) et vous voulez le partager ?
Ce cours est fait pour vous !
Au fait, je ne me suis pas encore présenté. Je suis
prs513rosewood (oui, comme la guitare), utilisateur chevronné de Mac depuis (très

) longtemps.
Dans les annexes du cours sur le C/C++, on montre comment créer une installation sous Windows avec Inno Setup. Sous Mac, c'est une autre histoire.
Pour faire des programmes d'installation, nous allons utiliser l'utilitaire PackageMaker. Il est en anglais mais très simple d'utilisation.
Après ce tuto, vous pourrez créer des programmes d'installation personnalisés.
On commence ?
Où est-il, PackageMaker ?
PackageMaker est un utilitaire très simple et complet "made in Apple".
Vous n'avez nul besoin de le télécharger, il se trouve déjà sur votre disque dur. En effet, si vous avez installé les Xcodes Tools, vous avez aussi installé PackageMaker. Il se trouve sous :
/Developer/Applications/Utilities/PackageMaker.app (sous Tiger).
PackageMaker sert à créer des
.pkg et des
.mpkg, lesquels lancent l'utilitaire d'installation, la boîte de dialogue qui vous propose où installer, comment, agréer la licence, etc.
Une fois les
.pkg et
.mpkg créés, vous pouvez les diffuser par internet, par mail, les graver, les supprimer, les ouvrir en boucle, les manger

! (Tout ça ?)
Ouvrez donc PackageMaker, un assistant vous demande quel type de package vous souhaitez faire.
Vous avez le choix entre :
- Single Package Project ;
- Metapackage Project ;
- Distribution Project (Tiger and above).
Il vous suffit de choisir une option et de faire
OK 
.
Après avoir choisi Single Project (on verra les autres plus tard

), vous obtenez une fenêtre intitulée
Untitled.pmproj.
Les onglets Contents et Configuration
Vous voyez plusieurs onglets :
Installer Interface,
Contents,
Configuration,
Scripts,
Package version.
Vous êtes d'office dans l'onglet
Installer Interface, mais nous le verrons plus tard. Dans l'onglet
Contents, vous choisissez le contenu de votre Package grâce au bouton en forme d'engrenage (ou de fleur, c'est vous qui voyez

).
Attention, vous ne pourrez inclure qu'un fichier dans le paquet, vous devez OBLIGATOIREMENT choisir un dossier qui contient les fichiers que vous voulez inclure à l'installation. Retenez-le bien, cela peut servir avec Automator.
En dessous, vous avez plusieurs options que vous pouvez choisir :
- Compress Archive : compresse le contenu du paquet ;
- Remove .DS_Store Files from Archive : retire les .DS_Store de l'archive ; pratique si vous voulez partager le paquet avec des PC ;
- Preserve Ressources Fork.
L'onglet
Configuration est plus intéressant bien que moins vital.
- Avec le bouton "engrenage", vous choisissez la destination par défaut, là où sera ouvert le paquet. Mais il est plus intéressant de demander à l'utilisateur de choisir sa direction, n'est-ce pas ?
- Authentication : vous demandez à l'utilisateur de rentrer un mot de passe administrateur ou root (c'est assez compliqué, je ne voudrais pas vous embêter avec ça
).
- Post-Install Action : demande par exemple à l'utilisateur de redémarrer, de fermer sa session, etc.
- Relocatable : demande à l'utilisateur où il désire ouvrir le paquet.
- Root Volume Only : comme je l'ai dit, c'est assez compliqué ; d'ailleurs, je ne vois pas la différence quand cette option est cochée
.
- Follow Symbolic Links : je ne sais pas trop ce que ça fait mais si c'est coché, ce n'est pas pour rien !
- Overwrite Directory Permissions : ignore les permissions de dossier.
- Allow Revert To Previous Version : autorise un retour à une ancienne version.
- Update Installed Laguage Only : n'autorise que la mise à jour des langages installés.
Les onglets Scripts et Package Version
Dans l'onglet
Script, vous choisissez un script qui s'exécutera à l'installation.
Dans
Package version, vous mettez la version de votre paquet, votre compagnie, etc.
L'onglet Installer Interface
Vous pouvez choisir le nom que vous donnerez à l'application installée, lui donner une description, ou modifier l'apparence de l'installeur. Si vous cliquez sur le bouton, une nouvelle fenêtre s'ouvre.
Ici, vous pouvez régler l'interface de votre éditeur.
- Dans Background, vous réglez l'image de fond (vous pouvez choisir votre propre image ou garder l'image par défaut).
- Dans Introduction, vous pouvez mettre une introduction personnalisée ; pour faire une intro personnalisée, écrivez-la avec TextEdit (/Applications/TextEdit.app) et sauvez-la au format RTF, cliquez sur Custom Welcome et importez le fichier (la procédure est la même pour le Read me et la licence).
L'introduction par défaut qui s'affiche est en anglais

, mais une fois le paquet créé, l'intro passera en français

.
- Dans Read me, vous faites un petit texte qui explique les fonctionnalités de votre programme (si vous n'en mettez pas, cela n'apparaîtra pas dans le programme final
).
- Vous pouvez aussi rajouter une licence à votre programme d'installation dans License.
Ma mère vient de m'appeler pour le repas, et je n'ai pas fini de faire mon programme d'installation.
Y a-t-il un moyen de sauvegarder le projet ?
Bien sûr ! Vous pouvez tout simplement
faire le mort et échapper au hachis de banane de votre maman aller dans le menu
File (barre des menus tout en haut) et cliquer sur
Save as... Vous choisissez ensuite le nom et le chemin du projet.
Une fois toutes les options déterminées avec soin

, ouvrez le menu
Project et cliquez sur :
- Build pour faire votre paquet ;
- Build and run pour faire votre paquet et vous émerveiller devant le résultat
.
Félicitations, vous venez de faire votre premier programme d'installation

!!
Vous savez à présent faire un paquet (j'espère

).
Grâce au metapackage (
.mpkg), vous allez pouvoir fusionner plusieurs paquets pour tout installer en une fois.
Par exemple, quand on installe les Xcode Tools, c'est un metapackage que l'on utilise. De même pour certaines grosses applications.
Cette fois-ci la fenêtre est différente :
Comme vous pouvez le voir, elle comporte moins d'onglets, il est donc plus simple, et plus rapide de faire un metapackage que de faire un package tout simple

.
Inspectons donc la fenêtre principale. Elle s'appelle
Untitled.pmproj (nooooooooooon !

). Vous êtes également d'office dans
Installer interface, je suppose que vous savez l'utiliser.
Dans l'onglet
Contents, grâce au menu déroulant (et aussi déroutant

) vous choisissez où se situeront les paquets que vous mettez dans le meta (metapackage, pour les intimes). Vous avez le choix entre :
- Same Level as Metapackage : si vous prenez cette option, vos paquets s'ouvriront dans le même dossier que le meta, et si c'est un gros dossier, cela risque de mettre du bazar ;
- Inside Metapackage : installe les éléments dans un dossier, mais après avoir testé ce mode, je n'ai pas retrouvé mes fichiers
;
- Custom : vous choisissez l'endroit par défaut où vont être installés les éléments mais lors de l'installation, on demandera à l'utilisateur de donner un dossier.
Dans le grand cadre blanc en dessous, vous pouvez glisser les paquets qui vous intéressent et effacer ceux qui ne vous plaisent pas (comme le
Untitled.pkg 
).
La procédure est la même que pour le paquet pour éditer le meta (
Project >
Build/build and Run).
Petit exercice pour s'entraîner
Faites des paquets pour chaque programme que vous aimez et implantez le tout dans un Metapackage.
Cela ne devrait pas être trop difficile.
Le
Distribution Project est assez compliqué.
Il permet de créer des types d'installation personnalisés. Depuis le début, les paquets font des installations simples, c'est-à-dire qu'ils installent tout sans poser de questions. Avec ce type de projet, vous pouvez faire vos propres types d'installations. Malheureusement, je ne sais pas m'en servir, cela me paraît un peu compliqué. Si quelqu'un sait s'en servir, qu'il m'écrive, je serai heureux d'apprendre.
Je suis désolé pour cette partie, je sais que je vous déçois

mais dès que j'en sais plus, je mets à jour ce tutoriel.
Vous pouvez dès à présent créer vos propres programmes d'installation, des "multi-programmes d'installations", et partager vos logiciels avec vos proches et au monde entier en publiant les programmes sur internet, profitez-en

!