From f325a6cf5d646b9ff8ea607d15f2d92f25ca45a5 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 24 May 2026 14:08:10 +0000 Subject: [PATCH 1/3] Add Flatpak GitHub Actions workflow and rebrand packaging to Apollo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Set Flatpak app ID to io.github.filobus97.Apollo in CMakeLists.txt - Rename all packaging files from dev.lizardbyte.app.Sunshine.* to io.github.filobus97.Apollo.* - Update publisher info in the Flatpak manifest (LizardByte → filobus97) - Update metainfo.xml with Apollo-specific URLs and developer identity - Add .github/workflows/flatpak.yml: manual workflow_dispatch trigger that generates npm sources, configures the CMake manifest, builds via flatpak/flatpak-github-actions, and uploads Apollo.flatpak as an artifact https://claude.ai/code/session_01Q9zcqAzv44u9eZwK4Bhr2X --- .github/workflows/flatpak.yml | 61 +++++++++++++++++++ CMakeLists.txt | 2 +- packaging/linux/flatpak/exceptions.json | 2 +- ...top => io.github.filobus97.Apollo.desktop} | 0 ...ine.yml => io.github.filobus97.Apollo.yml} | 0 ...top => io.github.filobus97.Apollo.desktop} | 0 ...> io.github.filobus97.Apollo.metainfo.xml} | 0 ....github.filobus97.Apollo.terminal.desktop} | 0 8 files changed, 63 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/flatpak.yml rename packaging/linux/flatpak/{dev.lizardbyte.app.Sunshine.desktop => io.github.filobus97.Apollo.desktop} (100%) rename packaging/linux/flatpak/{dev.lizardbyte.app.Sunshine.yml => io.github.filobus97.Apollo.yml} (100%) rename packaging/linux/{dev.lizardbyte.app.Sunshine.desktop => io.github.filobus97.Apollo.desktop} (100%) rename packaging/linux/{dev.lizardbyte.app.Sunshine.metainfo.xml => io.github.filobus97.Apollo.metainfo.xml} (100%) rename packaging/linux/{dev.lizardbyte.app.Sunshine.terminal.desktop => io.github.filobus97.Apollo.terminal.desktop} (100%) diff --git a/.github/workflows/flatpak.yml b/.github/workflows/flatpak.yml new file mode 100644 index 000000000..8264eb5c6 --- /dev/null +++ b/.github/workflows/flatpak.yml @@ -0,0 +1,61 @@ +--- +name: Flatpak + +on: + workflow_dispatch: + inputs: + build_version: + description: 'Version tag for the build (e.g. v0.1.0). Defaults to the commit SHA.' + required: false + default: '' + +jobs: + flatpak: + name: Build Flatpak + runs-on: ubuntu-22.04 + + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: recursive + fetch-depth: 0 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.x' + + - name: Install flatpak-node-generator dependencies + run: pip install aiohttp toml + + - name: Generate npm sources for Flatpak + run: | + python3 packaging/linux/flatpak/deps/flatpak-builder-tools/node/flatpak-node-generator.py \ + npm package-lock.json \ + --output generated-sources.json + + - name: Configure Flatpak manifest + env: + BRANCH: ${{ github.ref_name }} + BUILD_VERSION: ${{ inputs.build_version || github.sha }} + CLONE_URL: ${{ github.server_url }}/${{ github.repository }} + COMMIT: ${{ github.sha }} + run: | + cmake -B cmake-build \ + -DSUNSHINE_CONFIGURE_FLATPAK_MAN=ON \ + -DSUNSHINE_CONFIGURE_ONLY=ON + + - name: Build Flatpak + uses: flatpak/flatpak-github-actions/flatpak-builder@v6 + with: + bundle: Apollo.flatpak + manifest-path: cmake-build/io.github.filobus97.Apollo.yml + cache-key: flatpak-builder-${{ hashFiles('cmake-build/io.github.filobus97.Apollo.yml') }} + + - name: Upload Flatpak bundle + uses: actions/upload-artifact@v4 + with: + name: Apollo-flatpak + path: Apollo.flatpak + retention-days: 30 diff --git a/CMakeLists.txt b/CMakeLists.txt index fe6cde13a..625059e0f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,7 +10,7 @@ project(Apollo VERSION 0.0.0 set(PROJECT_LICENSE "GPL-3.0-only") -set(PROJECT_FQDN "dev.lizardbyte.app.Sunshine") +set(PROJECT_FQDN "io.github.filobus97.Apollo") set(PROJECT_BRIEF_DESCRIPTION "GameStream host for Artemis") # must be <= 35 characters diff --git a/packaging/linux/flatpak/exceptions.json b/packaging/linux/flatpak/exceptions.json index 30ea0d21c..d7c0ac301 100644 --- a/packaging/linux/flatpak/exceptions.json +++ b/packaging/linux/flatpak/exceptions.json @@ -1,5 +1,5 @@ { - "dev.lizardbyte.app.Sunshine": [ + "io.github.filobus97.Apollo": [ "appstream-external-screenshot-url", "appstream-screenshots-not-mirrored-in-ostree", "external-gitmodule-url-found", diff --git a/packaging/linux/flatpak/dev.lizardbyte.app.Sunshine.desktop b/packaging/linux/flatpak/io.github.filobus97.Apollo.desktop similarity index 100% rename from packaging/linux/flatpak/dev.lizardbyte.app.Sunshine.desktop rename to packaging/linux/flatpak/io.github.filobus97.Apollo.desktop diff --git a/packaging/linux/flatpak/dev.lizardbyte.app.Sunshine.yml b/packaging/linux/flatpak/io.github.filobus97.Apollo.yml similarity index 100% rename from packaging/linux/flatpak/dev.lizardbyte.app.Sunshine.yml rename to packaging/linux/flatpak/io.github.filobus97.Apollo.yml diff --git a/packaging/linux/dev.lizardbyte.app.Sunshine.desktop b/packaging/linux/io.github.filobus97.Apollo.desktop similarity index 100% rename from packaging/linux/dev.lizardbyte.app.Sunshine.desktop rename to packaging/linux/io.github.filobus97.Apollo.desktop diff --git a/packaging/linux/dev.lizardbyte.app.Sunshine.metainfo.xml b/packaging/linux/io.github.filobus97.Apollo.metainfo.xml similarity index 100% rename from packaging/linux/dev.lizardbyte.app.Sunshine.metainfo.xml rename to packaging/linux/io.github.filobus97.Apollo.metainfo.xml diff --git a/packaging/linux/dev.lizardbyte.app.Sunshine.terminal.desktop b/packaging/linux/io.github.filobus97.Apollo.terminal.desktop similarity index 100% rename from packaging/linux/dev.lizardbyte.app.Sunshine.terminal.desktop rename to packaging/linux/io.github.filobus97.Apollo.terminal.desktop From 1961089acad375a7b277f585ef8ae2ce3569879d Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 24 May 2026 14:09:39 +0000 Subject: [PATCH 2/3] Update Flatpak manifest and metainfo with Apollo publisher info Replace remaining LizardByte references with Apollo-specific URLs and developer identity in the Flatpak manifest and metainfo.xml. https://claude.ai/code/session_01Q9zcqAzv44u9eZwK4Bhr2X --- .../flatpak/io.github.filobus97.Apollo.yml | 6 +++--- .../io.github.filobus97.Apollo.metainfo.xml | 21 ++++++++----------- 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/packaging/linux/flatpak/io.github.filobus97.Apollo.yml b/packaging/linux/flatpak/io.github.filobus97.Apollo.yml index 303f2e7ee..a39c79e77 100644 --- a/packaging/linux/flatpak/io.github.filobus97.Apollo.yml +++ b/packaging/linux/flatpak/io.github.filobus97.Apollo.yml @@ -74,9 +74,9 @@ modules: - -DSUNSHINE_ENABLE_X11=ON - -DSUNSHINE_ENABLE_DRM=ON - -DSUNSHINE_ENABLE_CUDA=ON - - -DSUNSHINE_PUBLISHER_NAME='LizardByte' - - -DSUNSHINE_PUBLISHER_WEBSITE='https://app.lizardbyte.dev' - - -DSUNSHINE_PUBLISHER_ISSUE_URL='https://app.lizardbyte.dev/support' + - -DSUNSHINE_PUBLISHER_NAME='filobus97' + - -DSUNSHINE_PUBLISHER_WEBSITE='https://github.com/filobus97/Apollo' + - -DSUNSHINE_PUBLISHER_ISSUE_URL='https://github.com/filobus97/Apollo/issues' no-make-install: false post-install: - install -D $FLATPAK_BUILDER_BUILDDIR/packaging/linux/flatpak/scripts/* /app/bin diff --git a/packaging/linux/io.github.filobus97.Apollo.metainfo.xml b/packaging/linux/io.github.filobus97.Apollo.metainfo.xml index 6be351690..dc2045f55 100644 --- a/packaging/linux/io.github.filobus97.Apollo.metainfo.xml +++ b/packaging/linux/io.github.filobus97.Apollo.metainfo.xml @@ -16,23 +16,20 @@ @PROJECT_HOMEPAGE_URL@ - https://github.com/LizardByte/Sunshine/issues - https://docs.lizardbyte.dev/projects/sunshine/latest/md_docs_2troubleshooting.html - https://docs.lizardbyte.dev/projects/sunshine - https://app.lizardbyte.dev/#Donate - https://translate.lizardbyte.dev - https://app.lizardbyte.dev/support + https://github.com/filobus97/Apollo/issues + https://github.com/filobus97/Apollo/wiki + https://github.com/filobus97/Apollo/issues

