Bug 2033061

Summary: Review Request: rust-ethtool - Rust ethtool communication library
Product: [Fedora] Fedora Reporter: Fernando F. Mancera <ferferna>
Component: Package ReviewAssignee: Lubomir Rintel <lkundrak>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: decathorpe, lkundrak, package-review
Target Milestone: ---Flags: lkundrak: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-02-01 08:45:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2033035, 2033058    
Bug Blocks:    

Description Fernando F. Mancera 2021-12-15 19:25:57 UTC
Spec URL: https://ffmancera.fedorapeople.org/rust-ethtool/rust-ethtool.spec
SRPM URL: https://ffmancera.fedorapeople.org/rust-ethtool/rust-ethtool-0.1.0-1.fc35.src.rpm
Description: Rust library to communicate with ethtool using netlink
Fedora Account System Username: ffmancera

Comment 1 Fernando F. Mancera 2021-12-15 19:27:05 UTC
Please, notice this must be built with https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2033058 and https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2033035. This package is required to upgrade nispor, which is an existing fedora package. https://koji.fedoraproject.org/koji/buildinfo?buildID=1836976

Comment 2 Lubomir Rintel 2022-01-21 18:34:44 UTC
Taking this for a review too.

Seems like most of the points from https://bugzilla.redhat.com/show_bug.cgi?id=2033058 apply here too, so I'll hold back until the points are resolved.

Comment 4 Lubomir Rintel 2022-01-26 15:54:10 UTC
* Package named appropriately
* Packaging the latest version
* SPEC file clean and legible
* Macros used consistently
* Builds fine in mock
* MIT license is good for inclusion in Fedora
* Filelists sane (as far as Rust packaging goes anyway)
* Provides/Requires sane
* rpmlint is reasonably happy

rpmlint warns about this:

rust-ethtool-devel.noarch: W: files-duplicate /usr/share/doc/rust-ethtool-devel/README.md /usr/share/cargo/registry/ethtool-0.2.1/README.md

I guess that's okay for now. If possible, %exclude one of the copy and make
sure the remaining one is marked %doc. No big deal if you choose not to
though.

0.) License needs clarification

It seems that the package was intended to be licensed under the "MIT" license terms, but the terms are missing.
What's coloqually known as "MIT" license typically includes this clause:

  The above copyright notice and this permission notice shall be included
  in all copies or substantial portions of the Software.

That would be difficult to comply with given upstream doesn't include the license text.
(In fact I'm calling the police right now, expect a knock on your door soon.)

The Licensing Guidelines have a suggestion on how to deal with this:

https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuidelines/#_license_text

In short, you should just ask upstream to clarify things. In case they fail
to do so, copy the license text you believe upstream intended to use from a
canonical source and add it to the package.

Comment 5 Fernando F. Mancera 2022-01-31 13:49:35 UTC
Hi! I clarified this with upstream community in: https://github.com/little-dude/netlink/commit/4171970cacf911477aa81d71c26bcc3afbcc7c49

But we cannot wait for upstream release. What do you think about adding LICENSE-MIT as source temporarily and add this to the specfile?

 %files          devel
 %doc README.md
+%license LICENSE-MIT
 %{cargo_registry}/%{crate}-%{version_no_tilde}/

Thanks!

Comment 6 Fabio Valentini 2022-01-31 13:54:08 UTC
Yeah, you can include that file with something like:

# license file was added upstream but is not included published crates yet
Source1: https://github.com/little-dude/netlink/raw/4171970/LICENSE-MIT

This way it's documented where the file comes from, and "spectool -g *.spec" can even get the file for you.

You'll also need this in %prep:
cp %{SOURCE1} .

and in %files, as you mentioned:
%license LICENSE-MIT

This arrangement is fine until the file is included in a published version of the crate.

Comment 7 Lubomir Rintel 2022-01-31 14:01:12 UTC
Thank you.

The package is APPROVED

Comment 8 Gwyn Ciesla 2022-01-31 18:44:26 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-ethtool

Comment 9 Fedora Update System 2022-02-01 08:44:35 UTC
FEDORA-2022-1f9732ce73 has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-1f9732ce73

Comment 10 Fedora Update System 2022-02-01 08:45:04 UTC
FEDORA-2022-1f9732ce73 has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.