I have Debian / Ubuntu / Xubuntu. I'm trying to distribute and run a Python file with the least number of clicks for the end user. How do I create a PKG file for Mac OS X on Linux?

link|improve this question

50% accept rate
stackoverflow.com/questions/2323818/… this SE question might be a start, also osxgnu.org/info/osxpackages.html - other than some files that are generated by packagemaker, it looks like the pkg file is a fairly standard nix style compressed archive – Journeyman Geek Feb 23 at 11:27
If I extract the contents of a .pkg file, there's some directories, and a PAX file (which i can make), and a BOM file, (which i've no idea how to make on a platform other than osx) – Tom O'Connor Feb 23 at 12:51
@TomO'Connor Is your problem identical to Luke's, i.e. you have a script file and just want to execute it (and could accept alternatives), or do you actually want to create a proper Installer .pkg, possibly containing lots of files? – Daniel Beck Feb 23 at 17:09
Initially, the problem's identical, but there's more than just one file we want/need to package up. – Tom O'Connor Feb 24 at 9:56
@TomO'Connor It's much easier to create Mac OS X application bundles. There might be easier options that integrate just as well with your target system (i.e. easy for your users). Consider specifying your requirements in more detail. If they're not too fancy, and more along the lines of running instead of installing, this might work quite well. – Daniel Beck Feb 25 at 20:21
feedback

3 Answers

Some multiplatform installers I know of are :

IzPack is a an open source software installer generator. As it uses Java you need the JRE on the target platform.

The free InstallJammer is :

a multiplatform GUI installer and builder designed to be completely cross-platform and function on Windows and most all versions of UNIX with eventual support for Mac OS X.

You could contact the developer, as he is very responsive.

InstallAnywhere is a commercial multiplatform installer. Its Standard Edition is priced at $1,999.

BitRock's InstallBuilder (don't look at the price tag) also claims :

Generate installers for all target platforms from a single project file. Create all your installers from a single build environment!

JExpress is another one at only $849.

The only one from the above that I have used is InstallJammer, which I really recommend. If OS X is already available in beta, don't hesitate to try it, as the developer corrects bugs at a very fast pace.

link|improve this answer
Interesting, but not seeming to answer the exact question, not from my POV, anyway. – Tom O'Connor Feb 23 at 12:42
Then what is your POV? – harrymc Feb 23 at 12:48
Well, free would be a starting point, and the only free one is IzPack. which doesn't make DMG/PKG files, but is actually it's own installer format. Like we need another one of those(!). – Tom O'Connor Feb 23 at 12:50
IzPack and InstallJammer are open source, so you could have a look at how it is done if you want to roll your own. – harrymc Feb 23 at 12:52
Another idea would be to use a trial version of one of the commercial packages to create the installation, then use it as a model for repackaging on Linux. I don't know if Lion pkg files are still xarchives or are now standard zip files. (One nasty idea is to install the trial in a disposable VM.) – harrymc Feb 23 at 13:36
show 2 more comments
feedback

I think I may have ended up using a rar or a zip file, which has contents that can be ran somewhat like a DMG can be. Would this meet your goal? It was close enough to my original problem that led me to ask my question.

link|improve this answer
feedback

Sorry - it will not work.

Linux may create Solaris and BSD pkg files which are tarballs with some metadata, which will lead all your searches to a complete no-go.

link|improve this answer
5  
I don't believe you. – Tom O'Connor Feb 23 at 11:11
Make a DMG file in Linux or Windows - OSX PKG is same format... – ZaB Feb 23 at 16:46
2  
That's totally wrong. – Simon Sheehan Feb 25 at 18:53
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.