Bug 2238840 - Review Request: jellyfin - The Free Software Media System
Summary: Review Request: jellyfin - The Free Software Media System
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nobody's working on this, feel free to take it
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 2170536
Blocks: MultimediaSIG
TreeView+ depends on / blocked
 
Reported: 2023-09-13 19:03 UTC by Michael Cronenworth
Modified: 2024-11-16 19:23 UTC (History)
5 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Michael Cronenworth 2023-09-13 19:03:44 UTC
Spec URL: https://pkgs.rpmfusion.org/cgit/free/jellyfin.git/plain/jellyfin.spec?id=90efcae72cfbcb8ee3198792a6d6b88cd642039a
SRPM URL: https://koji.rpmfusion.org/kojifiles/packages/jellyfin/10.8.10/1.fc39/src/jellyfin-10.8.10-1.fc39.src.rpm
Description: Jellyfin is a free software media system that puts you in control of managing and streaming your media.
Fedora Account System Username: mooninite

Comment 1 Neal Gompa 2023-09-14 12:44:41 UTC
Taking this review.

Comment 2 Neal Gompa 2023-09-14 13:04:08 UTC
Initial spec review:

> # Set .NET runtime identitfier string
> %ifarch aarch64
> %define dotnet_rid fedora.%{fedora}-arm64
> %else
> %define dotnet_rid fedora.%{fedora}-x64
> %endif

This confuses me with the ExcludeArch statement in the spec: "ExcludeArch:    %{power64} ppc64le %{arm}"

Is the intent that this only works with x86_64 and AArch64? If that's the case, this should use "ExclusiveArch: x86_64 aarch64"

> Source2:        %{name}-nupkgs.tar.xz
> Source3:        %{name}-nupkgs2.tar.xz
> [...]
> dotnet nuget add source %{_builddir}/jellyfin-nupkgs -n jellyfin-nupkgs
> dotnet nuget add source %{_builddir}/jellyfin-nupkgs2 -n jellyfin-nupkgs2
> dotnet nuget disable source nuget.org
> dotnet nuget disable source "NuGet official package source"

I'm slightly confused here. Are NuGet packages source or binary artifacts? Depending on what they are, we may need more help from the DotNet SIG.

Additionally, as a general comment, this is missing bundled provides for the vendored stuff.

Cf. https://docs.fedoraproject.org/en-US/fesco/Bundled_Software_policy/

> Requires:       ffmpeg

This should be changed to "ffmpeg-free", since that's what we have in Fedora.

Comment 3 Neal Gompa 2023-09-14 13:07:50 UTC
The License tag will also need to be updated to list all the licenses of the bundled stuff shipped too...

Cf. https://docs.fedoraproject.org/en-US/legal/license-field/

Comment 4 Omair Majid 2023-09-14 13:33:53 UTC
.NET upstream only provides .NET for x86_64 (they call this x64) and aarch64 (they call this arm64). It's likely that Jellyfin upstream has only tested these two configurations. On Fedora, though, .NET is available on all Fedora architectures (aarch64, ppc64le, s390x and x86_64), at least starting with .NET 7. This package uses .NET 6 which is missing ppc64le.

The RID computation stuff ought to be fixed through something like this https://bugzilla.redhat.com/show_bug.cgi?id=2170536 but I hadn't prioritized it high enough. I can look into that if that's a major issue for this package.

> Are NuGet packages source or binary artifacts?

NuGet packages (.nupkg files) are binary artifacts, similar to .jar files.

We don't have a great way to walk through the dependency tree and build everything from source yet. More at https://github.com/dotnet/source-build/discussions/2960

Looking at https://pkgs.rpmfusion.org/cgit/free/jellyfin.git/tree/jellyfin-offline.sh, some of these binary dependencies should become part of the .NET SDK itself starting with .NET 8. On the other hand, I am not even sure where to start with this:

$ tar tf jellyfin-nupkgs.tar.xz  | wc -l
17427

Comment 5 Michael Cronenworth 2023-09-14 13:47:35 UTC
There are 236 dependencies in jellyfin-nupkgs.tar.xz and currently I do not have the time required to build Provides and License fields to record their values. This review may stall until such time frees up or someone else wants to continue the review.

Comment 6 Michael Cronenworth 2023-09-14 13:52:04 UTC
Plus there are at least 100 Node.js dependencies... Help is welcome.

Comment 7 Package Review 2024-10-15 00:45:29 UTC
This is an automatic check from review-stats script.

This review request ticket hasn't been updated for some time, but it seems
that the review is still being working out by you. If this is right, please
respond to this comment clearing the NEEDINFO flag and try to reach out the
submitter to proceed with the review.

If you're not interested in reviewing this ticket anymore, please clear the
fedora-review flag and reset the assignee, so that a new reviewer can take
this ticket.

Without any reply, this request will shortly be resetted.

Comment 8 Package Review 2024-11-15 00:45:26 UTC
This is an automatic action taken by review-stats script.

The ticket reviewer failed to clear the NEEDINFO flag in a month.
As per https://fedoraproject.org/wiki/Policy_for_stalled_package_reviews
we reset the status and the assignee of this ticket.

Comment 9 Michael Cronenworth 2024-11-16 19:23:17 UTC
(In reply to Michael Cronenworth from comment #6)
> Plus there are at least 100 Node.js dependencies... Help is welcome.

Note to self:

There's tools to help with this.

https://packages.fedoraproject.org/pkgs/nodejs-packaging/nodejs-packaging-bundler/


Note You need to log in before you can comment on or make changes to this bug.