Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenTubeX SideStore repository

This repository publishes the official iPhone and iPad app source at sidestore.opentubex.org. It contains the stable beta app and a separately installable nightly app, each with its own settings and library.

Add the repository

Set up SideStore, then scan the QR code or open Browse → Sources → + in SideStore and add this URL:

QR code to add the OpenTubeX source to SideStore

https://sidestore.opentubex.org/source.json

The main source includes both apps. To see only one channel, use stable.json or nightly.json instead.

The app requires iOS or iPadOS 17.4 or newer. SideStore signs the unsigned IPA with your Apple Account. See the iOS installation guide for device setup and signing requirements.

How publishing works

The publish workflow downloads the unsigned iOS IPAs for the latest stable and nightly releases in OpenTubeX/OpenTubeX. It reads their app identity, version, build number, minimum OS version, and privacy permission descriptions, then generates the combined source and both channel-only sources. Each source links directly to the original IPA in the application repository's GitHub release.

Stable uses org.opentubex.app; nightly uses org.opentubex.app.nightly so both can be installed on the same device. If the latest nightly still uses the stable app identity, publishing reports that it is waiting for a compatible nightly and skips deployment, keeping the existing source intact. Missing channels or other unexpected identities fail validation before deployment. The workflow does not modify IPAs or create GitHub releases.

The sources and landing page are deployed to GitHub Pages. Publishing runs on pushes to main, manual runs, and opentubex-release or opentubex-nightly repository dispatch events.

Stable and nightly release workflows in OpenTubeX/OpenTubeX notify this repository after release metadata and the unsigned IPA's public download become available. The readiness checks retry while metadata or downloads are missing. Nightly notifications run independently for each package repository, so an unavailable package for another platform does not delay SideStore.

The catalog icons live in static/stable.png and static/nightly.png. Keep both PNGs in sync with the app's branding, including the nightly wrench badge.

Maintainer setup

Configure GitHub Pages to use GitHub Actions, set sidestore.opentubex.org as the custom domain, and add a DNS CNAME from that name to opentubex.github.io. The workflow uses the automatic GITHUB_TOKEN to read releases and deploy Pages; no Apple signing credentials or additional Actions secrets are required. The PUSH_TOKEN used by the OpenTubeX application repository must have write access to this repository so it can send release dispatches.

For local checks, install Python 3.11 or newer and GitHub CLI, authenticate with gh auth login, then run:

python -m unittest discover -s tests -v
python scripts/publish.py

Downloaded IPAs go into incoming/; the generated site goes into site/. Both directories are ignored by Git.

About

Official SideStore source for OpenTubeX on iPhone and iPad

Resources

Stars

3 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages