Possible redundant section in the copyright file or mistake
agherzan opened this issue · 6 comments
The copyright file currently partitions the files provided in this repo as follows:
Files: brcm/bcm43xx*.fw brcm/brcmfmac*.bin
Copyright: Broadcom Corporation
License: binary-redist-Broadcom-wifi
Files: brcm/BCM-0bb4-0306.hcd debian/config/brcm80211/*/*43430*
debian/config/brcm80211/*/*43455*
Copyright: 2018, Cypress Semiconductor Corporation
License: binary-redist-Cypress
Files: debian/config/brcm80211/*/*43436* debian/config/brcm80211/*/*43456*
Copyright: Synaptics
License: Synaptics
Now, matching this to actual files, we end up with:
ls -al ../../../debian/config/brcm80211/brcm/bcm43xx*.fw ../../../debian/config/brcm80211/brcm/brcmfmac*.bin
ls: cannot access '../../../debian/config/brcm80211/brcm/bcm43xx*.fw': No such file or directory
debian/config/brcm80211/brcm/brcmfmac43430-sdio.bin
debian/config/brcm80211/brcm/brcmfmac43436-sdio.bin
debian/config/brcm80211/brcm/brcmfmac43436s-sdio.bin
debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin
debian/config/brcm80211/brcm/brcmfmac43456-sdio.bin
ls -al brcm/BCM-0bb4-0306.hcd ../../../debian/config/brcm80211/*/*43430* ../../../debian/config/brcm80211/*/*43455*
ls: cannot access 'brcm/BCM-0bb4-0306.hcd': No such file or directory
debian/config/brcm80211/brcm/brcmfmac43430-sdio.bin
debian/config/brcm80211/brcm/brcmfmac43430-sdio.clm_blob
debian/config/brcm80211/brcm/brcmfmac43430-sdio.raspberrypi,3-model-b.txt
debian/config/brcm80211/brcm/brcmfmac43430-sdio.raspberrypi,model-zero-w.txt
debian/config/brcm80211/brcm/brcmfmac43430-sdio.txt
debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin
debian/config/brcm80211/brcm/brcmfmac43455-sdio.clm_blob
debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-a-plus.txt
debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt
debian/config/brcm80211/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt
debian/config/brcm80211/brcm/brcmfmac43455-sdio.txt
debian/config/brcm80211/cypress/cyfmac43430-sdio.bin
debian/config/brcm80211/cypress/cyfmac43430-sdio.clm_blob
debian/config/brcm80211/cypress/cyfmac43455-sdio.clm_blob
debian/config/brcm80211/cypress/cyfmac43455-sdio-minimal.bin
debian/config/brcm80211/cypress/cyfmac43455-sdio-standard.bin
ls -al ../../../debian/config/brcm80211/*/*43436* ../../../debian/config/brcm80211/*/*43456*
debian/config/brcm80211/brcm/brcmfmac43436-sdio.bin
debian/config/brcm80211/brcm/brcmfmac43436-sdio.clm_blob
debian/config/brcm80211/brcm/brcmfmac43436-sdio.txt
debian/config/brcm80211/brcm/brcmfmac43436s-sdio.bin
debian/config/brcm80211/brcm/brcmfmac43436s-sdio.txt
debian/config/brcm80211/brcm/brcmfmac43456-sdio.bin
debian/config/brcm80211/brcm/brcmfmac43456-sdio.clm_blob
debian/config/brcm80211/brcm/brcmfmac43456-sdio.txt
As you can see, the files in the first section, Copyright: Broadcom Corporation
, are all included later in either Copyright: 2018, Cypress Semiconductor Corporation
or Copyright: Synaptics
.
Assuming that this is meant to be based/using the Debian copyright file format (https://dep-team.pages.debian.net/deps/dep5/#files), it looks like the first paragraph is redundant because:
Multiple Files paragraphs are allowed. The last paragraph that matches a particular file applies to it.
So given that all the files matched by the first paragraph are matched by later defined paragraphs, makes the first paragraph, in theory, either redundant, a mistake or the assumptions here are wrong (file format, semantics, etc).
@pelwell would you be able to clarify this? I think we should clarify the actual copyright
file as I would expect it to be a source of confusion (certainly is for me).
In your first ls
command, where did debian/config/brcm80211
come from?
Once the upstream tarball is extracted, the first paragraph will apply to files which aren't covered by later licenses.
So using this repository (https://github.com/RPi-Distro/firmware-nonfree, no upstream tarball), the first files copyright
statement is: Files: brcm/bcm43xx*.fw brcm/brcmfmac*.bin
. This matches the following files:
brcm/brcmfmac43430-sdio.bin
brcm/brcmfmac43436-sdio.bin
brcm/brcmfmac43436s-sdio.bin
brcm/brcmfmac43455-sdio.bin
brcm/brcmfmac43456-sdio.bin
As an example, the second files copyright statement is: Files: brcm/BCM-0bb4-0306.hcd debian/config/brcm80211/*/*43430*
. This matches the following files:
brcm/brcmfmac43430-sdio.bin
brcm/brcmfmac43430-sdio.clm_blob
brcm/brcmfmac43430-sdio.raspberrypi,3-model-b.txt
brcm/brcmfmac43430-sdio.raspberrypi,model-zero-w.txt
brcm/brcmfmac43430-sdio.txt
cypress/cyfmac43430-sdio.bin
cyfmac43430-sdio.clm_blob
In this example, brcm/brcmfmac43430-sdio.bin
is matched in both cases.
As an extra note, it seems like the copyright file uses both relative paths (to the file itself) and relative paths to the root of the repository. Is there any benefit in that? Or maybe that's the root of this confusion.
All paths are relative to the root of the repo.
@XECDesign if that is the case, what are these paths pointing to?
- brcm/bcm43xx*.fw
- brcm/brcmfmac*.bin
- brcm/BCM-0bb4-0306.hcd
Those paths don't exist at the root of the repo.
In this case, it refers to the files from the upstream tarball. The notion is inherited from debian's packaging: https://salsa.debian.org/kernel-team/firmware-nonfree/-/blob/master/debian/copyright
That is clear now. So basically, when using this repository directly (not in conjunction with the upstream tarball), the first section doesn't match anything.