Packagemaker 3.0: Do I need specify Package Identifier for EACH component?

Hi all!
I'm learning how to make packages for software distributions. I'm using *Packagemaker 3.0* and found out one problem.

Packagemaker requires "Package Identifiers" for EACH component I installing... Let's see example for installing Perian (perian.org). Perian has 6 components which must be installed in different places. So, I must add them one by one in Packagemaker project and specify Identifier for each. See screenshots:

User uploaded file
User uploaded file
User uploaded file

Shure, after installation we'll found "footsteps" in /Library/Receipts:

User uploaded file

But that's silly! Why installing too much trash? What if application has 100 components?

I have not found any helpful info in PM documentation...

MacBook Black Core 2 Duo GMA 950, Mac OS X (10.5.7)

Posted on Jun 23, 2009 6:58 AM

Reply
6 replies

Jun 23, 2009 6:44 PM in response to Andrey Kaplunenko

Andrey Kaplunenko wrote:
I'm learning how to make packages for software distributions. I'm using *Packagemaker 3.0* and found out one problem.


Only one?

But that's silly! Why installing too much trash? What if application has 100 components?


You will get 100 receipts. I've seen one big program that did that. Perhaps it was Office. I don't remember.

I have not found any helpful info in PM documentation...


I don't doubt it.

I noticed that two of your components are both Perian installed into /Library. You could bundle those up into one. Theoretically, you could bundle everything up into one component and install it into /. The only real reason you would need to split up components is if you need to control them separately.

Jun 24, 2009 5:36 AM in response to Andrey Kaplunenko

I wouldn't recommend that. You should really play by PackageMaker's rules. Of course, those rules aren't written down anywhere 🙂

What you can do is set your destination to be just / - nothing else. Then, the files that you install need to have their own, correct, hierarchy. You start with a temp folder. In that temp folder and create the following hierarchcy (for example): /tmp/packagemaker/Library/QuickTime/Perian. Then, you build your package using /tmp/packagemaker. I have scripts that build my temp directories just so before I ever start PackageMaker. Next, apply the appropriate (usually root) permissions to your temp files. (This way, you can keep non-root files in your own SCM repository). Finally, build the package using those temp files. Depending on how you structure your hierarchy, you may need to check/uncheck "Include root in package".

I've made it sound easier than it is. There is some trial an error involved.

Let me know if this doesn't make sense. I know it is confusing.

Jun 25, 2009 7:03 AM in response to etresoft

Seems this method doesn't work for me.

I've created "tempfolder" on my "Macintosh HD". In "tempfolder" I put "Library":

/tempfolder/Library

In Library I put all needed components:

/tempfolder/Library/PreferencePanes
/tempfolder/Library/QuickTime
/tempfolder/Library/Audio

Than, I added /tempfolder to Packagemaker project and point Destination to /

User uploaded file

After building and installation I found "tempfolder" on Macintosh HD. Instead of get contents of tempfolder and add it to existing directory structure, Installer creates folder named "tempfolder" at root level.

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

Packagemaker 3.0: Do I need specify Package Identifier for EACH component?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.