Missing or ambiguous license headers in several files

  • Open
  • quality assurance status badge
Details
2 participants
  • Sharlatan Hellseher
  • Vagrant Cascadian
Owner
unassigned
Submitted by
Vagrant Cascadian
Severity
normal

Debbugs page

Vagrant Cascadian wrote 24 hours ago
(address . bug-guix@gnu.org)
8734fk2ibv.fsf@wireframe
These files contain no license headers, and in some cases, no copyright
holders. Folds who either ddeclared copyright in these files or
otherwise mentioned in the licensing headers are CCed.

doc/package-hello.scm

Arguably, maybe not really sufficiently creative to qualify for
copyright...


gnu/packages/aux-files/findclass.php
* Composer (and thus this file) is distributed under the expat license, and
* ClassMapGenerator.php also contains this notice:
*
* This file is part of Composer.
*
* (c) Nils Adermann <naderman@naderman.de>
* Jordi Boggiano <j.boggiano@seld.be>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*
* This file is copied from the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* To the extent to wich it makes sense, as the author of the extract:
* Copyright © 2020 Julien Lepiller <julien@lepiller.eu>

The LICENSE file is not present ... so what is the exact text of the
"expat" license, as there are many permutations in the wild?


gnu/packages/dotnet.scm

Neither copyright nor license delcaration.


gnu/packages/power.scm

No license declaration, copyright by from Raven Hallsby
<karl@hallsby.com> and Tomas Volf <~@wolfsden.cz>.


gnu/packages/python-graphics.scm

Again, no license declaration, but a list of copyright holders including
Adam Kandur <kefironpremise@gmail.com>, Daniel Meißner
<daniel.meissner-i4k@ruhr-uni-bochum.de>, Morgan Smith
<Morgan.J.Smith@outlook.com>, Adam Faiz <adam.faiz@disroot.org>, Simon
Tournier <zimon.toutoune@gmail.com>, and Sharlatan Hellseher
<sharlatanus@gmail.com>.


live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZ8/XtAAKCRDcUY/If5cW
qrtgAQDs2BSyYEEE8hQaYujDrAOpViqJUqk7g3M//XBC0xWMJAEAp0Oa32Yccm8G
YH0trqAL+cm3nwtXRMO2bOvAP4HoowM=
=cg3A
-----END PGP SIGNATURE-----

Sharlatan Hellseher wrote 21 hours ago
(address . 76932@debbugs.gnu.org)(name . Vagrant Cascadian)(address . vagrant@debian.org)
87senjykpy.fsf@gmail.com
Hi Vagrant,

Toggle quote (9 lines)
> gnu/packages/python-graphics.scm
>
> Again, no license declaration, but a list of copyright holders including
> Adam Kandur <kefironpremise@gmail.com>, Daniel Meißner
> <daniel.meissner-i4k@ruhr-uni-bochum.de>, Morgan Smith
> <Morgan.J.Smith@outlook.com>, Adam Faiz <adam.faiz@disroot.org>, Simon
> Tournier <zimon.toutoune@gmail.com>, and Sharlatan Hellseher
> <sharlatanus@gmail.com>.

May you clarify what exactly do you mean under "no license declaration"?

I see this in the used modules:
Toggle snippet (4 lines)
(define-module (gnu packages python-graphics)
#:use-module ((guix licenses) #:prefix license:)

and

Toggle snippet (8 lines)
> grep license gnu/packages/python-graphics.scm
#:use-module ((guix licenses) #:prefix license:)
(license license:expat))))
(license license:expat)))
(license license:bsd-3)))
(license license:bsd-3)))

Licenses are defined in "guix/licenses.scm"

Toggle snippet (13 lines)
(define bsd-3
(license "Modified BSD"
"http://directory.fsf.org/wiki/License:BSD_3Clause"
"https://www.gnu.org/licenses/license-list#ModifiedBSD"))

