Evening,

I have been thinking about the Jenkins Mac installer. The current
installer which uses the Apple Installer has some shortcomings:

1) The installer is difficult to create. The old tool, PackageMaker
was notorious for driving developers up the wall and the new packaging
tools, while much better (so I hear), still have their limitations.

2) It is not possible to customize the steps of the installation. The
current Mac installer is quite rigid and does not fit everyone's use
case. It does not allow us to prompt the user for more information to
customize the installation process.

3) It is difficult to install from the command-line. It is possible to
do the installation over ssh using command-line only, but changing the
default installation options is difficult.

4) There is no uninstall.

I spent a little time experimenting with a different approach with the
Mac installer. The result of the experiment can be seen in
https://github.com/jenkinsci/jenkins/pull/430. Please do not merge it
yet. Let's talk about it first.

This is just a prototype but it seems to work. Would we be interested
in abandoning the Apple Installer approach and rolling our own
installation utility?

The requirements placed on the installer by Jenkins seem to be very
modest and everything that is required is an easy way to unpack the
files where they belong, possibly set up a user and permissions and
configure a launchd job. I'm not sure what exactly is the benefit we
are getting from using Apple Installer and given the cons I listed
above, I think we could easily provide the Mac users with a better
installation experience.

Any thoughts?

-- Sami

Reply via email to