@PROJECT_LONG_DESCRIPTION@

-

NOTE: Sunshine requires additional installation steps (Flatpak).

+

NOTE: Apollo requires additional installation steps (Flatpak).

flatpak run --command=additional-install.sh @PROJECT_FQDN@

-

NOTE: Sunshine uses a self-signed certificate. The web browser will report it as not secure, but it is safe.

+

NOTE: Apollo uses a self-signed certificate. The web browser will report it as not secure, but it is safe.

NOTE: KMS Grab (Flatpak)

sudo -i PULSE_SERVER=unix:/run/user/$(id -u $whoami)/pulse/native flatpak run @PROJECT_FQDN@ @@ -51,13 +48,13 @@ - - LizardByte + + filobus97 - https://app.lizardbyte.dev/Sunshine/assets/img/screenshots/01-sunshine-welcome-page.png - Sunshine welcome page + https://raw.githubusercontent.com/filobus97/Apollo/refs/heads/master/apollo.png + Apollo game streaming host From a17604ab9574c8a1c59568ec1122f54a31c86f18 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 24 May 2026 14:29:48 +0000 Subject: [PATCH 3/3] Fix Flatpak workflow: init only required submodules Using submodules: recursive caused all third-party submodules (including the multi-GB boost) to be checked out, which failed silently and left the flatpak-builder-tools submodule empty. Now only the two Flatpak- specific submodules are initialized. https://claude.ai/code/session_01Q9zcqAzv44u9eZwK4Bhr2X --- .github/workflows/flatpak.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/flatpak.yml b/.github/workflows/flatpak.yml index 8264eb5c6..8f78a42d1 100644 --- a/.github/workflows/flatpak.yml +++ b/.github/workflows/flatpak.yml @@ -18,9 +18,14 @@ jobs: - name: Checkout uses: actions/checkout@v4 with: - submodules: recursive + submodules: false fetch-depth: 0 + - name: Initialize Flatpak submodules + run: | + git submodule update --init packaging/linux/flatpak/deps/flatpak-builder-tools + git submodule update --init packaging/linux/flatpak/deps/shared-modules + - name: Set up Python uses: actions/setup-python@v5 with: