2010-01-06 9 views
5

Tout en développant une installation avec PackageMaker (XCode 3.2.1 1613, pour Snow Leopard), parfois les autorisations, le propriétaire et le groupe que j'ai mis sur la plupart (sinon tous) des fichiers se vaporisent. Le résultat semble que j'ai simplement ajouté les fichiers à PackageMaker, avant de définir le fichier perm/own/grp sur chacun.Mac PackageMaker - Remise à zéro aléatoire du propriétaire/groupe/perms

Ce qui est bizarre, est que la plupart de ces fichiers XML dans le changement de dossier .pmdoc, même index.xml, forçant un gros problème SVN quand rien n'a changé! Quand cela arrive, je reviens SVN, puis inspecte tout (en prenant peut-être 20 minutes) avant de construire.

Comment puis-je éviter cela? Que pourrais-je faire pour déclencher ce comportement (indésirable)? Je n'ai pas encore réussi à corréler mes actions avec le problème. La prochaine fois que cela arrivera et que j'aurai du temps, je changerai les changements de .pmdoc/xml et je verrai si je peux trouver un motif.

En attendant, si quelqu'un là-bas a quelques conseils, je l'apprécie.

Répondre

2

Je vois la même chose lors de l'utilisation des projets .pmdoc générés à l'aide de l'interface graphique PackageMaker.

Les fichiers qui composent le .pmdoc embarquent des chemins absolus à diverses choses, y compris le fichier .pmdoc lui-même. Cela se produit peu importe si vous modifiez les chemins d'accès aux fichiers installés pour qu'ils soient relatifs à l'emplacement .pmdoc ou à tout autre élément. Après quelques expérimentations, il semble que si vous déplacez le fichier .pmdoc, ou que vous modifiez son emplacement ou son environnement, PackageMaker remet toutes les valeurs par défaut - et cela inclut les permissions de propriétaire/groupe, ainsi que les indicateurs de relocalisation et de rétrogradation des composants. Cela se produit dans la mémoire de PackageMaker, car les fichiers de composants qui composent mes fichiers .pmdoc sont tous verrouillés par mon système de contrôle de source (Perforce), et j'ai vérifié qu'ils n'ont pas changé.

Pour le moment, je suis juste la mise en place d'une machine à construire et construire dossier et non tout ce qui bouge.

À plus long terme, je me propose de passer à la construction des fichiers .pkg en utilisant l'interface de ligne de commande de PackageMaker, qui est apparemment ce que Apple fait. J'ai trouvé a pretty good article avec des conseils à ce sujet.


Mise à jour

This article a une grande discussion et par exemple un simple installateur construit en utilisant la ligne de commande "packagemaker" utilitaire. Remplaçant les valeurs évidentes dans l'exemple, cela a fonctionné la première fois, hors de la boîte, sur chaque machine, je l'ai essayé, avec aucune de cette réinitialisation aléatoire hoohah. J'ai accompli plus de choses en une heure de cette façon qu'en deux jours avec PackageMaker. Fossé l'interface graphique et l'utiliser - vous serez heureux.

Si vous voulez vraiment utiliser une interface graphique pour mettre votre installateur ensemble, Packages semble prometteur, mais je ne l'ai pas réellement essayé.

+0

Merci, Bob. On dirait qu'Apple a besoin de s'occuper de cette chose ou de s'en débarrasser s'ils pensent que personne ne l'utilise :-) –

+0

Oh, les gens l'utilisent - avec beaucoup de douleur. Je viens d'écrire un billet de blog sur pourquoi je suis passé à une alternative: http://bobertville.blogspot.com/2011/08/making-mac-installers.html –

+0

BTW, vous ne seriez pas le Bob Denny qui était dans DECUS, et a écrit des articles pour MacTech dans les années 80, voulez-vous? Si oui, je continue (virtuellement) à vous rencontrer tous les dix ans environ. :-) –