diff --git a/.github/workflows/build_release.yml b/.github/workflows/build_release.yml
new file mode 100644
index 00000000..d3d6d2bc
--- /dev/null
+++ b/.github/workflows/build_release.yml
@@ -0,0 +1,173 @@
+name: "Build RetroDECK"
+
+on:
+  push:
+    branches:
+      - main
+      - cooker*
+      - feat*
+      - branch/cooker*
+    paths:
+      - '.github/workflows/**'
+      - 'automation_tools/**'
+      - 'config/**'
+      - 'functions/**'
+      - 'rd-submodules/**'
+      - '*.sh'
+      - 'net.retrodeck.retrodeck.yml'
+      - 'net.retrodeck.retrodeck.appdata.xml'
+  pull_request:
+    branches:
+      - main
+      - cooker*
+
+  workflow_dispatch:
+
+permissions:
+  contents: write
+
+jobs:
+
+  # Generate Rekku Token Job
+  Generate-Rekku-Token:
+    runs-on: ubuntu-latest
+    outputs:
+      token: ${{ steps.generate-token.outputs.token }}
+    steps:
+      - name: Generate a token for Rekku
+        id: generate-token
+        uses: RetroDECK/components-template/.github/workflows/generate_rekku_token.yml@main
+
+  # Build RetroDECK Job
+  Build_RetroDECK:
+    runs-on: retrodeck-server
+    needs: Generate-Rekku-Token
+    outputs:
+      tag: ${{ steps.set-outputs.outputs.tag }}
+      release_body: ${{ steps.set-outputs.outputs.release_body }}
+      
+    steps:
+
+      # Remove Stuck Mounts
+      - name: Remove stuck mounts
+        run: |
+          sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
+          sudo umount -f $HOME/actions-run/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
+        continue-on-error: true
+
+      # Clone Repository
+      - name: Clone RetroDECK repo
+        uses: actions/checkout@v4
+        with:
+          submodules: 'true'
+
+      # Install Dependencies
+      - name: Install dependencies
+        run: curl "https://raw.githubusercontent.com/RetroDECK/components-template/main/automation_tools/install_dependencies.sh" | bash
+
+      # Generate Build ID for Cooker Branches
+      - name: Generate cooker build ID
+        if: github.ref != 'refs/heads/main'
+        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/cooker_build_id.sh"
+
+      # Get Branch Name
+      - name: Get branch name
+        id: get-branch-name
+        run: |
+          branch_name=$(echo $GITHUB_REF | sed 's|refs/heads/||')
+          echo "BRANCH_NAME=$branch_name" >> $GITHUB_ENV
+
+      # Generate Version Tag
+      - name: Generate version tag
+        id: set-outputs
+        run: |
+          source automation_tools/version_extractor.sh
+          MANIFEST_VERSION="$(fetch_manifest_version)"
+          if [[ "$GITHUB_REF" == "refs/heads/main" ]]; then
+            TAG="$MANIFEST_VERSION"
+            MAKE_LATEST=true
+          else
+            source_branch="${GITHUB_HEAD_REF//\//-}"
+            TAG="PR-$source_branch-${{ github.run_id }}"
+            MAKE_LATEST=false
+          fi
+          echo "tag=$TAG" >> $GITHUB_OUTPUT
+          echo "MAKE_LATEST=$MAKE_LATEST" >> $GITHUB_ENV
+
+      # Get Commits Since Last Release
+      - name: Get commits since last release
+        id: get-commits
+        run: |
+          LATEST_TAG=$(git describe --tags --abbrev=0 $(git rev-list --tags --max-count=1 --first-parent) || echo "")
+          if [ -z "$LATEST_TAG" ]; then
+            COMMITS=$(git log HEAD --pretty=format:"- %s")
+          else
+            COMMITS=$(git log ${LATEST_TAG}..HEAD --pretty=format:"- %s")
+          fi
+          echo "commits=$COMMITS" >> $GITHUB_OUTPUT
+
+      # Generate Release Body
+      - name: Generate release body text
+        id: generate-body
+        run: |
+          RELEASE_BODY="# Release Notes\n"
+          RELEASE_BODY+="This release is based on the commit: ${{ github.repository }}@${{ github.sha }}.\n"
+          RELEASE_BODY+="On branch [${{ env.BRANCH_NAME }}](https://github.com/RetroDECK/RetroDECK/tree/${{ env.BRANCH_NAME }}).\n\n"
+          RELEASE_BODY+="## Commits since last release\n"
+          RELEASE_BODY+="${{ steps.get-commits.outputs.commits }}\n\n"
+          echo "release_body=$RELEASE_BODY" >> $GITHUB_OUTPUT
+
+      # Build Flatpak
+      - name: Build Flatpak
+        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_only.sh"
+
+      # Create a Flatpak Bundle
+      - name: Create Bundle
+        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_bundle.sh"
+
+      # Determine if Target Repository is Main or not, in that case is a Cooker build
+      - name: Determine target repository
+        id: set-repo
+        run: |
+          if [[ "$GITHUB_REF" == "refs/heads/main" || "$GITHUB_REF" == refs/heads/feat* ]]; then
+            echo "repo_name=RetroDECK" >> $GITHUB_ENV
+          else
+            echo "repo_name=Cooker" >> $GITHUB_ENV
+
+      # Publish Release, if main and fails throws an error, if cooker continues anyway
+      - name: Publish release
+        uses: ncipollo/release-action@v1.13.0
+        with:
+          tag: ${{ steps.set-outputs.outputs.tag }}
+          name: "RetroDECK ${{ steps.set-outputs.outputs.tag }}"
+          body: ${{ steps.generate-body.outputs.release_body }}
+          artifacts: "RetroDECK.flatpak,RetroDECK.flatpak.sha,RetroDECK-Artifact.tar.gz,RetroDECK-cooker.flatpak,RetroDECK-cooker.flatpak.sha"
+          allowUpdates: true
+          makeLatest: ${{ env.MAKE_LATEST }}
+          token: ${{ needs.Generate-Rekku-Token.outputs.token }}
+          repo: "${{ env.repo_name }}"
+        continue-on-error: ${{ github.ref != 'refs/heads/main' }}
+
+      # Rewrite Tag (for Main Branch Only)
+      - name: Rewrite Tag
+        if: github.ref == 'refs/heads/main'
+        run: |
+          git submodule deinit -f --all
+          git fetch --tags
+          if git rev-parse --verify "${{ steps.set-outputs.outputs.tag }}" >/dev/null 2>&1; then
+              git tag -d "${{ steps.set-outputs.outputs.tag }}"
+              git push --delete origin "${{ steps.set-outputs.outputs.tag }}"
+          fi
+          git tag "${{ steps.set-outputs.outputs.tag }}"
+          git push origin "${{ steps.set-outputs.outputs.tag }}"
+        env:
+          GITHUB_TOKEN: ${{ needs.Generate-Rekku-Token.outputs.token }}
+
+  # Forgejo Publish Job
+  Forgejo-publish:
+    needs: Build_RetroDECK
+    uses: ./.github/workflows/publish-on-fogejo.yml
+    with:
+      release_body: ${{ needs.Build_RetroDECK.outputs.release_body }}
+      artifacts: "RetroDECK-cooker.flatpak,RetroDECK-cooker.flatpak.sha,RetroDECK-Artifact.tar.gz"
+      tag: ${{ needs.Build_RetroDECK.outputs.tag }}
\ No newline at end of file
diff --git a/.github/workflows/cooker-selfhosted.yml b/.github/workflows/cooker-selfhosted.yml
deleted file mode 100644
index c18ee709..00000000
--- a/.github/workflows/cooker-selfhosted.yml
+++ /dev/null
@@ -1,266 +0,0 @@
-name: "Build cooker"
-
-on:
-  push:
-    branches:
-     - cooker*
-     - feat*
-     - branch/cooker*
-    paths:
-     - '.github/workflows/**'
-     - 'automation_tools/**'
-     - 'config/**'
-     - 'functions/**'
-     - 'rd-submodules/**'
-     - '*.sh'
-     - 'net.retrodeck.retrodeck.yml'
-     - 'net.retrodeck.retrodeck.appdata.xml'
-  pull_request:
-
-  # Italy (CET): 11:00 PM
-  # Japan (JST): 7:00 AM
-  # schedule:
-  #  - cron: '0 22 * * *'
-
-  workflow_dispatch:
-
-permissions:
-  contents: write
-
-jobs:
-
-  Building_RetroDECK:
-    runs-on: retrodeck-server # was just "retrodeck", temporarly disabled other runners for troubleshooting
-    steps:
-
-      # Circumventing this bug: https://github.com/flatpak/flatpak-builder/issues/317
-      - name: Remove stuck mounts
-        run: |
-          sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
-          sudo umount -f $HOME/actions-run/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
-        continue-on-error: true
-
-      - name: Generate a token for Rekku
-        if: ${{ github.repository == 'RetroDECK/RetroDECK' }}
-        id: generate-rekku-token
-        uses: actions/create-github-app-token@v1
-        with:
-          app-id: ${{ vars.REKKU_APP_ID }}
-          private-key: ${{ secrets.REKKU_PRIVATE_KEY }}
-          repositories: "RetroDECK,Cooker"
-          owner: "RetroDECK"
-    
-      - name: Clone RetroDECK repo
-        uses: actions/checkout@v4
-        with:
-          submodules: 'true'
-        
-      - name: "Install dependencies"
-        run: /bin/bash | curl "https://raw.githubusercontent.com/RetroDECK/components-template/refs/heads/main/automation_tools/install_dependencies.sh"  
-
-      - name: Generate cooker build ID
-        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/cooker_build_id.sh"
-
-      - name: Get branch name
-        id: branch_name
-        run: |
-          if [[ "$GITHUB_EVENT_NAME" == "pull_request" || "$GITHUB_EVENT_NAME" == "pull_request_target" ]]; then
-            source_branch="${{ github.head_ref }}"
-            echo "BRANCH_NAME=$source_branch" >> $GITHUB_ENV
-          else
-            branch_name=$(echo $GITHUB_REF | sed 's|refs/heads/||')
-            echo "BRANCH_NAME=$branch_name" >> $GITHUB_ENV
-          fi
-      
-      # if the branch is coming from a PR the tag should be manually built
-      - name: "Generate version tag and evaluating latest tag"
-        run: |
-          # Source the version extractor script to get the manifest version
-          source automation_tools/version_extractor.sh
-          MANIFEST_VERSION="$(fetch_manifest_version)"
-          echo "MANIFEST_VERSION=$MANIFEST_VERSION" >> $GITHUB_ENV
-
-          # Check if the event is related to a pull request
-          if [[ "$GITHUB_EVENT_NAME" == "pull_request" || "$GITHUB_EVENT_NAME" == "pull_request_target" ]]; then
-            # Use GITHUB_HEAD_REF to get the source branch
-            source_branch="${GITHUB_HEAD_REF}"
-
-            # Replace '/' with '-' in the branch name
-            source_branch=${source_branch//\//-}
-            # Use GITHUB_HEAD_REF to get the source branch
-            source_branch="${GITHUB_HEAD_REF}"
-
-            # Replace '/' with '-' in the branch name
-            source_branch=${source_branch//\//-}
-            echo "[DEBUG] source branch is: $source_branch"
-
-            # Generate the tag for a pull request
-            echo "TAG=PR-$source_branch-${{ env.buildid }}" >> $GITHUB_ENV
-            echo "MAKE_LATEST=false" >> $GITHUB_ENV  # Not marked as the latest cooker version if it's a feature branch
-          else
-            # Generate the tag for non-pull request branches
-            # Generate the tag for non-pull request branches
-            TAG="$MANIFEST_VERSION-${{ env.buildid }}"
-            echo "TAG=$TAG" >> $GITHUB_ENV
-            echo "MAKE_LATEST=true" >> $GITHUB_ENV
-          fi
-
-          # Output the manifest version and generated tag for debugging
-          echo "MANIFEST_VERSION: $MANIFEST_VERSION"
-          echo "Version TAG: $TAG"
-          echo "MAKE_LATEST: $MAKE_LATEST"
-
-      # backing up manifest in case download fails and hashes must be recalculated
-      - name: Manifest backup
-        run: "cp ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak"
-
-      - name: Run pre-build automation tasks
-        run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
-
-      - name: "Adding flatpak portal for automated updates (cooker only)"
-        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/cooker_flatpak_portal_add.sh"
-
-      - name: "Updating release notes in appdata"
-        run: "automation_tools/appdata_management.sh"
-
-      - name: "[DEBUG] Outputting manifest"
-        run: cat net.retrodeck.retrodeck.yml
-
-      - name: "Build flatpak: download only"
-        id: "flatpak-download"
-        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh"
-        continue-on-error: true
-
-      # Sometimes flatpak download fails, in this case it tries a second time
-      - name: "Build flatpak: download only (retry)"
-        if: steps.flatpak-download.outcome == 'failure'
-        run: |
-          echo "Download failed, maybe some hash changed since the build start."
-          echo "Recalculating hashes and retrying download..."
-          rm -f "{GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml"
-          cp "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak" "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml"
-          "${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
-          "${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh"
-
-      - name: Build flatpak
-        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_only.sh"
-
-      - name: Create Bundle
-        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_bundle.sh"
-
-      - name: Set environment variable with current branch name
-        run: echo "GITHUB_REF_SLUG=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
-
-      - name: Get commits since last release
-        run: |
-          # Get the latest release tag
-          LATEST_TAG=$(git describe --tags --abbrev=0)
-          # Get all commits since the latest release tag
-          COMMITS=$(git log $LATEST_TAG..HEAD --pretty=format:"- %s")
-          # Set the output variable
-          echo "::set-output name=commits::$COMMITS"
-        id: commits
-        continue-on-error: true
-
-      - name: Publish the flatpak in a new cooker release
-        uses: ncipollo/release-action@v1
-        with:
-          tag: "${{env.TAG}}"
-          body: |
-            # Release Notes (Cooker)
-            This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}.
-            On branch [${{env.BRANCH_NAME}}](https://github.com/RetroDECK/RetroDECK/tree/${{env.BRANCH_NAME}}).
-
-            ## Commits since last release
-            ${{ steps.commits.outputs.commits }}
-
-            For the full release note for this build please refer to the channel [#BETA-TESTING](https://discord.gg/WDc5C9YWMx) on our Discord server.
-      
-            Cooker channel is provided for the community to test fixes and explore new functionality.
-            Please DO NOT open issues or ask support on this build.
-
-          artifacts: "RetroDECK-cooker.flatpak,RetroDECK-cooker.flatpak.sha,RetroDECK-Artifact.tar.gz"
-          allowUpdates: true
-          makeLatest: ${{env.MAKE_LATEST}} # if it's a feat branch is not considered the latest build
-          token: ${{ steps.generate-rekku-token.outputs.token }}
-          repo: ${{ github.repository_owner == 'RetroDECK' && 'Cooker' || github.event.repository.name }} # "Cooker" if we are in RetroDECK Org, else "this repo"
-        continue-on-error: true
-
-      - name: Rewrite Tag
-        if: ${{ github.repository == 'RetroDECK/RetroDECK' }}
-        run: |
-          git submodule deinit -f --all
-          git fetch --tags
-          git config --global user.name "Rekku"
-          git config --global user.email "rekku@retrodeck.net"
-          if git rev-parse --verify "${{ env.TAG }}" >/dev/null 2>&1; then # if the tag exists
-              git tag -d "${{ env.TAG }}"                                  # remove it from local repo
-              git push --delete origin "${{ env.TAG }}"                    # and from remote
-          fi
-          git tag "${{ env.TAG }}"             # Create the tag locally               
-          git push origin "${{ env.TAG }}"     # Push the new tag in the remote repo
-        env:
-          GITHUB_TOKEN: ${{ steps.generate-rekku-token.outputs.token }}
-
-      # In case it cannot publish the release at least it's providing the flatpak file for creating a manual release
-      - name: Upload RetroDECK-cooker.flatpak
-        uses: actions/upload-artifact@v4
-        with:
-          name: retrodeck-flatpak
-          path: RetroDECK-cooker.flatpak
-        continue-on-error: true
-
-      # - name: Upload RetroDECK-cooker.flatpak to Gitea Release
-      #   run: |
-      #     # Set variables for Gitea host, organization, repository, access token, and release details
-      #     GITEA_HOST="repo.retrodeck.net"
-      #     UPLOAD_HOST="upload.retrodeck.net"
-      #     ORGANIZATION="RetroDECK"
-      #     REPO="RetroDECK-cooker"
-      #     GITEA_TOKEN="${{ secrets.GITEA_TRIGGER_BUILD_TOKEN }}"
-      #     RELEASE_NAME="RetroDECK ${{env.TAG}}"
-      #     TAG="${{env.TAG}}"
-      #     RELEASE_BODY="# Release Notes (Cooker)
-      #     This is a cooker snapshot based on the commit: ${{ github.event.repository.full_name }}@${{github.sha}}.
-      #     On branch [${{env.BRANCH_NAME}}](https://repo.retrodeck.net/RetroDECK/RetroDECK/src/branch/${{env.BRANCH_NAME}}).
-
-      #     ## Commits since last release
-      #     ${{ steps.commits.outputs.commits }}
-
-      #     For the full release note for this build please refer to the channel [#BETA-TESTING](https://discord.gg/WDc5C9YWMx) on our Discord server.
-
-      #     Cooker channel is provided for the community to test fixes and explore new functionality.
-      #     Please DO NOT open issues or ask support on this build."
-
-      #     # Create a release using curl and capture the release ID
-      #     release_response=$(curl -X POST \
-      #         -H "Authorization: token ${GITEA_TOKEN}" \
-      #         -H "Content-Type: application/json" \
-      #         -d "{\"tag_name\":\"$TAG\",\"name\":\"$RELEASE_NAME\",\"body\":\"$RELEASE_BODY\"}" \
-      #         "http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases")
-
-      #     # Extract the release ID from the response
-      #     release_id=$(echo $release_response | jq -r '.id')
-
-      #     # Upload artifacts
-      #     curl -X POST \
-      #         -H "Authorization: token ${GITEA_TOKEN}" \
-      #         -H "X-GitHub-Token: ${{ secrets.UPLOAD_TOKEN }}" \
-      #         -H "Content-Type: multipart/form-data" \
-      #         -F "attachment=@RetroDECK-cooker.flatpak" \
-      #         "http://$UPLOAD_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-cooker.flatpak"
-
-      #     # Upload artifacts sha
-      #     curl -X POST \
-      #         -H "Authorization: token ${GITEA_TOKEN}" \
-      #         -H "X-GitHub-Token: ${{ secrets.UPLOAD_TOKEN }}" \
-      #         -H "Content-Type: multipart/form-data" \
-      #         -F "attachment=@RetroDECK-cooker.flatpak.sha" \
-      #         "http://$UPLOAD_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-cooker.flatpak.sha"
-
-      #     curl -X POST \
-      #         -H "Authorization: token ${GITEA_TOKEN}" \
-      #         -H "X-GitHub-Token: ${{ secrets.UPLOAD_TOKEN }}" \
-      #         -H "Content-Type: multipart/form-data" \
-      #         -F "attachment=@RetroDECK-Artifact.tar.gz" \
-      #         "http://$UPLOAD_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-Artifact.tar.gz"
diff --git a/.github/workflows/main-selfhosted.yml b/.github/workflows/main-selfhosted.yml
deleted file mode 100644
index 9f5fe535..00000000
--- a/.github/workflows/main-selfhosted.yml
+++ /dev/null
@@ -1,191 +0,0 @@
-name: "Build main"
-
-on:
-  push:
-    branches:
-     - main
-    paths:
-     - '.github/workflows/**'
-     - 'automation_tools/**'
-     - 'config/**'
-     - 'config/es-de/**'
-     - 'functions/**'
-     - 'rd-submodules/**'
-     - '*.sh'
-     - 'net.retrodeck.retrodeck.yml'
-     - 'net.retrodeck.retrodeck.appdata.xml'
-  pull_request: 
-    branches:
-     - main
-
-  workflow_dispatch:
-
-
-jobs:
-
-  Building_RetroDECK:
-    runs-on: retrodeck
-    steps:
-
-      # Circumventing this bug: https://github.com/flatpak/flatpak-builder/issues/317
-      - name: Remove stuck mounts
-        run: sudo umount -f /home/ubuntu/actions-runner/_work/RetroDECK/RetroDECK/.flatpak-builder/rofiles/*
-        continue-on-error: true
-
-      - name: Clone RetroDECK repo
-        uses: actions/checkout@v4
-        with:
-          submodules: 'true'
-
-      - name: "Install dependencies"
-        run: "automation_tools/install_dependencies.sh"
-
-      # backing up manifest in case download fails and hashes must be recalculated
-      - name: Manifest backup
-        run: "cp ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml ${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak"
-
-      - name: Run pre-build automation tasks
-        run : "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
-
-      - name: Read manifest content
-        id: read_manifest
-        run: echo "::set-output name=file_content::$(cat net.retrodeck.retrodeck.yml)"
-
-      # - name: "Updating release notes in appdata"
-      #   run: "automation_tools/appdata_management.sh"
-        
-      - name: Check versions (main only)
-        id: check_version_string
-        run: "automation_tools/main_version_checker.sh"
-
-      - name: "[DEBUG] Outputting manifest"
-        run: cat net.retrodeck.retrodeck.yml
-
-      - name: "Build flatpak: download only"
-        id: "flatpak-download"
-        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh"
-        continue-on-error: true
-
-      # Sometimes flatpak download fails, in this case it tries a second time
-      - name: "Build flatpak: download only (retry)"
-        if: steps.flatpak-download.outcome == 'failure'
-        run: |
-          echo "Download failed, maybe some hash changed since the build start."
-          echo "Recalculating hashes and retrying download..."
-          rm -f "{GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml"
-          cp "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml.bak" "${GITHUB_WORKSPACE}/net.retrodeck.retrodeck.yml"
-          "${GITHUB_WORKSPACE}/automation_tools/pre_build_automation.sh"
-          "${GITHUB_WORKSPACE}/automation_tools/flatpak_build_download_only.sh"
-
-      - name: Build flatpak
-        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_only.sh"
-
-      - name: Create Artifact for flathub
-        run: | 
-          tar -czf ${GITHUB_WORKSPACE}/RetroDECK-Artifact.tar.gz -C ${GITHUB_WORKSPACE}/retrodeck-flatpak-main .
-          hash=($(sha256sum ${GITHUB_WORKSPACE}/RetroDECK-Artifact.tar.gz))
-          echo $hash > ${GITHUB_WORKSPACE}/RetroDECK-Artifact.sha
-          mv -f RetroDECK-Artifact.* ${{ secrets.ARTIFACT_REPO }}
-
-      - name: Create Bundle
-        run: "/bin/bash ${GITHUB_WORKSPACE}/automation_tools/flatpak_build_bundle.sh"
-
-      - name: Getting version info
-        id: version
-        run: |
-          appdata="https://raw.githubusercontent.com/RetroDECK/RetroDECK/main/net.retrodeck.retrodeck.appdata.xml"
-          REL_VER=$(curl -s $appdata | xmlstarlet sel -t -v "//release/@version" | head -1)
-          DES="$(curl -s $appdata | xmlstarlet sel -t -m "//release[1]" -v "description" -n | sed '1,2d;$d;s/^ */- /;/^- $/d')"
-          echo "REL_VER=$REL_VER" >> $GITHUB_ENV
-          echo -e "# Release Notes\n" >> "body.md"
-          echo "$DES" >> "body.md"
-
-      - name: Publish the flatpak in a new release
-        uses: ncipollo/release-action@v1
-        env:
-          REL_VER: ${{ env.REL_VER }}
-        with:
-          tag: ${{ env.REL_VER }}
-          name: "RetroDECK v${{ env.REL_VER }}"
-          bodyFile: "body.md"
-          artifacts: "RetroDECK.flatpak,RetroDECK.flatpak.sha,RetroDECK-Artifact.tar.gz"
-          allowUpdates: true
-          makeLatest: true
-          token: ${{ secrets.TRIGGER_BUILD_TOKEN }}
-          repo: RetroDECK
-        continue-on-error: true
-
-      - name: Rewrite Tag
-        run: |
-          git submodule deinit -f --all
-          git fetch --tags
-          if git rev-parse --verify "${{ env.REL_VER }}" >/dev/null 2>&1; then # if the tag exists
-              git tag -d "${{ env.REL_VER }}"                                  # remove it from local repo
-              git push --delete origin "${{ env.REL_VER }}"                    # and from remote
-          fi
-          git tag "${{ env.REL_VER }}"             # Create the tag locally               
-          git push origin "${{ env.REL_VER }}"     # Push the new tag in the remote repo
-
-      # In case it cannot publish the release at least it's providing the flatpak file for creating a manual release
-      - name: Upload RetroDECK.flatpak
-        uses: actions/upload-artifact@v4
-        with:
-          name: retrodeck-flatpak
-          path: RetroDECK.flatpak
-        continue-on-error: true
-
-      - name: Publish release on Gitea
-        run: |
-          # Set variables for Gitea host, organization, repository, access token, and release details
-          GITEA_HOST="repo.retrodeck.net"
-          UPLOAD_HOST="upload.retrodeck.net"
-          ORGANIZATION="RetroDECK"
-          REPO="RetroDECK"
-          GITEA_TOKEN="${{ secrets.GITEA_TRIGGER_BUILD_TOKEN }}"
-          RELEASE_NAME="RetroDECK v${{ env.REL_VER }}"
-          TAG="${{ env.REL_VER }}"
-
-          payload=$(jq -cn \
-            --arg tag_name "$TAG" \
-            --arg name "$RELEASE_NAME" \
-            --arg body "$(cat body.md)" \
-            '{$tag_name, $name, $body}'
-          )
-
-          # Create a release using curl and capture the release ID
-          release_response=$(curl -X POST \
-            -H "Authorization: token ${GITEA_TOKEN}" \
-            -H "Content-Type: application/json" \
-            -d "$payload" \
-            "http://$GITEA_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases"
-          )
-
-          # Extract the release ID from the response
-          release_id=$(echo $release_response | jq -r '.id')
-
-          # Upload artifacts
-          curl -X POST \
-              -H "Authorization: token ${GITEA_TOKEN}" \
-              -H "X-GitHub-Token: ${{ secrets.UPLOAD_TOKEN }}" \
-              -H "Content-Type: multipart/form-data" \
-              -F "attachment=@RetroDECK.flatpak" \
-              "http://$UPLOAD_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-cooker.flatpak"
-
-          curl -X POST \
-              -H "Authorization: token ${GITEA_TOKEN}" \
-              -H "X-GitHub-Token: ${{ secrets.UPLOAD_TOKEN }}" \
-              -H "Content-Type: multipart/form-data" \
-              -F "attachment=@RetroDECK-Artifact.tar.gz" \
-              "http://$UPLOAD_HOST/api/v1/repos/$ORGANIZATION/$REPO/releases/$release_id/assets?name=RetroDECK-Artifact.tar.gz"
-        continue-on-error: true # this will be in place until we reate an artifacts website that bypasses cloudflare limit
-
-      - name: Upload RetroDECK.flatpak.sha to Gitea Release
-        run: |
-          curl -X POST \
-            -H "Authorization: token ${GITEA_TOKEN}" \
-            -H "X-GitHub-Token: ${{ secrets.UPLOAD_TOKEN }}" \
-            -F "file=@RetroDECK.flatpak.sha" \
-            "https://$UPLOAD_HOST/RetroDECK/RetroDECK/releases/${{ env.REL_VER }}/assets?name=RetroDECK.flatpak.sha"
-        env:
-          GITEA_TOKEN: ${{ secrets.GITEA_TRIGGER_BUILD_TOKEN }}
-        continue-on-error: true # this will be in place until we reate an artifacts website that bypasses cloudflare limit