diff --git a/.gitea/workflows/release.yaml b/.gitea/workflows/release.yaml index c844564..76de92c 100644 --- a/.gitea/workflows/release.yaml +++ b/.gitea/workflows/release.yaml @@ -123,3 +123,51 @@ jobs: echo "Release created successfully!" echo "View at: ${GITEA_URL}/${REPO_OWNER}/${REPO_NAME}/releases/tag/${{ steps.get_version.outputs.version }}" + + - name: Calculate checksum + id: checksum + run: | + CHECKSUM=$(md5sum "${{ steps.jprm.outputs.artifact }}" | awk '{print $1}') + echo "checksum=${CHECKSUM}" >> $GITHUB_OUTPUT + echo "MD5 checksum: ${CHECKSUM}" + + - name: Update manifest.json + run: | + VERSION="${{ steps.get_version.outputs.version_number }}" + CHECKSUM="${{ steps.checksum.outputs.checksum }}" + TIMESTAMP=$(date -u +"%Y-%m-%dT%H:%M:%SZ") + ARTIFACT_NAME="${{ steps.jprm.outputs.artifact_name }}" + REPO_OWNER="${{ github.repository_owner }}" + REPO_NAME="${{ github.event.repository.name }}" + GITEA_URL="${{ github.server_url }}" + DOWNLOAD_URL="${GITEA_URL}/${REPO_OWNER}/${REPO_NAME}/releases/download/${{ steps.get_version.outputs.version }}/${ARTIFACT_NAME}" + + # Create the new version entry + NEW_VERSION=$(cat < manifest.tmp.json + mv manifest.tmp.json manifest.json + + echo "Updated manifest.json:" + cat manifest.json + + - name: Commit and push manifest + env: + GITEA_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + git config user.name "Gitea Actions" + git config user.email "actions@gitea.tourolle.paris" + git add manifest.json + git commit -m "Update manifest.json for ${{ steps.get_version.outputs.version }}" + git push origin HEAD:master diff --git a/README.md b/README.md index 134273f..67bf34c 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,20 @@ A Jellyfin plugin that bridges audio playback to Logitech Media Server (LMS) for multi-room synchronized playback. +## Quick Install + +Add the following repository URL to your Jellyfin server to install JellyLMS directly from the plugin catalog: + +``` +https://gitea.tourolle.paris/dtourolle/jellyLMS/raw/branch/master/manifest.json +``` + +**Steps:** +1. Go to **Dashboard** → **Plugins** → **Repositories** +2. Click **Add** and paste the URL above +3. Go to **Catalog** and find "JellyLMS" +4. Click **Install** and restart Jellyfin + ## Overview JellyLMS enables Jellyfin to stream audio to LMS, which acts as a multi-room speaker system. The architecture is: diff --git a/manifest.json b/manifest.json new file mode 100644 index 0000000..0da70ad --- /dev/null +++ b/manifest.json @@ -0,0 +1,11 @@ +[ + { + "guid": "a5b8c9d0-1e2f-3a4b-5c6d-7e8f9a0b1c2d", + "name": "JellyLMS", + "description": "Stream Jellyfin audio to Logitech Media Server (LMS) for multi-room playback", + "overview": "Bridges Jellyfin audio playback to LMS for synchronized multi-room playback across Squeezebox players", + "owner": "dtourolle", + "category": "Music", + "versions": [] + } +]