mirror of
https://github.com/wgtunnel/desktop.git
synced 2026-10-09 14:40:14 -07:00
109 lines
3.1 KiB
YAML
109 lines
3.1 KiB
YAML
name: package-linux
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
variant:
|
|
description: "App variant (release or beta)"
|
|
type: string
|
|
required: true
|
|
version:
|
|
description: "Updater and display version (0.0.0 or 0.0.0-beta.1)"
|
|
type: string
|
|
required: true
|
|
package_version:
|
|
description: "Installer packageVersion MAJOR.MINOR.PATCH"
|
|
type: string
|
|
required: true
|
|
nucleus_ref:
|
|
description: "NucleusFramework/Nucleus ref"
|
|
type: string
|
|
required: false
|
|
default: main
|
|
workflow_dispatch:
|
|
inputs:
|
|
variant:
|
|
description: "App variant"
|
|
type: choice
|
|
options:
|
|
- release
|
|
- beta
|
|
default: release
|
|
version:
|
|
description: "Updater and display version (0.0.0 or 0.0.0-beta.1)"
|
|
type: string
|
|
default: "0.0.0-test"
|
|
package_version:
|
|
description: "Installer packageVersion MAJOR.MINOR.PATCH"
|
|
type: string
|
|
default: "0.0.0"
|
|
nucleus_ref:
|
|
description: "NucleusFramework/Nucleus ref"
|
|
type: string
|
|
default: main
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
package:
|
|
name: package-linux
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 120
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
path: desktop
|
|
submodules: recursive
|
|
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
repository: NucleusFramework/Nucleus
|
|
ref: ${{ inputs.nucleus_ref || 'main' }}
|
|
path: Nucleus
|
|
|
|
- uses: ./Nucleus/.github/actions/setup-nucleus
|
|
with:
|
|
java-version: "25"
|
|
packaging-tools: "true"
|
|
setup-gradle: "true"
|
|
setup-node: "true"
|
|
graalvm: "true"
|
|
|
|
- uses: actions/setup-go@v5
|
|
with:
|
|
go-version: "1.25"
|
|
|
|
- name: Install keyring cross-compile toolchain
|
|
run: sudo apt-get update && sudo apt-get install -y gcc-mingw-w64-x86-64
|
|
|
|
- name: Package Linux (GraalVM)
|
|
working-directory: desktop
|
|
env:
|
|
WGTUNNEL_VARIANT: ${{ inputs.variant }}
|
|
GITHUB_TOKEN: ${{ github.token }}
|
|
run: |
|
|
chmod +x gradlew
|
|
./gradlew \
|
|
:composeApp:packageGraalvmDeb \
|
|
:composeApp:packageGraalvmRpm \
|
|
:composeApp:packageGraalvmPacman \
|
|
:composeApp:packageGraalvmTar \
|
|
--no-daemon --stacktrace \
|
|
-Papp.variant=${{ inputs.variant }} \
|
|
-Papp.version=${{ inputs.version }} \
|
|
-Papp.packageVersion=${{ inputs.package_version }}
|
|
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: release-assets-Linux-amd64
|
|
if-no-files-found: error
|
|
path: |
|
|
desktop/composeApp/build/compose/binaries/**/*.deb
|
|
desktop/composeApp/build/compose/binaries/**/*.rpm
|
|
desktop/composeApp/build/compose/binaries/**/*.pacman
|
|
desktop/composeApp/build/compose/binaries/**/*.pkg.tar.zst
|
|
desktop/composeApp/build/compose/binaries/**/*.tar.gz
|
|
desktop/composeApp/build/compose/binaries/**/*.yml
|
|
desktop/composeApp/build/compose/binaries/**/*.blockmap
|