Replace etc directory by share for frozen build
cx_Freeze 6.15.10 store included files in Resources folder and make a symlink in MacOS folder for lib and share. So we need to store etc content in share to be available. (grafted from c9bb18c11e4a736c4ada1ea9f740ec8609dc3590) --HG-- branch : 6.0
This commit is contained in:
+6
-6
@@ -15,21 +15,21 @@ if hasattr(sys, 'frozen'):
|
||||
sys.stdout = open(os.devnull, 'w')
|
||||
sys.stderr = open(os.devnull, 'w')
|
||||
prefix = os.path.dirname(sys.executable)
|
||||
share = os.path.join(prefix, 'share')
|
||||
os.environ['GTK_EXE_PREFIX'] = prefix
|
||||
os.environ['GTK_DATA_PREFIX'] = prefix
|
||||
os.environ['EV_BACKENDS_DIR'] = prefix
|
||||
os.environ['XDG_DATA_DIRS'] = os.path.join(prefix, 'share')
|
||||
etc = os.path.join(prefix, 'etc')
|
||||
os.environ['XDG_DATA_DIRS'] = share
|
||||
os.environ['GDK_PIXBUF_MODULE_FILE'] = os.path.join(
|
||||
etc, 'gtk-3.0', 'gdk-pixbuf.loaders')
|
||||
share, 'gtk-3.0', 'gdk-pixbuf.loaders')
|
||||
os.environ['GTK_IM_MODULE_FILE'] = os.path.join(
|
||||
etc, 'gtk-3.0', 'gtk.immodules')
|
||||
share, 'gtk-3.0', 'gtk.immodules')
|
||||
os.environ['GI_TYPELIB_PATH'] = os.path.join(
|
||||
prefix, 'lib', 'girepository-1.0')
|
||||
os.environ.setdefault('SSL_CERT_FILE',
|
||||
os.path.join(etc, 'ssl', 'cert.pem'))
|
||||
os.path.join(share, 'ssl', 'cert.pem'))
|
||||
os.environ.setdefault('SSL_CERT_DIR',
|
||||
os.path.join(etc, 'ssl', 'certs'))
|
||||
os.path.join(share, 'ssl', 'certs'))
|
||||
|
||||
if sys.platform == 'win32':
|
||||
# cx_freeze >= 5 put python modules under lib directory
|
||||
|
||||
@@ -38,9 +38,9 @@ include_files = [
|
||||
(os.path.join(sys.prefix, 'share', 'icons', 'Adwaita'),
|
||||
os.path.join('share', 'icons', 'Adwaita')),
|
||||
(os.path.join(sys.platform, 'gtk-3.0', 'gtk.immodules'),
|
||||
os.path.join('etc', 'gtk-3.0', 'gtk.immodules')),
|
||||
os.path.join('share', 'gtk-3.0', 'gtk.immodules')),
|
||||
(os.path.join(sys.platform, 'gtk-3.0', 'gdk-pixbuf.loaders'),
|
||||
os.path.join('etc', 'gtk-3.0', 'gdk-pixbuf.loaders')),
|
||||
os.path.join('share', 'gtk-3.0', 'gdk-pixbuf.loaders')),
|
||||
]
|
||||
|
||||
required_gi_namespaces = [
|
||||
@@ -113,10 +113,10 @@ for lib in required_libs:
|
||||
|
||||
ssl_paths = ssl.get_default_verify_paths()
|
||||
include_files.append(
|
||||
(ssl_paths.openssl_cafile, os.path.join('etc', 'ssl', 'cert.pem')))
|
||||
(ssl_paths.openssl_cafile, os.path.join('share', 'ssl', 'cert.pem')))
|
||||
if os.path.exists(ssl_paths.openssl_capath):
|
||||
include_files.append(
|
||||
(ssl_paths.openssl_capath, os.path.join('etc', 'ssl', 'certs')))
|
||||
(ssl_paths.openssl_capath, os.path.join('share', 'ssl', 'certs')))
|
||||
|
||||
version = Popen(
|
||||
'python3 ./setup.py --version', stdout=PIPE, shell=True, encoding='utf-8'
|
||||
|
||||
Reference in New Issue
Block a user