Plugin builds against Jellyfin 10.11 and serves an authenticated page #2
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
mobrule/kurageyomi#2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Parent
#1 — PRD: Kurageyomi
What to build
The plugin skeleton: it builds against the real server version and serves an authenticated page.
Target net9.0 with
Jellyfin.Controller 10.11.11— the exact version dionysus runs, publishedon NuGet with a matching
net9.0dependency group. Do not follow the official plugin template'sversions: it pins
targetAbi 10.9.0.0againstJellyfin.Controller 10.9.11and is internallyinconsistent about
net8.0versusnet9.0. Use it for shape only.meta.jsonmust declare atargetAbimatching 10.11.Per ADR 0001 the plugin serves the phone UI itself, same-origin, behind Jellyfin's own auth. This
slice establishes exactly that and nothing else — no sessions, no subtitles, no dictionary. The
page only has to prove it loaded and that the request was authenticated.
The page ships whatever manifest and icon Chrome on Android needs to offer home-screen install,
and declares standalone display. Whether that actually works on the device is verified in #6.
Acceptance criteria
Jellyfin.Controller 10.11.11onnet9.0meta.jsondeclares atargetAbimatching the 10.11 serverKurageyomi.dllplus itsmeta.jsonBlocked by
None - can start immediately
Note on scope
Deployment to dionysus and verification on the Pixel were split out into #6, because neither can
be verified by an agent on dex-win. This issue is done when the build is green and the auth
behaviour is proven by test; #6 proves it runs on the real server.
Plugin skeleton loads on Jellyfin 10.11 and serves an authenticated pageto Plugin builds against Jellyfin 10.11 and serves an authenticated pageImplemented and merged to
mainatc8440ee. Held open deliberately: the code is unit-tested but has never run on the real server, and this issue's criteria include behaviour only observable there. #6 deploys it; this closes once that confirms it.Verified on dionysus: the plugin loads, and the shell is served anonymously and renders on the Pixel over the tailnet. Merged in
main.Home-screen install could not be verified — that needs a secure context, and the plugin is reached over
http://dionysus:8096. The manifest and icon are in place and correct; installability is waiting on https, tracked in #6.