Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2005-03

Create installer for MacOSX

17 messages · 6 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Vincent Snijders

Hi,

I want to create a lazarus installer package for darwin (MacOSX). What tool should I use to create such a package?
What tool does fpc use for packaging the compiler for MacOSX? I saw on sourceforge the MacOSX package is a .dmg file.
How is that package created? make dmg in the fpc dir?

Regards,
Vincent.

Reply by email

Jonas Maebe
to Vincent Snijders
Vincent Snijders wrote 5 lines
I want to create a lazarus installer package for darwin (MacOSX). What tool should I use to create such a package? What tool does fpc use for packaging the compiler for MacOSX? I saw on sourceforge the MacOSX package is a .dmg file. How is that package created? make dmg in the fpc dir?

No, manually. Creating a disk image is possible using command line tools, but creating an installer package isn't for some reason. You have to use /Developer/Applications/Utilities/PackageMaker for that.

To create a disk image, either use Disk Utility or

hdiutil create -imagekey zlib-level=9 -format UDZO -srcfolder <srcfolder> <outputfile>

Jonas

Reply by email

Adriaan van Os
to Jonas Maebe
Jonas Maebe wrote 11 lines
Vincent Snijders wrote: > I want to create a lazarus installer package for darwin (MacOSX). > What tool should I use to create such a package? > What tool does fpc use for packaging the compiler for MacOSX? I saw > on sourceforge the MacOSX package is a .dmg file. > How is that package created? make dmg in the fpc dir? No, manually. Creating a disk image is possible using command line tools, but creating an installer package isn't for some reason. You have to use /Developer/Applications/Utilities/PackageMaker for that.

PackageMaker is basically a GUI interface to pax, so it might be possible to create a Mac OS X installer package with command line tools. You would have to look at the file layout of a package by using PackageMaker first or by looking at an existing package. I didn't try this, it is just an idea.

Regards,

Adriaan van Os

Reply by email

Jonas Maebe
to Adriaan van Os
Adriaan van Os wrote 5 lines
PackageMaker is basically a GUI interface to pax, so it might be possible to create a Mac OS X installer package with command line tools. You would have to look at the file layout of a package by using PackageMaker first or by looking at an existing package. I didn't try this, it is just an idea.

Another important remark about making a package: always make sure all files you add to a package are owned by root/wheel (or root/admin). You don't want a random user on the target system, who happens to have the same UID as you do, to be able to overwrite those files.

Jonas

Reply by email

Vincent Snijders
to Jonas Maebe
Jonas Maebe wrote 15 lines
On 15 mrt 2005, at 05:58, Adriaan van Os wrote: > PackageMaker is basically a GUI interface to pax, so it might be > possible to create a Mac OS X installer package with command line > tools. You would have to look at the file layout of a package by using > PackageMaker first or by looking at an existing package. I didn't try > this, it is just an idea. Another important remark about making a package: always make sure all files you add to a package are owned by root/wheel (or root/admin). You don't want a random user on the target system, who happens to have the same UID as you do, to be able to overwrite those files.

Thanks for the hints.

I found these links:
http://s.sudre.free.fr/Stuff/PackageMaker_Howto.html http://s.sudre.free.fr/Software/Iceberg.html

Both tools seem to be able to build a package from the command line (maybe not create a new package script). For my purposes that would be good enough.

Regards,
Vincent.

Reply by email

Vincent Snijders
to Jonas Maebe: No, manually. Creating a disk image is possible using command line tools, but creating an…
Jonas Maebe wrote 19 lines
On 14 Mar 2005, at 22:40, Vincent Snijders wrote: > I want to create a lazarus installer package for darwin (MacOSX). > What tool should I use to create such a package? > What tool does fpc use for packaging the compiler for MacOSX? I saw on > sourceforge the MacOSX package is a .dmg file. > How is that package created? make dmg in the fpc dir? No, manually. Creating a disk image is possible using command line tools, but creating an installer package isn't for some reason. You have to use /Developer/Applications/Utilities/PackageMaker for that. To create a disk image, either use Disk Utility or hdiutil create -imagekey zlib-level=9 -format UDZO -srcfolder <srcfolder> <outputfile>

Can you add the PackageMaker (script) file to cvs, just like is done for fpc.ist and fpc.spec?

Regards,
Vincent.

Reply by email

Jonas Maebe
to Vincent Snijders
Vincent Snijders wrote
Can you add the PackageMaker (script) file to cvs, just like is done for fpc.ist and fpc.spec?

Not now, cvs.freepascal.org has been compromised. Note that you can use that (binary) file only with PackageMaker afaik, not with any command line tool.

Jonas

Reply by email

Dr. Karl-Michael Schindler
to Jonas Maebe

Hi all,

In order to get fpc into fink, the darwin/macosx debian package manager it would be necessary to make available a bootstrap tar ball (640 KB) with the ppcppc binary and a default fpc.cfg file.

My suggestion would be the same dir as the fpc source tar ball, i.e. ftp://ftp.freepascal.org/mirrors/fpc/beta/source-1.9.8/

Comments? Questions?

Best wishes - Michael Schindler

Reply by email

peter green
to Dr. Karl-Michael Schindler

note: a config file is NOT needed to compile freepascal itself the makefiles pass an option that tells the compiler to ignore it anyway.

Show quoted text 26 lines
-----Original Message----- From: Behalf Of Dr. Karl-Michael Schindler Sent: 19 March 2005 23:11 To: FPC developers' list Subject: [fpc-devel] fink (debian) fpc package for darwin Hi all, In order to get fpc into fink, the darwin/macosx debian package manager it would be necessary to make available a bootstrap tar ball (640 KB) with the ppcppc binary and a default fpc.cfg file. My suggestion would be the same dir as the fpc source tar ball, i.e. ftp://ftp.freepascal.org/mirrors/fpc/beta/source-1.9.8/ Comments? Questions? Best wishes - Michael Schindler _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply by email

Florian Klaempfl
to Dr. Karl-Michael Schindler: In order to get fpc into fink, the darwin/macosx debian package manager it would be…
Dr. Karl-Michael Schindler wrote 10 lines
Hi all, In order to get fpc into fink, the darwin/macosx debian package manager it would be necessary to make available a bootstrap tar ball (640 KB) with the ppcppc binary and a default fpc.cfg file. My suggestion would be the same dir as the fpc source tar ball, i.e. ftp://ftp.freepascal.org/mirrors/fpc/beta/source-1.9.8/ Comments? Questions?

Fine with me.

Reply by email

Dr. Karl-Michael Schindler
to peter green: note: a config file is NOT needed to compile freepascal itself the makefiles pass an…

the fpc.cfg is just installed in ../etc as a default fpc.cfg file.

peter green wrote 37 lines
note: a config file is NOT needed to compile freepascal itself the makefiles pass an option that tells the compiler to ignore it anyway. > -----Original Message----- > From: > Behalf Of Dr. > Karl-Michael Schindler > Sent: 19 March 2005 23:11 > To: FPC developers' list > Subject: [fpc-devel] fink (debian) fpc package for darwin > > > Hi all, > > In order to get fpc into fink, the darwin/macosx debian package > manager > it would be necessary to make available a bootstrap tar ball (640 KB) > with the ppcppc binary and a default fpc.cfg file. > > My suggestion would be the same dir as the fpc source tar ball, i.e. > ftp://ftp.freepascal.org/mirrors/fpc/beta/source-1.9.8/ > > Comments? Questions? > > Best wishes - Michael Schindler > > > _______________________________________________ > fpc-devel maillist - > http://lists.freepascal.org/mailman/listinfo/fpc-devel _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply by email

Vincent Snijders
to Jonas Maebe: Another important remark about making a package: always make sure all files you add to a…
Jonas Maebe wrote 15 lines
On 15 mrt 2005, at 05:58, Adriaan van Os wrote: > PackageMaker is basically a GUI interface to pax, so it might be > possible to create a Mac OS X installer package with command line > tools. You would have to look at the file layout of a package by using > PackageMaker first or by looking at an existing package. I didn't try > this, it is just an idea. Another important remark about making a package: always make sure all files you add to a package are owned by root/wheel (or root/admin). You don't want a random user on the target system, who happens to have the same UID as you do, to be able to overwrite those files.

