Merge branch 'One_dir_specs'
This commit is contained in:
40
spec_files/Linux/Artemis_onedir.spec
Normal file
40
spec_files/Linux/Artemis_onedir.spec
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
# -*- mode: python -*-
|
||||||
|
|
||||||
|
block_cipher = None
|
||||||
|
|
||||||
|
import glob, os
|
||||||
|
|
||||||
|
data_file = [(f, '.') for f in glob.glob('*.[pu][yi]') if f != "artemis.py"]
|
||||||
|
data_file.append(('cacert.pem', '.'))
|
||||||
|
|
||||||
|
a = Analysis(['artemis.py'],
|
||||||
|
pathex=[os.getcwd()],
|
||||||
|
binaries=[],
|
||||||
|
datas=data_file,
|
||||||
|
hiddenimports=[],
|
||||||
|
hookspath=[],
|
||||||
|
runtime_hooks=[],
|
||||||
|
excludes=[],
|
||||||
|
win_no_prefer_redirects=False,
|
||||||
|
win_private_assemblies=False,
|
||||||
|
cipher=block_cipher,
|
||||||
|
noarchive=False)
|
||||||
|
pyz = PYZ(a.pure, a.zipped_data,
|
||||||
|
cipher=block_cipher)
|
||||||
|
exe = EXE(pyz,
|
||||||
|
a.scripts,
|
||||||
|
[],
|
||||||
|
exclude_binaries=True,
|
||||||
|
name='Artemis',
|
||||||
|
debug=False,
|
||||||
|
bootloader_ignore_signals=False,
|
||||||
|
strip=False,
|
||||||
|
upx=True,
|
||||||
|
console=False)
|
||||||
|
coll = COLLECT(exe,
|
||||||
|
a.binaries,
|
||||||
|
a.zipfiles,
|
||||||
|
a.datas,
|
||||||
|
strip=False,
|
||||||
|
upx=True,
|
||||||
|
name='Artemis')
|
||||||
@@ -6,21 +6,33 @@
|
|||||||
|
|
||||||
## ARTEMIS 3 .SPEC FILES
|
## ARTEMIS 3 .SPEC FILES
|
||||||
|
|
||||||
Artemis 3 .spec files are used by the package **pyinstaller** (https://www.pyinstaller.org/) to build a single standalone executable. The extreme versatility of this package is the fact that every external dependency is already embedded into the bundle. The interpreter of Python 3 is also included.
|
Artemis 3 .spec files are used by the package **pyinstaller** (https://www.pyinstaller.org/) to build a single standalone executable (or a one-dir package). The extreme versatility of this package is the fact that every external dependency is already embedded into the bundle. The interpreter of Python 3 is also included.
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
- Python 3.7.0+
|
- Python 3.7.0+
|
||||||
- Pyinstaller
|
- Pyinstaller
|
||||||
|
-
|
||||||
|
**IMPORTANT:** *To generate the standalone and the one-dir package, you must use an operating system that coincides with the target one (pyinstaller doesn't allow cross-compilation).*
|
||||||
|
|
||||||
## Package Building
|
## Package Building (standalone aka one-file, high portability, **suggested**)
|
||||||
**IMPORTANT:** *To generate the standalone, you must use an operating system that coincides with the target one (pyinstaller doesn't allow cross-compilation).*
|
|
||||||
1. Download a fresh copy of the git repository.
|
1. Download a fresh copy of the git repository.
|
||||||
2. Choose the target OS in `spec_files` folder and copy the whole content into `src`
|
2. Choose the target OS in `spec_files` folder and copy the whole content (except the Artemis_onedir.spec file) into `src`
|
||||||
3. Open a terminal into `src` and run:
|
3. Open a terminal into `src` and run:
|
||||||
```
|
```
|
||||||
pyinstaller Artemis.spec
|
pyinstaller Artemis.spec
|
||||||
```
|
```
|
||||||
4. The ready-to-use compiled software is now present into `src/dist` folder.
|
4. Copy the `src/theme` folder into `src/dist`.
|
||||||
|
5. The ready-to-use compiled software is now present into `src/dist` folder.
|
||||||
|
|
||||||
|
## Package Building (one-dir, shorter startup time, low portability)
|
||||||
|
1. Download a fresh copy of the git repository.
|
||||||
|
2. Choose the target OS in `spec_files` folder and copy the whole content (except the Artemis.spec file) into `src`
|
||||||
|
3. Open a terminal into `src` and run:
|
||||||
|
```
|
||||||
|
pyinstaller Artemis_onedir.spec
|
||||||
|
```
|
||||||
|
4. Copy the `src/theme` folder into `src/dist/Artemis`.
|
||||||
|
5. The ready-to-use compiled software is now present into `src/dist` folder as a bundle. All the libraries are clearly present.
|
||||||
|
|
||||||
## License
|
## License
|
||||||
This program (ARTEMIS 3, 2014-2019) is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
This program (ARTEMIS 3, 2014-2019) is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||||
|
|||||||
40
spec_files/Windows/Artemis_onedir.spec
Normal file
40
spec_files/Windows/Artemis_onedir.spec
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
# -*- mode: python -*-
|
||||||
|
|
||||||
|
block_cipher = None
|
||||||
|
|
||||||
|
import glob,os
|
||||||
|
|
||||||
|
data_file = [(f, '.') for f in glob.glob('*.[pu][yi]') if f != "artemis.py"]
|
||||||
|
data_file.append(('cacert.pem', '.'))
|
||||||
|
|
||||||
|
a = Analysis(['artemis.py'],
|
||||||
|
pathex=[os.getcwd()],
|
||||||
|
binaries=[],
|
||||||
|
datas=data_file,
|
||||||
|
hiddenimports=[],
|
||||||
|
hookspath=[],
|
||||||
|
runtime_hooks=[],
|
||||||
|
excludes=[],
|
||||||
|
win_no_prefer_redirects=False,
|
||||||
|
win_private_assemblies=False,
|
||||||
|
cipher=block_cipher,
|
||||||
|
noarchive=False)
|
||||||
|
pyz = PYZ(a.pure, a.zipped_data,
|
||||||
|
cipher=block_cipher)
|
||||||
|
exe = EXE(pyz,
|
||||||
|
a.scripts,
|
||||||
|
[],
|
||||||
|
exclude_binaries=True,
|
||||||
|
name='Artemis',
|
||||||
|
debug=False,
|
||||||
|
bootloader_ignore_signals=False,
|
||||||
|
strip=False,
|
||||||
|
upx=True,
|
||||||
|
console=False , icon='Artemis3.ico')
|
||||||
|
coll = COLLECT(exe,
|
||||||
|
a.binaries,
|
||||||
|
a.zipfiles,
|
||||||
|
a.datas,
|
||||||
|
strip=False,
|
||||||
|
upx=True,
|
||||||
|
name='Artemis')
|
||||||
Reference in New Issue
Block a user