Implement a continuous integration and release pipeline using workflow definitions compatible with both GitHub Actions and Gitea Actions (act_runner) to build, test, and package the current release of ArgyllCMS for Linux x86_64.
Objectives
Automate building all ArgyllCMS binaries and tools on Linux x86_64.
Build release packages using makepackagebin.sh / Jamtop creating Argyll_V<VERSION>_linux_x86_64_bin.tgz.
Maintain 100% dual compatibility between GitHub Actions and Gitea Actions (ensuring no runner-specific dependencies or unsupported proprietary action steps block Gitea act_runner execution).
Produce and upload build artifacts (binary tarball and SHA-256 checksums).
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Description
Implement a continuous integration and release pipeline using workflow definitions compatible with both GitHub Actions and Gitea Actions (
act_runner) to build, test, and package the current release of ArgyllCMS for Linux x86_64.Objectives
makepackagebin.sh/JamtopcreatingArgyll_V<VERSION>_linux_x86_64_bin.tgz.act_runnerexecution).Dual-Platform Compatibility (GitHub + Gitea Actions)
.github/workflows/(which Gitea Actions natively recognizes and runs) or mirrored under.gitea/workflows/.ubuntu-latest/ Debian container foract_runner).actions/checkout@v4,actions/upload-artifact@v4) avoiding unsupported third-party enterprise GitHub-only marketplace actions.Linux x86_64 Build Specifications & Toolchain
1. System Dependencies & Build Tools
The workflow environment must provision:
build-essential,gcc,makeftjam(or bootstrappingjamfrom source if distribution package is unavailable)libx11-devlibxext-devlibxxf86vm-devlibxinerama-devlibxrandr-devlibxau-devlibxdmcp-devlibxss-devlibssl-devlibpng-devlibjpeg-devlibtiff-devzlib1g-devtar,gzip,zip2. Build Invocations
Execute
./makepackagebin.shto construct the complete distribution structure:bin/*ref/*doc/*usb/binfiles.lxArgyll_V<VERSION>_linux_x86_64_bin.tgzWorkflow Triggers
workflow_dispatch: On-demand manual builds.push/pull_request: Automated build verification against main/development branches.pushtags (v*): Trigger automated packaging and release asset attachment.Verification & Smoke Testing
Add a smoke test step to verify that built binaries execute properly prior to packaging:
Acceptance Criteria
.github/workflows/build-linux-x86_64.yml.makepackagebin.shcompletes successfully and producesArgyll_V<VERSION>_linux_x86_64_bin.tgz.act_runner.