From 13fb3b299e20356da4b93c07fd6aca208a6b4a71 Mon Sep 17 00:00:00 2001 From: Mark Qvist Date: Thu, 27 Nov 2025 22:56:29 +0100 Subject: [PATCH] Automated builds for Windows --- Makefile | 43 +++++++++++++++++++++++++++++++++++++---- sbapp/Makefile | 8 ++++---- sbapp/share/guides.html | 1 - winbuild.bat | 16 +++++++++++++++ 4 files changed, 59 insertions(+), 9 deletions(-) create mode 100644 winbuild.bat diff --git a/Makefile b/Makefile index 7b08d25..5da567d 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,5 @@ +include environment + devapk: make -C sbapp devapk @@ -43,10 +45,43 @@ preparewheel: compile_wheel: python3 setup.py bdist_wheel -build_wheel: remove_symlinks compile_wheel create_symlinks +compile_sourcepkg: + python3 setup.py sdist -build_win_exe: - python -m PyInstaller sideband.spec --noconfirm +update_share: + $(MAKE) -C sbapp fetchshare + +build_wheel: remove_symlinks update_share compile_wheel create_symlinks + +build_spkg: remove_symlinks update_share compile_sourcepkg create_symlinks + +prepare_win_pkg: clean build_spkg + -rm -r build/winpkg + mkdir -p build/winpkg + LC_ALL=C $(MAKE) -C ../Reticulum clean build_spkg + cp ../Reticulum/dist/rns-*.*.*.tar.gz build/winpkg + cd build/winpkg; tar -zxf rns-*.*.*.tar.gz + mv build/winpkg/rns-*.*.*/RNS build/winpkg; rm -r build/winpkg/rns-*.*.* + LC_ALL=C $(MAKE) -C ../LXMF clean build_spkg + cp ../LXMF/dist/lxmf-*.*.*.tar.gz build/winpkg + cd build/winpkg; tar -zxf lxmf-*.*.*.tar.gz + mv build/winpkg/lxmf-*.*.*/LXMF build/winpkg; rm -r build/winpkg/lxmf-*.*.* + LC_ALL=C $(MAKE) -C ../LXST clean build_spkg + cp ../LXST/dist/lxst-*.*.*.tar.gz build/winpkg + cd build/winpkg; tar -zxf lxst-*.*.*.tar.gz + mv build/winpkg/lxst-*.*.*/LXST build/winpkg; rm -r build/winpkg/lxst-*.*.* + rm build/winpkg/LXST/filterlib*.so + cp dist/sbapp-*.*.*.tar.gz build/winpkg + cd build/winpkg; tar -zxf sbapp-*.*.*.tar.gz + mv build/winpkg/sbapp-*.*.*/* build/winpkg; rm -r build/winpkg/sbapp-*.*.* + rm build/winpkg/LXST/Codecs/libs/pyogg/libs/macos -r + cp winbuild.bat winbuild.ps1 build/ + mv build/winpkg build/sideband_sources + cd build; zip -r winbuild.zip sideband_sources winbuild.bat winbuild.ps1 + mv build/winbuild.zip dist/winbuild.zip + +build_winexe: prepare_win_pkg + cp dist/winbuild.zip $(WINDOWS_BUILD_TARGET) release: build_wheel apk fetchapk @@ -54,4 +89,4 @@ upload: @echo Ready to publish release, hit enter to continue @read VOID @echo Uploading to PyPi... - twine upload dist/sbapp-* \ No newline at end of file + twine upload dist/sbapp-* diff --git a/sbapp/Makefile b/sbapp/Makefile index cb54e64..cda2d7b 100644 --- a/sbapp/Makefile +++ b/sbapp/Makefile @@ -69,18 +69,18 @@ endif fetchshare: -(rm ./share/pkg/*) -(rm ./share/mirrors/* -r) - cp ../../dist_archive/rns-1.0.3-py3-none-any.whl ./share/pkg/ - cp ../../dist_archive/rnspure-1.0.3-py3-none-any.whl ./share/pkg/ + cp ../../dist_archive/rns-1.0.4-py3-none-any.whl ./share/pkg/ + cp ../../dist_archive/rnspure-1.0.4-py3-none-any.whl ./share/pkg/ cp ../../dist_archive/lxmf-0.9.3-py3-none-any.whl ./share/pkg/ cp ../../dist_archive/nomadnet-0.9.1-py3-none-any.whl ./share/pkg/ cp ../../dist_archive/rnsh-0.1.7-py3-none-any.whl ./share/pkg/ cp ../../dist_archive/RNode_Firmware_*_Source.zip ./share/pkg/ zip --junk-paths ./share/pkg/example_plugins.zip ../docs/example_plugins/*.py cp -r ../../dist_archive/reticulum.network ./share/mirrors/ - cp -r ../../dist_archive/unsigned.io ./share/mirrors/ cp ../../dist_archive/Reticulum\ Manual.pdf ./share/mirrors/Reticulum_Manual.pdf cp ../../dist_archive/Reticulum\ Manual.epub ./share/mirrors/Reticulum_Manual.epub - cp -r ../../rnode-flasher ./share/mirrors/ + mkdir ./share/mirrors/rnode-flasher + cp ../../rnode-flasher/RNode_Flasher.html ./share/mirrors/rnode-flasher -(rm ./share/mirrors/rnode-flasher/.git -rf) release: diff --git a/sbapp/share/guides.html b/sbapp/share/guides.html index d4cf17a..5e09caf 100644 --- a/sbapp/share/guides.html +++ b/sbapp/share/guides.html @@ -13,7 +13,6 @@ Welcome to the Guide Section!

From here, you can browse or download various included manuals, documentation, references and guides.