mirror of
https://github.com/onionshare/onionshare.git
synced 2025-04-25 09:49:18 -04:00
codesign for OSX (#151)
This commit is contained in:
parent
c70e1f2668
commit
d6aafd88e7
@ -3,6 +3,9 @@
|
|||||||
ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && cd .. && pwd )"
|
ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && cd .. && pwd )"
|
||||||
cd $ROOT
|
cd $ROOT
|
||||||
|
|
||||||
|
SIGNING_IDENTITY_APP="Developer ID Application: Micah Lee"
|
||||||
|
SIGNING_IDENTITY_INSTALLER="Developer ID Installer: Micah Lee"
|
||||||
|
|
||||||
# deleting dist
|
# deleting dist
|
||||||
echo Deleting dist folder
|
echo Deleting dist folder
|
||||||
rm -rf $ROOT/dist &>/dev/null 2>&1
|
rm -rf $ROOT/dist &>/dev/null 2>&1
|
||||||
@ -12,3 +15,16 @@ echo Building OnionShare.app
|
|||||||
python setup.py py2app
|
python setup.py py2app
|
||||||
|
|
||||||
# codesign the .app
|
# codesign the .app
|
||||||
|
python $ROOT/install/prepare_for_codesign.py
|
||||||
|
cd dist
|
||||||
|
|
||||||
|
# for some reason --deep fails, so sign each binary individually
|
||||||
|
codesign -vvvv -s "Developer ID Application: Micah Lee" OnionShare.app/Contents/Frameworks/QtCore.framework
|
||||||
|
codesign -vvvv -s "Developer ID Application: Micah Lee" OnionShare.app/Contents/Frameworks/QtGui.framework
|
||||||
|
codesign -vvvv -s "Developer ID Application: Micah Lee" OnionShare.app/Contents/Frameworks/Python.framework
|
||||||
|
codesign -vvvv -s "Developer ID Application: Micah Lee" OnionShare.app/Contents/Frameworks/libssl.1.0.0.dylib
|
||||||
|
codesign -vvvv -s "Developer ID Application: Micah Lee" OnionShare.app/Contents/Frameworks/libcrypto.1.0.0.dylib
|
||||||
|
codesign -vvvv -s "Developer ID Application: Micah Lee" OnionShare.app/Contents/MacOS/python
|
||||||
|
codesign -vvvv -s "Developer ID Application: Micah Lee" OnionShare.app
|
||||||
|
|
||||||
|
productbuild --component OnionShare.app /Applications OnionShare.pkg --sign "$SIGNING_IDENTITY_INSTALLER"
|
||||||
|
36
install/prepare_for_codesign.py
Normal file
36
install/prepare_for_codesign.py
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
"""
|
||||||
|
This script is from https://github.com/kamillus/py2app-pyqt-codesign-fix-os-x
|
||||||
|
and slightly modified.
|
||||||
|
"""
|
||||||
|
|
||||||
|
import os
|
||||||
|
import re
|
||||||
|
import shutil
|
||||||
|
|
||||||
|
path_to_app = "dist/OnionShare.app"
|
||||||
|
|
||||||
|
def move_func(file):
|
||||||
|
print "moving %s to %s " % (os.path.join(dir_name, file), os.path.join(dir_name, 'Versions', "Current"))
|
||||||
|
try:
|
||||||
|
shutil.move(os.path.join(dir_name, file), os.path.join(dir_name, 'Versions', "Current"))
|
||||||
|
except Exception as e:
|
||||||
|
print e
|
||||||
|
return file
|
||||||
|
|
||||||
|
def filter_func(x):
|
||||||
|
return x != "Versions"
|
||||||
|
|
||||||
|
|
||||||
|
dir = path_to_app + "/Contents/Frameworks/"
|
||||||
|
p = re.compile('^Qt(.+)\.framework$')
|
||||||
|
|
||||||
|
for dir_name, subdir_list, file_list in os.walk(dir):
|
||||||
|
dir_name_short = dir_name.replace(dir, "")
|
||||||
|
|
||||||
|
if p.match(dir_name_short):
|
||||||
|
print('Found directory: %s' % dir_name_short)
|
||||||
|
print file_list
|
||||||
|
if os.path.islink(os.path.join(dir_name, file_list[0])):
|
||||||
|
os.unlink(os.path.join(dir_name, file_list[0]))
|
||||||
|
list(map(move_func, file_list[1:]))
|
||||||
|
list(map(move_func, filter(filter_func, subdir_list)))
|
Loading…
x
Reference in New Issue
Block a user