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:
Cédric Krier
2023-11-04 19:44:09 +01:00
parent 2c82990fb8
commit 44d3135067
2 changed files with 10 additions and 10 deletions
+6 -6
View File
@@ -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
+4 -4
View File
@@ -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'