;; Some people call it the MIT license. For clarification see:
;; https://www.gnu.org/licenses/license-list.html#Expat
(define expat
(license "Expat"
"http://directory.fsf.org/wiki/License:Expat"
"https://www.gnu.org/licenses/license-list.html#Expat"))

And each package has a valid license in the definition, or maybe it's
something else?

I've initiated python-graphics (similar to crates.graphics and
java-graphics) module to collect and move anything which requires messa
or similar low level bindings for Python. There a lot in python-xyz
which would be moved in this module.

--
Oleg
-----BEGIN PGP SIGNATURE-----

iQJKBAEBCgA0FiEEmEeB3micIcJkGAhndtcnv/Ys0rUFAmfQA5kWHHNoYXJsYXRh
bnVzQGdtYWlsLmNvbQAKCRB21ye/9izStV+zD/sF7a+gV7qHpt35coEo5Erq6Kdz
OgeFZahpF8/oAGrl5rvbMsTRgf7witUC9jqh6wMUH4wN/h8DymC1uLyBO0RDyfTn
dSRA4yWSorwRHiyXGzkXZC67tFmHMj8bSd5MHbbgYmDr0WQLg4sNAiqJtPGSQXPA
VvLiPxX8ZMiBpyf2T/ygDBfV9DqIoMAVTCTgSUoBWv03TvmqzzJhJyLzSFYqpzH6
OXxU1TTZDf+seJcolP15sHI+MrZ9q+Strvu7JhyflJ85231kldHg/EjGZ+sS3z9M
D+FcMktUca64196ED4sIZxdp+9i10LJT71f531gA3VnHT2Mxj+ZF8Li7lmqQ1zQx
z2Rlean82/TKJzANOmdam7plssPOcrFgLrDYakCYbxv41CbdWXWsMriQqKEQjwmp
rBV0ReRu7BVswpL/zD3qZEc+O1Sqnax26dksrR+3h2EvHbquDlDsX2+BWEKdoW/S
2H8GtfG2cmO0QVGEBmuUeH8aCKDnbOQp5IFgbrBxifyR+SsWRhyRGzg3RVGhad7b
2vbEuu5AkKHwdF8FkO+5BzTi0Bi8piEXNvfdkRf2jLTfmJqvcs7BPdlnUzS63WJ4
Xz+Huk+HQukIOv/ElC38rdJkHcy6J+cPJWzgULGn3OBm+xFy6zNrjGtOJiTRtPbY
ruEPLRkKsR64oOrH6A==
=dunk
-----END PGP SIGNATURE-----

Vagrant Cascadian wrote 12 hours ago
87tt7z1kg2.fsf@wireframe
On 2025-03-11, Sharlatan Hellseher wrote:
Toggle quote (10 lines)
>> gnu/packages/python-graphics.scm
>>
>> Again, no license declaration, but a list of copyright holders including
>> Adam Kandur <kefironpremise@gmail.com>, Daniel Meißner
>> <daniel.meissner-i4k@ruhr-uni-bochum.de>, Morgan Smith
>> <Morgan.J.Smith@outlook.com>, Adam Faiz <adam.faiz@disroot.org>, Simon
>> Tournier <zimon.toutoune@gmail.com>, and Sharlatan Hellseher
>> <sharlatanus@gmail.com>.
>
> May you clarify what exactly do you mean under "no license declaration"?
...
Toggle quote (7 lines)
>> grep license gnu/packages/python-graphics.scm
> #:use-module ((guix licenses) #:prefix license:)
> (license license:expat))))
> (license license:expat)))
> (license license:bsd-3)))
> (license license:bsd-3)))
> --8<---------------cut here---------------end--------------->8---
...
Toggle quote (3 lines)
> And each package has a valid license in the definition, or maybe it's
> something else?

Something else indeed!

While each package has a proper (license) listed, the file
"gnu/packages/python-graphics.scm" contains no license declaration for
itself.

