From ca959a31e0484fd0c07d378c8e6dd52f1889847f Mon Sep 17 00:00:00 2001 From: Hakan Seven Date: Sun, 16 Aug 2026 08:38:51 +0300 Subject: [PATCH] fix(snap): preserve payload layout Snapcraft strips the sole usr directory from tar sources, so extract the artifact directly and retain its desktop-file path.\n\nAdd a snap-only manual target to avoid rebuilding other platforms while validating packaging fixes. --- .github/workflows/release.yml | 11 +++++++++++ snap/snapcraft.yaml | 6 ++++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6929d9550..4e9413590 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -4,6 +4,15 @@ on: release: types: [published] workflow_dispatch: + inputs: + target: + description: Build target + required: true + default: all + type: choice + options: + - all + - snap jobs: build-appimage: @@ -149,6 +158,7 @@ jobs: release: edge build-windows: + if: github.event_name == 'release' || inputs.target == 'all' runs-on: windows-latest permissions: contents: write @@ -291,6 +301,7 @@ jobs: --clobber --repo ${{ github.repository }} build-macos: + if: github.event_name == 'release' || inputs.target == 'all' runs-on: macos-14 # Apple Silicon (arm64) only permissions: contents: write diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index fa38c66d2..9973cf30d 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -70,8 +70,10 @@ apps: parts: open-cad-studio: - plugin: dump - source: linux-payload.tar.gz + plugin: nil + override-build: | + mkdir -p "${CRAFT_PART_INSTALL}" + tar -xzf "${CRAFT_PROJECT_DIR}/linux-payload.tar.gz" -C "${CRAFT_PART_INSTALL}" stage-packages: - libxcursor1 - libxi6