diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml
index 8b15c53c4..c0976e89d 100644
--- a/.github/workflows/windows-build.yml
+++ b/.github/workflows/windows-build.yml
@@ -316,11 +316,24 @@ jobs:
nsis_root/files/bin/
if-no-files-found: warn
+ - name: Zip portable (readytouse)
+ shell: msys2 {0}
+ run: |
+ set -euo pipefail
+ VERSION="${{ steps.qet_version.outputs.base_version }}"
+ HEAD="${{ steps.qet_version.outputs.head }}"
+ ZIP_NAME="qelectrotech-${VERSION}+git${HEAD}-x86-win64-readytouse.zip"
+ cd "$GITHUB_WORKSPACE/nsis_root/files"
+ zip -r "$GITHUB_WORKSPACE/dist/$ZIP_NAME" .
+ echo "ZIP created: $ZIP_NAME ($(du -sh "$GITHUB_WORKSPACE/dist/$ZIP_NAME" | cut -f1))"
+ echo "zip_name=$ZIP_NAME" >> "$GITHUB_OUTPUT"
+ id: zip_portable
+
- name: Upload portable (files/ without installer)
uses: actions/upload-artifact@v4
with:
name: qelectrotech-${{ steps.qet_version.outputs.base_version }}+git${{ steps.qet_version.outputs.head }}-x86-win64-readytouse
- path: nsis_root/files/
+ path: dist/${{ steps.zip_portable.outputs.zip_name }}
retention-days: 14
- name: Upload NSIS installer
@@ -354,6 +367,13 @@ jobs:
name: qelectrotech-windows-installer
path: downloaded/installer/
+ - name: Download portable artifact
+ uses: actions/download-artifact@v4
+ with:
+ pattern: qelectrotech-*-readytouse
+ path: downloaded/portable/
+ merge-multiple: true
+
- name: Update nightly release
uses: softprops/action-gh-release@v2
with:
@@ -372,7 +392,9 @@ jobs:
> For stable releases, see the [Releases page](https://github.com/${{ github.repository }}/releases).
prerelease: true
make_latest: false
- files: downloaded/installer/*.exe
+ files: |
+ downloaded/installer/*.exe
+ downloaded/portable/*.zip
token: ${{ secrets.GITHUB_TOKEN }}
- name: Generate download page (index.html)
@@ -384,6 +406,8 @@ jobs:
RUN_URL="https://github.com/$REPO/actions/runs/${{ github.run_id }}"
EXE_NAME=$(ls downloaded/installer/*.exe | xargs -I{} basename {})
INSTALLER_URL="https://github.com/$REPO/releases/download/nightly/$EXE_NAME"
+ ZIP_NAME=$(ls downloaded/portable/*.zip | xargs -I{} basename {})
+ PORTABLE_URL="https://github.com/$REPO/releases/download/nightly/$ZIP_NAME"
mkdir -p gh-pages
cat > gh-pages/index.html << HTMLEOF
@@ -526,6 +550,13 @@ jobs:
.exe — recommended, includes all dependencies
+
+ 📦
+
+ Windows Portable
+ .zip — no installation required, extract and run
+
+
📦