The idea is to automate the build process to create the bundle zip file with all needed components: FujiNet-PC, SD Card files and Bridge to the emulator. This is work in progress.
The instructions below may be incomplete. I need to keep my notes somewhere ;-)
git clone https://github.com/FujiNetWIFI/fujinet-emulator-bridge.git
git clone https://github.com/a8jan/fujinet-pc-launcher.git
NetSIO hub from emulator bridge repository is written in Python as well FujiNet-PC Launcher is written in Python. To reduce the overhead of PyInstaller result both modules (netsiohub and launcher) are bundled together - this way only one Python interpreter with libraries is added for both programs.
Before build, both python modules should be inside fujinet-pc-launcher
. Copy netsiohub
module directory from fujinet-emulator-bridge/fujinet-bridge
into fujinet-pc-launcher
(or create symlink instead of copy).
When done, inside fujinet-pc-launcher
there should be two module directories:
- launcher
- netsiohub
To build Windows executable using PyInstaller:
cd fujinet-pc-launcher
pyinstaller --clean --onedir --noconfirm --noconsole --python-option u --name launcher --icon launcher\images\launcher-bg.ico --add-data launcher\images;images launcher\__main__.py
The result is in dist
directory.
To build macOS launcher.app using PyInstaller:
pyinstaller --clean --onedir --noconfirm --noconsole --python-option u --name launcher --icon launcher/images/launcher-bg.ico --add-data launcher/images:images launcher/__main__.py
To build Linux AppImage:
TBD
Build FujiNet-PC dist
target. Copy the result from fujinet-pc/build/dist
as fujinet-pc
(rename dist
to fujinet-pc
) into fujinet-pc-launcher/dist
directory.
Create emulator
directory inside fujinet-pc-launcher/dist
and copy netsio.atdev
from fujinet-emulator-bridge/altirra-custom-device
into newly created emulator
directory.
The content of fujinet-pc-launcher/dist
should be
- launcher
- fujinet-pc
- emulator
Zip fujinet-pc-launcher/dist/*
into fujinet-pc-bundle.zip