Py3k: update OSX installer-generator

This update makes sure that the installer won't write files
in /usr/local/bin by default. The installer also won't
replace /Library/Frameworks/Python.framework/Version/Current.

Both to ensure that the installer doens't break an existing
install of python 2.x.
This commit is contained in:
Ronald Oussoren 2008-12-30 14:16:51 +00:00
parent 2160015915
commit 360e98ca31
2 changed files with 16 additions and 2 deletions

View File

@ -184,6 +184,7 @@ PKG_RECIPES = [
wrappers for lots of Mac OS X API's.
""",
postflight="scripts/postflight.framework",
selected='selected',
),
dict(
name="PythonApplications",
@ -197,6 +198,7 @@ PKG_RECIPES = [
It also installs a number of examples and demos.
""",
required=False,
selected='selected',
),
dict(
name="PythonUnixTools",
@ -208,6 +210,7 @@ PKG_RECIPES = [
is not necessary to use MacPython.
""",
required=False,
selected='unselected',
),
dict(
name="PythonDocumentation",
@ -222,6 +225,7 @@ PKG_RECIPES = [
""",
postflight="scripts/postflight.documentation",
required=False,
selected='selected',
),
dict(
name="PythonProfileChanges",
@ -239,6 +243,7 @@ PKG_RECIPES = [
topdir="/Library/Frameworks/Python.framework",
source="/empty-dir",
required=False,
selected='unselected',
),
dict(
name="PythonSystemFixes",
@ -252,6 +257,7 @@ PKG_RECIPES = [
topdir="/Library/Frameworks/Python.framework",
source="/empty-dir",
required=False,
selected='unselected',
)
]
@ -650,6 +656,8 @@ def buildPython():
frmDir = os.path.join(rootDir, 'Library', 'Frameworks', 'Python.framework')
gid = grp.getgrnam('admin').gr_gid
for dirpath, dirnames, filenames in os.walk(frmDir):
for dn in dirnames:
os.chmod(os.path.join(dirpath, dn), 0775)
@ -696,6 +704,11 @@ def buildPython():
os.chdir(curdir)
# Remove the 'Current' link, that way we don't accidently mess with an already installed
# version of python
os.unlink(os.path.join(rootDir, 'Library', 'Frameworks', 'Python.framework', 'Versions', 'Current'))
def patchFile(inPath, outPath):
@ -830,7 +843,7 @@ def makeMpkgPlist(path):
IFPkgFlagPackageList=[
dict(
IFPkgFlagPackageLocation='%s-%s.pkg'%(item['name'], getVersion()),
IFPkgFlagPackageSelection='selected'
IFPkgFlagPackageSelection=item['selected'],
)
for item in PKG_RECIPES
],

View File

@ -16,4 +16,5 @@ See the ReadMe file for more information.\
\
\b NOTE:
\b0 This package will by default update your shell profile to ensure that this version of Python is on the search path of your shell. Please deselect the "Shell profile updater" package on the package customization screen if you want to avoid this modification. }
\b0 This package will by default update not your shell profile, and will also not install\
files in /usr/local. }