Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1873108
Summary: | Review Request: gnome-tour - GNOME Tour and Greeter | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Kalev Lember <klember> |
Component: | Package Review | Assignee: | Felipe Borges <feborges> |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | aday, decathorpe, feborges, fedora, package-review |
Target Milestone: | --- | Flags: | feborges:
fedora-review+
|
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | gnome-tour-3.37.91-2.fc33 gnome-tour-3.37.91-2.fc34 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2020-08-27 16:14:53 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: | |||
Bug Blocks: | 1873206 |
Description
Kalev Lember
2020-08-27 12:00:19 UTC
No issues with $ sudo fedora-review -b 1873108, it build just fine. It didn't spit any errors about the package either. No problems with rpmlint. Thank you! > %global debug_package %{nil} Why? Other rust-* packages ship binaries with debuginfo. >BuildRequires: /usr/bin/appstream-util Use "libappstream-glib". >BuildRequires: /usr/bin/desktop-file-validate Use "desktop-file-utils". Also, you're missing "ExclusiveArch: %{rust_arches}". Not so fast :) I see two issues: - Since you're using bundled dependencies, you'll need to list them all: Provides: bundled(crate(foo)) = version - You'll need to "calculate" the effective license of everything that's getting statically linked into the built binary packages. For example, one of my rust packages that ships a binary: https://src.fedoraproject.org/rpms/rust-bodhi-cli/blob/master/f/rust-bodhi-cli.spec#_29 → list all licenses of bundled dependencies → calculate union → set License tag accordingly (In reply to Artur Iwicki from comment #2) > > %global debug_package %{nil} > Why? Other rust-* packages ship binaries with debuginfo. Hm. Good question -- I thought it was common to not ship debuginfo in rust packages, especially since the example in https://docs.fedoraproject.org/en-US/packaging-guidelines/Rust/ has '%global debug_package %{nil}'. Do you have any ideas what's missing that the debuginfo isn't generated? I am not familiar at all with rust packaging. > >BuildRequires: /usr/bin/appstream-util > Use "libappstream-glib". > >BuildRequires: /usr/bin/desktop-file-validate > Use "desktop-file-utils". Thanks for the suggestion, but I prefer it the way it is. It's more explanatory to explicitly list the binary we need. > Also, you're missing "ExclusiveArch: %{rust_arches}". Yes, I didn't use that because the list is exactly the same as regular Fedora arches. We want the package on all Fedora-supported arches as it's going to be in the default Workstation install. I'll be sure to add it in the future if it's needed to keep the package building, but in the mean time I'd like to not have the ExclusiveArch to avoid surprises. (In reply to Fabio Valentini from comment #3) > Not so fast :) > > I see two issues: > > - Since you're using bundled dependencies, you'll need to list them all: > Provides: bundled(crate(foo)) = version > > - You'll need to "calculate" the effective license of everything that's > getting statically linked into the built binary packages. > > For example, one of my rust packages that ships a binary: > https://src.fedoraproject.org/rpms/rust-bodhi-cli/blob/master/f/rust-bodhi- > cli.spec#_29 > → list all licenses of bundled dependencies > → calculate union > → set License tag accordingly Ahh yes, let me do that! Thanks, Fabio. (In reply to Kalev Lember from comment #5) > (In reply to Fabio Valentini from comment #3) > > Not so fast :) > > > > I see two issues: > > > > - Since you're using bundled dependencies, you'll need to list them all: > > Provides: bundled(crate(foo)) = version > > > > - You'll need to "calculate" the effective license of everything that's > > getting statically linked into the built binary packages. > > > > For example, one of my rust packages that ships a binary: > > https://src.fedoraproject.org/rpms/rust-bodhi-cli/blob/master/f/rust-bodhi- > > cli.spec#_29 > > → list all licenses of bundled dependencies > > → calculate union > > → set License tag accordingly > > Ahh yes, let me do that! Thanks, Fabio. OK, here we go: * Thu Aug 27 2020 Kalev Lember <klember> - 3.37.91-2 - Add provides for bundled rust crates (#1873108) - Clarify licensing for bundled rust crates (#1873108) Spec URL: https://kalev.fedorapeople.org/gnome-tour.spec SRPM URL: https://kalev.fedorapeople.org/gnome-tour-3.37.91-2.fc33.src.rpm Bundled crates are listed correctly now, thanks! However, I'm pretty sure that GPLv3+ doesn't subsume MIT, so the License should be "GPLv3+ and MIT and CC-BY-SA". Side note: The License tag should include the "effective" license whether or not it uses the bundled deps, since it's statically linked either way. Excellent, thanks for checking! Ohh, good point for the "effective" license and statically linked binary, I didn't realize that. Re combining MIT and GPLv3+ in one executable, I'm pretty sure the resulting binary is effectively licensed under the strictest of the two licenses, which in this case is GPLv3+. It would be 'MIT and GPLv3+' when one binary is MIT and another one is GPLv3+, but since they are compiled together into one binary, the "strictest" license wins. See https://fedoraproject.org/wiki/Licensing:FAQ?rd=Licensing/FAQ#How_should_I_handle_multiple_licensing_situations.3F and in particular, point 1 there. I'll quote: <quote> The source code contains some .c files which are GPLv2+ and some other .c files which are BSD. They're compiled together to form an executable. Since some of the files are licensed as GPL, the resulting executable is also GPL. The License tag should read: License: GPLv2+ Note that you do NOT need to list BSD in the License tag, the License tag reflects the resulting, packaged, items in the binary RPM. </quote> Good point, I stand corrected. :) OK, thanks everybody! I went ahead and requested the git repo now. (fedscm-admin): The Pagure repository was created at https://src.fedoraproject.org/rpms/gnome-tour Package important and gnome-tour-3.37.91-2.fc33 and gnome-tour-3.37.91-2.fc34 builds are under way in koji. Err, "imported", not "important" :) |