Is fetching source RPMs in linux ports really required?

Dmitry Marakasov amdmi3 at amdmi3.ru
Fri Jun 5 13:33:29 UTC 2009


Hi!

I have concerns with linux ports fetching source RPMs when
PACKAGE_BUILDING is defined. As I understand, that is done to comply
with GPL, however GPL does not strictly require mirroring sources,
and just a not on where t get them would suffice. Here's forward
of message with details.

----- Forwarded message from Dmitry Marakasov <amdmi3 at hades.panopticon> -----

Date: Thu, 4 Jun 2009 21:10:55 +0400
From: Dmitry Marakasov <amdmi3 at hades.panopticon>
To: Boris Samorodov <bsam at ipt.ru>
Cc: ports-committers at FreeBSD.org, cvs-ports at FreeBSD.org,
	freebsd-emulation at FreeBSD.org
Subject: Re: cvs commit: ports/Mk bsd.linux-apps.mk bsd.linux-rpm.mk
	ports/accessibility Makefile ports/accessibility/linux-f10-atk
	Makefile distinfo.i386 pkg-plist ports/archivers Makefile
	ports/archivers/linux-f10-ucl Makefile distinfo.i386 ...

* Boris Samorodov (bsam at ipt.ru) wrote:

> This is used while packaging to pet GPL which ensures that sources
> are available together with binaries.

Is that absolutely necessary? It seems to be that GPL does not require
doing this.

>From GPLv2:
---
3.  You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:

c)  Accompany it with the information you received as to the offer to
distribute corresponding source code. (This alternative is allowed only
for noncommercial distribution and only if you received the program in
object code or executable form with such an offer, in accord with
Subsection b above.)
---

Looks to be our case, as we received program in object code (i386.rpm)
with an information on where to get source code.

>From GPLv3:
---
6. Conveying Non-Source Forms.

d) Convey the object code by offering access from a designated place
(gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server,

> the Corresponding Source may be on a different server (operated by
> you or a third party) that supports equivalent copying facilities,
> provided you maintain clear directions next to the object code
> saying where to find the Corresponding Source.

Regardless of what server hosts the Corresponding Source, you remain
obligated to ensure that it is available for as long as needed to
satisfy these requirements.
---

This is even more clear.

Thus, I believe we can comply with GPL just by providing link to source
download locations of Fedora (through pkg-message I believe).

> This has no impact on users who use ports to install linux
> applications.

It does if user runs tinderbox, I've just stepped into this.
Also it's inconvenient for maintainers as you need to define
PACKAGE_BUILDING for make fetch/makesum.

Also Fedora mirror list may need cleaning:

=> libICE-1.0.4-4.fc10.src.rpm doesn't seem to exist in /tmp/distfiles/rpm/i386/fedora/10.
=> Attempting to fetch from file:///distcache/rpm/i386/fedora/10/.
fetch: file:///distcache/rpm/i386/fedora/10/libICE-1.0.4-4.fc10.src.rpm: No such file or directory
=> Attempting to fetch from http://archives.fedoraproject.org/pub/archive/fedora/linux/core/../releases/10/Everything/i386/os/Packages/.
fetch: http://archives.fedoraproject.org/pub/archive/fedora/linux/core/../releases/10/Everything/i386/os/Packages/libICE-1.0.4-4.fc10.src.rpm: Not Found
=> Attempting to fetch from http://archives.fedoraproject.org/pub/archive/fedora/linux/core/../updates/10/i386/.
fetch: http://archives.fedoraproject.org/pub/archive/fedora/linux/core/../updates/10/i386/libICE-1.0.4-4.fc10.src.rpm: Not Found
=> Attempting to fetch from http://archives.fedoraproject.org/pub/archive/fedora/linux/core/../releases/10/SRPMS/libICE-1.0.4-4.fc10.src.rpm: Not Found
=> Attempting to fetch from http://archives.fedoraproject.org/pub/archive/fedora/linux/core/../updates/10/SRPMS/.
fetch: http://archives.fedoraproject.org/pub/archive/fedora/linux/core/../updates/10/SRPMS/libICE-1.0.4-4.fc10.src.rpm: Not Found
=> Attempting to fetch from http://mirrors.kernel.org/fedora/core/../releases/10/Everything/i386/os/Packages/.
fetch: http://mirrors.kernel.org/fedora/core/../releases/10/Everything/i386/os/Packages/libICE-1.0.4-4.fc10.src.rpm: Not Found
=> Attempting to fetch from http://mirrors.kernel.org/fedora/core/../updates/10/i386/.
fetch: http://mirrors.kernel.org/fedora/core/../updates/10/i386/libICE-1.0.4-4.fc10.src.rpm: Not Found
=> Attempting to fetch from http://mirrors.kernel.org/fedora/core/../releases/10/Everything/source/SRPMS/.
libICE-1.0.4-4.fc10.src.rpm                            253 kB   52 kBps

-- 
Dmitry Marakasov   .   55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
amdmi3 at amdmi3.ru  ..:  jabber: amdmi3 at jabber.ru    http://www.amdmi3.ru

----- End forwarded message -----

-- 
Dmitry Marakasov   .   55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
amdmi3 at amdmi3.ru  ..:  jabber: amdmi3 at jabber.ru    http://www.amdmi3.ru


More information about the freebsd-ports mailing list