PackageMaker has a command line interface for building packages too.

How can I add files to the packages with these ownership (without being root myself). With debian/linux I could use fakeroot, but I didn't see any ports of this tool to darwin / Mac OS X.

Vincent.

Reply by email

Jonas Maebe
to Vincent Snijders
Vincent Snijders wrote 6 lines
> Another important remark about making a package: always make sure all > files you add to a package are owned by root/wheel (or root/admin). > You don't want a random user on the target system, who happens to > have the same UID as you do, to be able to overwrite those files. PackageMaker has a command line interface for building packages too.

Hoe dan? (of bedoel je pax?)

How can I add files to the packages with these ownership (without being root myself). With debian/linux I could use fakeroot, but I didn't see any ports of this tool to darwin / Mac OS X.

Voor zover ik weet gaat dat niet.

Jonas

Reply by email

Jonas Maebe
to Jonas Maebe
Jonas Maebe wrote 16 lines
>> Another important remark about making a package: always make sure >> all files you add to a package are owned by root/wheel (or >> root/admin). You don't want a random user on the target system, who >> happens to have the same UID as you do, to be able to overwrite >> those files. > > PackageMaker has a command line interface for building packages too. Hoe dan? (of bedoel je pax?) > How can I add files to the packages with these ownership (without > being root myself). With debian/linux I could use fakeroot, but I > didn't see any ports of this tool to darwin / Mac OS X. Voor zover ik weet gaat dat niet.

Sorry, I thought it was a private mail :) Anyway, my answers are respectively:

"How then? (or do you mean pax?)

and

"As far as I know, that is not possible."

Jonas

Reply by email

Vincent Snijders
to Jonas Maebe: Hoe dan? (of bedoel je pax?) Voor zover ik weet gaat dat niet. Jonas
Jonas Maebe wrote 13 lines
On 1 apr 2005, at 13:55, Vincent Snijders wrote: >> Another important remark about making a package: always make sure all >> files you add to a package are owned by root/wheel (or root/admin). >> You don't want a random user on the target system, who happens to >> have the same UID as you do, to be able to overwrite those files. > > > PackageMaker has a command line interface for building packages too. Hoe dan? (of bedoel je pax?)
try
	PackageMaker -help

Out of a script:
$PACKAGEMAKER -build -f $INSTALLDIR \
-r $FPCSOURCEDIR/install/macosx/resources/ \
-d $FPCSOURCEDIR/install/macosx/fpc-1.9.8.pmsp -p ~/pkg/fpc-1.9.9.pkg

Vincent.

Reply by email

Jonas Maebe
to Vincent Snijders
Vincent Snijders wrote 10 lines
>> PackageMaker has a command line interface for building packages too. > Hoe dan? (of bedoel je pax?) try PackageMaker -help Out of a script: $PACKAGEMAKER -build -f $INSTALLDIR \ -r $FPCSOURCEDIR/install/macosx/resources/ \ -d $FPCSOURCEDIR/install/macosx/fpc-1.9.8.pmsp -p ~/pkg/fpc-1.9.9.pkg

Maybe it's included in XCode 1.5. I'm still using XCode 1.2

Jonas

Reply by email

Vincent Snijders
to Jonas Maebe
Jonas Maebe wrote 5 lines
Maybe it's included in XCode 1.5. I'm still using XCode 1.2

Yes, I most likely have a different version of PackageMaker.

I also get a warning:
2005-04-01 07:39:47.651 PackageMaker[18875] CFLog (0): CFPropertyListCreateFromXMLData(): plist parse failed; the data is not proper UTF-8. The file name for this data could be: /Users/fpcfan/src/fpc/install/macosx/fpc-1.9.8.pmsp The parser will retry as in 10.2, but the problem should be corrected in the plist.

Vincent.

Reply by email