summaryrefslogtreecommitdiff
path: root/indra/newview/viewer_manifest.py
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2018-09-11 16:04:33 -0400
committerNat Goodspeed <nat@lindenlab.com>2018-09-11 16:04:33 -0400
commit517e1605e9feb203c9ccd9a115a21cae9bbc704b (patch)
treebc620f2adaa1b1eb0ea2c6123990e8bf5bcf524c /indra/newview/viewer_manifest.py
parentc6865bcd366379028029a24281812cf320de8aff (diff)
DRTVWR-474, MAINT-9047: Display top-level app bundle in sparseimage.
codesign claims to succeed, but spctl says: /Volumes/Second Life Installer/Second Life Test.app: rejected (the code is valid but does not seem to be an app) Why not? Display what's in Second Life.app/Contents on the mounted sparseimage: show Info.plist, list Frameworks, MacOS, Resources.
Diffstat (limited to 'indra/newview/viewer_manifest.py')
-rwxr-xr-xindra/newview/viewer_manifest.py36
1 files changed, 28 insertions, 8 deletions
diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py
index de296bec75..5078f323ae 100755
--- a/indra/newview/viewer_manifest.py
+++ b/indra/newview/viewer_manifest.py
@@ -1238,11 +1238,6 @@ class DarwinManifest(ViewerManifest):
# the signature are preserved; moving the files using python will leave them behind
# and invalidate the signatures.
if 'signature' in self.args:
- print 72*'='
- print 'In {}:'.format(volpath)
- for f in os.listdir(volpath):
- print ' {}'.format(f)
- print 72*'='
app_in_dmg=os.path.join(volpath,self.app_name()+".app")
print "Attempting to sign '%s'" % app_in_dmg
identity = self.args['signature']
@@ -1296,11 +1291,36 @@ class DarwinManifest(ViewerManifest):
else:
print >> sys.stderr, "Maximum codesign attempts exceeded; giving up"
raise
+ print 72*'='
+ import stat
+ print app_in_dmg
+ # Second Life.app
+ for sub0 in os.listdir(app_in_dmg):
+ print '--{}'.format(sub0)
+ path0 = os.path.join(app_in_dmg, sub0)
+ if os.path.isfile(path0):
+ # shouldn't be any file here
+ with open(path0) as inf:
+ for line in inf:
+ print ' {}'.format(line.rstrip())
+ elif os.path.isdir(path0):
+ # Contents
+ for sub1 in os.listdir(path0):
+ print '----{}'.format(sub1)
+ path1 = os.path.join(path0, sub1)
+ if os.path.isfile(path1):
+ # Info.plist, PkgInfo
+ with open(path1) as inf:
+ for line in inf:
+ print ' {}'.format(line.rstrip())
+ elif os.path.isdir(path1):
+ # Frameworks, MacOS, Resources
+ for sub2 in os.listdir(path1):
+ path2 = os.path.join(path1, sub2)
+ print ' {:04o} {}'.format(stat.S_IMODE(os.stat(path2).st_mode), sub2)
+ print 72*'='
self.run_command(['spctl', '-a', '-texec', '-vvvv', app_in_dmg])
- imagename="SecondLife_" + '_'.join(self.args['version'])
-
-
finally:
# Unmount the image even if exceptions from any of the above
self.run_command(['hdiutil', 'detach', '-force', devfile])