This repository builds and publishes the official
OpenTubeX Snap package for amd64
and arm64 systems.
Install OpenTubeX from the Snap Store:
sudo snap install opentubex --betaSnap keeps Store installations updated automatically. To opt in to development snapshots, install from the edge channel instead:
sudo snap install opentubex --edgeEdge builds are intended for testing and may be unstable.
You can also download the package for your architecture from GitHub Releases and install it directly:
sudo snap install --dangerous ./opentubex_*.snapPackages installed this way are not connected to the Snap Store and must be updated manually.
After an OpenTubeX stable or nightly release finishes uploading its packages,
the application repository sends a repository dispatch containing the exact
release tag. Nightlies are published to edge; regular releases are published to both
beta and edge. The publish workflow then:
- validates that the release contains the required
amd64andarm64Debian packages; - updates the Snap version for that workflow run;
- builds both architectures using strict confinement and the Core 24 base;
- attaches the resulting packages to a GitHub release;
- uploads the packages to the selected Snap Store channels.
The workflow can also be run manually with a release tag. Manual runs publish
downloadable packages on GitHub. Enable the publish input to also publish to
the Snap Store; regular releases use the selected channel and nightlies use edge.
-
Log in with
snapcraft loginusing an account with publishing access to the registeredopentubexSnap. -
Export credentials restricted to this package:
snapcraft export-login \ --snaps=opentubex \ --channels=stable,candidate,beta,edge \ --acls=package_access,package_push,package_update,package_release \ snapcraft-login.txt
-
Add the contents of that file as the
SNAPCRAFT_STORE_CREDENTIALSrepository secret. -
Run the Build and publish Snap workflow with publishing disabled and test the downloaded package when changing the packaging.
The OpenTubeX application repository uses its existing PUSH_TOKEN secret to
send the cross-repository dispatch. That token needs write access to this
repository.