building a better OSX install for 1.1.1
Sorry Russell, I was a bit brief before. Installer.app checks for a system requirement when the user installs numpy. I build numpy using bdist_mpkg against the python.org version of python (MacPython). If a user tries to install numpy and they _do not_ have this version of python installed, Installer.app issues a warning: "numpy requires System Python 2.5 to install." The phrase "System Python" is misleading, it's reasonable to assume that refers to the system version of python. So I'd like to change it. This string is stored in an Info.plist buried in the .mpkg that bdist_mpkg builds. I'd like to be able to override that string from the command line, but there does not seem to be any options for changing the requirements from the command line. The hack solution is to modify the string in the Info.plist after the package is built. But I'm hoping there's a proper solution that I'm missing. Thanks! Chris On Fri, Jul 18, 2008 at 11:59 AM, Russell E. Owen <rowen@cesmail.net> wrote:
In article <764e38540807172233m6bce652bp40478564de10e265@mail.gmail.com>, "Christopher Burns" <cburns@berkeley.edu> wrote:
I've been using bdist_mpkg to build the OSX Installer. I'd like to update the requirement documentation for the 1.1.1 release candidate to say "MacPython from python.org" instead of "System Python". bdist_mpkg specifies this, does anyone know how to override it?
I suspect I am misunderstanding your question, but...
If you are asking how to make bdist_mkpg actually use MacPython, then surely you simply have to have MacPython installed for that to happen? That was certainly true for MacPython and bdist_mpkg on 10.4.x.
Or are you asking how to make the installer fail if the user's system is missing MacPython? That I don't know. I usually rely on the .mpkg's ReadMe and the user being intelligent enough to read it, but of course that is a bit risky.
If you are asking how to modify the ReadMe file then that is trivial -- just look through the .mpkg package and you'll find it right away. I often replace the default ReadMe with my own when creating .mpkg installer for others.
-- Russell
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
-- Christopher Burns Computational Infrastructure for Research Labs 10 Giannini Hall, UC Berkeley phone: 510.643.4014 http://cirl.berkeley.edu/
On Fri, Jul 18, 2008 at 3:17 PM, Christopher Burns <cburns@berkeley.edu> wrote:
Sorry Russell, I was a bit brief before.
Installer.app checks for a system requirement when the user installs numpy. I build numpy using bdist_mpkg against the python.org version of python (MacPython). If a user tries to install numpy and they _do not_ have this version of python installed, Installer.app issues a warning: "numpy requires System Python 2.5 to install."
The phrase "System Python" is misleading, it's reasonable to assume that refers to the system version of python. So I'd like to change it.
This string is stored in an Info.plist buried in the .mpkg that bdist_mpkg builds. I'd like to be able to override that string from the command line, but there does not seem to be any options for changing the requirements from the command line.
The hack solution is to modify the string in the Info.plist after the package is built. But I'm hoping there's a proper solution that I'm missing.
Thanks! Chris
On Fri, Jul 18, 2008 at 11:59 AM, Russell E. Owen <rowen@cesmail.net> wrote:
In article <764e38540807172233m6bce652bp40478564de10e265@mail.gmail.com>, "Christopher Burns" <cburns@berkeley.edu> wrote:
I've been using bdist_mpkg to build the OSX Installer. I'd like to update the requirement documentation for the 1.1.1 release candidate to say "MacPython from python.org" instead of "System Python". bdist_mpkg specifies this, does anyone know how to override it?
I suspect I am misunderstanding your question, but...
If you are asking how to make bdist_mkpg actually use MacPython, then surely you simply have to have MacPython installed for that to happen? That was certainly true for MacPython and bdist_mpkg on 10.4.x.
Or are you asking how to make the installer fail if the user's system is missing MacPython? That I don't know. I usually rely on the .mpkg's ReadMe and the user being intelligent enough to read it, but of course that is a bit risky.
If you are asking how to modify the ReadMe file then that is trivial -- just look through the .mpkg package and you'll find it right away. I often replace the default ReadMe with my own when creating .mpkg installer for others.
Since 1.1.1rc1 is coming out this Sunday, I'd like to know who is responsible for the OS X install improvements, if that is what they are. I don't know squat about them myself and don't run OS X.
Chuck
On Fri, Jul 18, 2008 at 3:37 PM, Charles R Harris <charlesr.harris@gmail.com> wrote:
Since 1.1.1rc1 is coming out this Sunday, I'd like to know who is responsible for the OS X install improvements, if that is what they are. I don't know squat about them myself and don't run OS X.
Chris Burns has been building the OS X installer for NumPy. He is looking into whether he can make a better Mac installer for the 1.1.1rc.1 release, which is why he is asking about whether anyone knows how to fix this. Thanks, -- Jarrod Millman Computational Infrastructure for Research Labs 10 Giannini Hall, UC Berkeley phone: 510.643.4014 http://cirl.berkeley.edu/
Christopher Burns wrote:
install numpy and they _do not_ have this version of python installed, Installer.app issues a warning: "numpy requires System Python 2.5 to install."
The phrase "System Python" is misleading, it's reasonable to assume that refers to the system version of python. So I'd like to change it.
This string is stored in an Info.plist buried in the .mpkg that bdist_mpkg builds. I'd like to be able to override that string from the command line, but there does not seem to be any options for changing the requirements from the command line.
I've poked into the bdist_mpkg code a bit, and I think this is where that message is generated: # plists.py ... name = u'%s Python %s' % (FRIENDLY_PREFIX.get(dprefix, dprefix), version) kw.setdefault('LabelKey', name) title = u'%s requires %s to install.' % (pkgname, name,) ... and here: FRIENDLY_PREFIX = { os.path.expanduser(u'~/Library/Frameworks') : u'User', u'/System/Library/Frameworks' : u'Apple', u'/Library/Frameworks' : u'System', u'/opt/local' : u'DarwinPorts', u'/usr/local' : u'Unix', u'/sw' : u'Fink', } So, it looks like they are calling "/System/Library/Frameworks" "Apple", and "/Library/Frameworks" "system", which we all seem to agree is misleading. So I'd say change that in the bdist_mpkg source, maybe to: u'/Library/Frameworks' : u'python.org', or even: u'/Library/Frameworks' : u'python.org Framework Build', This calls for a note to the pythonmac list -- someone there will hopefully have access to that source repository. -Chris -- Christopher Barker, Ph.D. Oceanographer Emergency Response Division NOAA/NOS/OR&R (206) 526-6959 voice 7600 Sand Point Way NE (206) 526-6329 fax Seattle, WA 98115 (206) 526-6317 main reception Chris.Barker@noaa.gov
participants (4)
-
Charles R Harris
-
Christopher Barker
-
Christopher Burns
-
Jarrod Millman