ci: match release bundles by extension, and ship the rpm

Renaming the app to JellyTau renamed its bundles, and the release job globbed
`bundle/deb/jellytau_*.deb`. The copy was wrapped in `if [ -f ... ]`, so the
rename would have dropped the .deb from the release silently — a green build
producing an incomplete release. Matching by extension removes the coupling
between the product name and the pipeline, and an empty dist/linux now fails
the job instead of passing quietly.

That `if [ -f "dir/"*.ext ]` guard was also wrong on its own terms: with more
than one match, test gets extra arguments and returns false.

Found while verifying the rename: the rpm has been built by every release since
deb+rpm became the bundle targets, and never copied, published or documented.
It ships now.

Also declares the package rename. Tauri kebab-cases productName into the
Debian package name, so "JellyTau" produces `jelly-tau` — a different package
from the `jellytau` earlier releases installed, which would have put a second
copy alongside the old one. deb now declares Replaces/Conflicts/Provides and
rpm Obsoletes/Provides, verified in the built control file.

TRACES: | DR-214
This commit is contained in:
2026-08-20 21:01:43 +02:00
parent d32ca13d00
commit 8fbf4d92cb
3 changed files with 66 additions and 17 deletions
+22 -1
View File
@@ -50,7 +50,28 @@
"category": "Video",
"shortDescription": "A cross-platform Jellyfin client",
"longDescription": "JellyTau is a Jellyfin client for Linux and Android. It streams and downloads music and video from a Jellyfin server, plays them back offline, and can control other Jellyfin sessions on the network.",
"licenseFile": "../LICENSE"
"licenseFile": "../LICENSE",
"linux": {
"deb": {
"provides": [
"jellytau"
],
"conflicts": [
"jellytau"
],
"replaces": [
"jellytau"
]
},
"rpm": {
"provides": [
"jellytau"
],
"obsoletes": [
"jellytau"
]
}
}
},
"mainBinaryName": "jellytau"
}