Kaydet (Commit) 74d3eef7 authored tarafından Ronald Oussoren's avatar Ronald Oussoren

MacOSX: fix permission problem in the generated installer

üst f43893a8
...@@ -10,6 +10,7 @@ bootstrap issues (/usr/bin/python is Python 2.3 on OSX 10.4) ...@@ -10,6 +10,7 @@ bootstrap issues (/usr/bin/python is Python 2.3 on OSX 10.4)
Usage: see USAGE variable in the script. Usage: see USAGE variable in the script.
""" """
import platform, os, sys, getopt, textwrap, shutil, urllib2, stat, time, pwd import platform, os, sys, getopt, textwrap, shutil, urllib2, stat, time, pwd
import grp
INCLUDE_TIMESTAMP=1 INCLUDE_TIMESTAMP=1
VERBOSE=1 VERBOSE=1
...@@ -657,9 +658,13 @@ def buildPython(): ...@@ -657,9 +658,13 @@ def buildPython():
print "Fix file modes" print "Fix file modes"
frmDir = os.path.join(rootDir, 'Library', 'Frameworks', 'Python.framework') frmDir = os.path.join(rootDir, 'Library', 'Frameworks', 'Python.framework')
gid = grp.getgrnam('admin').gr_gid
for dirpath, dirnames, filenames in os.walk(frmDir): for dirpath, dirnames, filenames in os.walk(frmDir):
for dn in dirnames: for dn in dirnames:
os.chmod(os.path.join(dirpath, dn), 0775) os.chmod(os.path.join(dirpath, dn), 0775)
os.chown(os.path.join(dirpath, dn), -1, gid)
for fn in filenames: for fn in filenames:
if os.path.islink(fn): if os.path.islink(fn):
...@@ -668,7 +673,8 @@ def buildPython(): ...@@ -668,7 +673,8 @@ def buildPython():
# "chmod g+w $fn" # "chmod g+w $fn"
p = os.path.join(dirpath, fn) p = os.path.join(dirpath, fn)
st = os.stat(p) st = os.stat(p)
os.chmod(p, stat.S_IMODE(st.st_mode) | stat.S_IXGRP) os.chmod(p, stat.S_IMODE(st.st_mode) | stat.S_IWGRP)
os.chown(p, -1, gid)
# We added some directories to the search path during the configure # We added some directories to the search path during the configure
# phase. Remove those because those directories won't be there on # phase. Remove those because those directories won't be there on
...@@ -945,7 +951,10 @@ def setIcon(filePath, icnsPath): ...@@ -945,7 +951,10 @@ def setIcon(filePath, icnsPath):
ref, isDirectory = Carbon.File.FSPathMakeRef(filePath) ref, isDirectory = Carbon.File.FSPathMakeRef(filePath)
if isDirectory: if isDirectory:
# There is a problem with getting this into the pax(1) archive,
# just ignore directory icons for now.
return return
tmpPath = os.path.join(filePath, "Icon\r") tmpPath = os.path.join(filePath, "Icon\r")
if not os.path.exists(tmpPath): if not os.path.exists(tmpPath):
fp = open(tmpPath, 'w') fp = open(tmpPath, 'w')
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment