mirror of
https://github.com/khoj-ai/khoj.git
synced 2024-11-27 17:35:07 +01:00
Exclude unused libs under torch/lib. Reduce Debian package size by 700Mb
- libtorch_cuda.so (1Gb) and libtorch_cpu.so (700Mb) are large shared libs that are available at package root and under torch/lib. - The top level imports are used, so they unused libs are removed from package - This reduces the single file package size from 1.6Gb to 920Mb
This commit is contained in:
parent
5a20283202
commit
0273be0232
1 changed files with 17 additions and 6 deletions
23
Khoj.spec
23
Khoj.spec
|
@ -1,4 +1,6 @@
|
|||
# -*- mode: python ; coding: utf-8 -*-
|
||||
from os.path import join
|
||||
from platform import system
|
||||
from PyInstaller.utils.hooks import copy_metadata
|
||||
|
||||
datas = [('src/interface/web', 'src/interface/web')]
|
||||
|
@ -29,6 +31,13 @@ a = Analysis(
|
|||
cipher=block_cipher,
|
||||
noarchive=False,
|
||||
)
|
||||
|
||||
# Filter out unused, duplicate shared libs under torch/lib
|
||||
torch_lib_path = set([
|
||||
join('torch', 'lib', 'libtorch_cuda.so'),
|
||||
join('torch', 'lib', 'libtorch_cpu.so')])
|
||||
a.datas = [entry for entry in a.datas if not entry[0] in torch_lib_path]
|
||||
|
||||
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)
|
||||
|
||||
exe = EXE(
|
||||
|
@ -53,9 +62,11 @@ exe = EXE(
|
|||
entitlements_file=None,
|
||||
icon='src/interface/web/assets/icons/favicon.icns',
|
||||
)
|
||||
app = BUNDLE(
|
||||
exe,
|
||||
name='Khoj.app',
|
||||
icon='src/interface/web/assets/icons/favicon.icns',
|
||||
bundle_identifier=None,
|
||||
)
|
||||
|
||||
if system() == 'Darwin':
|
||||
app = BUNDLE(
|
||||
exe,
|
||||
name='Khoj.app',
|
||||
icon='src/interface/web/assets/icons/favicon.icns',
|
||||
bundle_identifier=None,
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue