mirror of
https://github.com/CCExtractor/ccextractor.git
synced 2026-02-16 05:25:09 +00:00
[PR #1998] [FEATURE]: Add Snap packaging support with Github workflow #2803
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Original Pull Request: https://github.com/CCExtractor/ccextractor/pull/1998
State: open
Merged: No
In raising this pull request, I confirm the following:
My familiarity with the project:
Summary
As proposed in #1583, this PR adds Snapcraft-based packaging for CCExtractor, along with a GitHub Actions workflow that builds the Snap and uploads the resulting
.snapartifact to GitHub Releases.Benefits:
Implementation Details
snap/snapcraft.yamlSnapcraft configuration using the existing CMake build system. Runtime dependencies (FFmpeg, GPAC, Tesseract, etc.) are bundled explicitly via
stage-packages.snap/local/run-ccextractor.shLightweight runtime wrapper that ensures bundled shared libraries are resolved from within the Snap at execution time, avoiding accidental linkage against host system libraries. While the Snap may work without this wrapper on some environments, it makes runtime behavior deterministic and consistent across distributions.
.github/workflows/build_snap.ymlGitHub Actions workflow completes successfully and produces a
.snappackage, which is published as a CI artifact (zipped by GitHub Actions).Testing
GitHub Actions workflow completes successfully and produces a
.snappackage (CI run artifact).Local runtime verification performed on:
.snapartifact should be attached to GitHub Releases as well.