2010-01-06 5 views
5

Während der Entwicklung einer Installation mit PackageMaker (XCode 3.2.1 1613, für Snow Leopard), manchmal die Berechtigungen, Besitzer und Gruppe, die ich am meisten eingestellt habe (wenn nicht alle) der Dateien verdampfen einfach. Das Ergebnis sieht so aus, als hätte ich die Dateien erst zu PackageMaker hinzugefügt, bevor ich die Datei perm/own/grp gesetzt habe.Mac PackageMaker - Zufälliges Zurücksetzen von Besitzer/Gruppe/Dauer

Was ist seltsam, ist, dass die meisten dieser XML-Dateien im Ordner .pmdoc ändern, auch index.xml, ein großes SVN Problem erzwingen, wenn nichts geändert hat! Wenn das passiert, ich einfach SVN Revert, dann inspizieren alles (vielleicht 20 Minuten) vor dem Aufbau.

Wie kann ich dies vermeiden? Was könnte ich tun, um dieses (unerwünschte) Verhalten auszulösen? Ich konnte meine Aktionen noch nicht mit dem Problem korrelieren. Das nächste Mal, wenn es passiert und ich habe die schlaffe Zeit, werde ich die .pmdoc/xml Unterschiede ändern und sehen, ob ich ein Muster finden kann.

In der Zwischenzeit, wenn jemand da draußen einige Tipps hat, ich weiß es zu schätzen.

Antwort

2

Ich sehe das Gleiche bei der Verwendung von .pmdoc-Projekten, die mit der PackageMaker GUI erstellt wurden.

Die Dateien, die die .pmdoc enthalten, enthalten eingebettete absolute Pfade zu verschiedenen Dingen, einschließlich der .pmdoc-Datei selbst. Dies geschieht unabhängig davon, ob Sie die Pfade zu den installierten Dateien so ändern, dass sie sich auf den Speicherort von .pmdoc beziehen, oder auf etwas anderes.

Nach einigen Experimenten scheint es, dass wenn Sie den .pmdoc verschieben oder irgendetwas anderes tun, das seinen Standort oder seine Umgebung ändert, setzt PackageMaker alle Arten von Werten auf Standardwerte zurück - und das schließt die Besitzer-/Gruppenberechtigungen ein die Flags zum Verschieben und Zurücksetzen der Komponenten. Dies geschieht im Speicher von PackageMaker, da die Komponentendateien, aus denen meine .pmdoc-Dateien bestehen, alle von meinem Quellcodeverwaltungssystem (Perforce) gesperrt sind, und ich habe überprüft, dass sie sich nicht geändert haben.

Zur Zeit richte ich nur einen Build-Rechner ein und baue einen Ordner, ohne etwas zu bewegen.

Längerfristig beabsichtige ich, mit der Kommandozeilenschnittstelle von PackageMaker auf die Erstellung der .pkg-Dateien umzusteigen, was offensichtlich Apple tut. Ich habe a pretty good article mit Tipps dazu gefunden.


aktualisieren

This article hat eine große Diskussion und Beispiel eines einfachen Installationsprogramm über die Befehlszeile „Package“ Dienstprogramm gebaut werden. Ersetzen der offensichtlichen Werte im Beispiel, dies funktionierte zum ersten Mal, out of the box, auf jeder Maschine, die ich anprobierte, mit keinem dieser Zufalls-Reset hoohah. Ich habe auf diese Weise in einer Stunde mehr erreicht als in zwei Tagen mit PackageMaker. Entgleisen Sie die GUI und nutzen Sie diese - Sie werden glücklich sein.

Wenn Sie wirklich eine GUI verwenden möchten, um Ihr Installationsprogramm zusammen zu setzen, sieht Packages vielversprechend aus, aber ich habe es nicht wirklich versucht.

+0

Danke, Bob. Sieht so aus, als müsste Apple sich um dieses Ding kümmern oder es einfach loswerden, wenn sie denken, dass niemand es benutzt :-) –

+0

Oh, die Leute benutzen es - mit viel Schmerz. Ich habe gerade einen Blogbeitrag darüber geschrieben, warum ich zu einer Alternative übergegangen bin: http://bobertville.blogspot.com/2011/08/making-mac-installers.html –

+0

BTW, du wärst nicht der Bob Denny, der einmal war in DECUS, und schrieb in den 80er Jahren Artikel für MacTech, oder? Wenn ja, laufe ich (virtuell) jedes Jahrzehnt oder so in dich hinein. :-) –

Verwandte Themen