Every package definiton in guix is guile code that requires a license in
order to be able to use, study, modify and share that has it's own
license independent of the license of the resulting package it produces.


Most files in guix gnu/packages/*.scm contain a header such as:

;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see http://www.gnu.org/licenses/.

It may seem a bit excessive and verbose to include it in each and every
file, but it is to my understanding, considered best practice, at least
within GNU projects (and also the GPL itself recommends this), to
include the above or equivalent in each file to make it absolutely
clear.

One of the hardest things to track is when some code was grabbed from
some random other project and it refers to a non-existent COPYING or
LICENSING file in project it foind a new home in. Keeping the headers in
the file generally helps with that.


Toggle quote (5 lines)
> I've initiated python-graphics (similar to crates.graphics and
> java-graphics) module to collect and move anything which requires messa
> or similar low level bindings for Python. There a lot in python-xyz
> which would be moved in this module.

If you are copying package definitions from other existing modules with
the above licensing declaration, then the licensing headers for the file
itself definitely should also be copied. :)


Hope that clarifies what I am getting at!


live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZ9CDPQAKCRDcUY/If5cW
qkqSAQDTEiWa1/ohurDmg6jsA4vxpckOO7qMJQQJSCJ3AqziJQEAh1tk6nEYloJz
XxcXzqB822NeuKvYVHOp4ea/1gBsswA=
=UPyE
-----END PGP SIGNATURE-----

Sharlatan Hellseher wrote 8 hours ago
Missing or ambiguous license headers in several files
(address . 76932@debbugs.gnu.org)
877c4vqj4x.fsf@gmail.com
Hi,

I've added missing license header for packages/python-graphics in

1b7fb5e3f9 * gnu: packages/python-graphics: Add missing license file header.

--
Oleg
-----BEGIN PGP SIGNATURE-----

iQJKBAEBCgA0FiEEmEeB3micIcJkGAhndtcnv/Ys0rUFAmfQvZ4WHHNoYXJsYXRh
bnVzQGdtYWlsLmNvbQAKCRB21ye/9izStaZDD/9xhaSRapfu7P278s9/v/etqGDw
enB3XETRWf21XjwwXDhuxpJem+RMlhySVK6BWgFZltlfIcvMT0SYDZr32A8XDGY6
1wGFc2SbIZLZnmgTDKOtRBxRdGp9CAiTbz9SeDHEhVYDjF/FnEIjAOZ/A74pAQi+
vPEpDVpGyCS9JqcV/Z3PdjdkmfvQOwIY0XQ/V7y6L9d5nBfMl/nfbcvwF6XUhcBV
Lyq1a9oWFQI5GQ1GfK8QJ63TEnLPGkPer2Xq5yspoWpWu3k9uPAabWAZwjvZ9G47
9X/WJjZj8yijCrx1HXYbHKj4jQ+Ztmi6F0ODefyVkdtLmZGnbKwMJn+IF4WnzUjY
irVMMY0NrdBuNa5a5vqknDKvubjfuTP+I1zvakY+m/doGFKGLYHdO0uG6GTl4p/t
I8+TSCcw6MbVQETuQsVTiz7XZ+4qyMW+u6w3XDBEyEMrA5MoqV6vVWV/N5d5TkPP
FlKHV+ULNvJf/y/AXCnBEVAyLYwL3Tr5ChPlOYvUNfH1OjJCM7Y0Lr85pSFzausC
OQA0uumSLX7C7/lwS0OyjDup8nLQNoJrX6b/Xju9lYY3N/k5xd4C+/FV091bkH2G
+TJf+upkWh3T9p2vhFqZ97HoMnJEbKCiYqQJAxNv9uNdC+LNVO6tax+ckk7vIgA/
HvHxQwsKlDUM5+2ybA==
=oDRw
-----END PGP SIGNATURE-----

?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 76932@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 76932
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help