Bug #3515
license confusion in OsmoTRX
50%
Description
OsmoTRX is a fork of the OpenBTS transceiver. OpenBTS was licensed under AGPLv3-or-later by the FSF.
This is also what COPYING indicates, and what most source code files state.
However, I see the following deviations from this:- AUTHORS (we better remove that completely as we don't maintain it)
- CommonLibs/trx_vty.c where it is a mistake. Should be fixed.
- Transceiver52M/Transceiver.cpp (states GPLv3 even in upstream)
- Transceiver52M/Transceiver.h (states GPLv3 even in upstream)
As for the Transceiver.{h,cpp} it seems like an oversight by the original creators. However, as GPLv3 is compatible with AGPLv3, the entire work of osmo-trx consisting of GPLv3-or-later and AGPLv3-or-later becomes AGPLv3-or-later.
We could change Transceiver.{h,cpp} to AGPLv3-or-later to avoid confusion among users... however, this would then mean people couldn't merge any fixes we'd make back into OpenBTS as you can only import GPLv3-or-layer code in an AGPLv3-or-layer project, but not the other way around.
So let's keep Transceiver.* as-hs but fix trx_vty and remove AUTHORS.
History
#2 Updated by pespin 6 months ago
- Status changed from New to Feedback
- Assignee changed from pespin to laforge
- % Done changed from 0 to 50
I submitted patches here:
https://gerrit.osmocom.org/c/osmo-trx/+/14587 Remove AUTHORS file
https://gerrit.osmocom.org/c/osmo-trx/+/14588 trx_{vty,rate_ctr}: Set proper license AGPLv3+
I also found a lot of files are licensed as LGPLv2.1-or-later, what to do with those?
Transceiver52M/arch/arm/convert_neon.S
Transceiver52M/arch/arm/convert.c
Transceiver52M/arch/arm/convolve.c
Transceiver52M/arch/arm/scale.c
Transceiver52M/arch/arm/mult.c
Transceiver52M/arch/arm/scale_neon.S
Transceiver52M/arch/common/convert_base.c
Transceiver52M/arch/common/convolve_base.c
Transceiver52M/arch/arm/mult_neon.S
Transceiver52M/arch/arm/convolve_neon.S
Transceiver52M/arch/x86/convert.c
Transceiver52M/arch/x86/convert_sse_3.h
Transceiver52M/arch/x86/convert_sse_3.c
Transceiver52M/arch/x86/convolve_sse_3.c
Transceiver52M/arch/x86/convert_sse_4_1.c
Transceiver52M/arch/x86/convolve.c
Transceiver52M/arch/x86/convert_sse_4_1.h
Transceiver52M/arch/x86/convolve_sse_3.h
Transceiver52M/Resampler.cpp
Transceiver52M/Resampler.h
Transceiver52M/osmo-trx.cpp
tests/CommonLibs/PRBSTest.cpp
debian/copyright
CommonLibs/PRBS.h
CommonLibs/Utils.h
CommonLibs/Utils.cpp
- Add SPDX tags to files: "SPDX-License-Identifier: AGPL-3.0+"
Re-assigning to laforge to check steps to proceed.
#3 Updated by laforge 5 months ago
- Status changed from Feedback to Stalled
- Assignee changed from laforge to pespin
pespin wrote:
I also found a lot of files are licensed as LGPLv2.1-or-later, what to do with those?
keep them as they are, possibly adding SPDX identifiers. LGPLv2.1-or-later is luckily compatible with AGPLv3-or-later
#4 Updated by pespin 5 months ago
- Status changed from Stalled to In Progress
I'm right now adding SPDX tags and fixing some small wrong bits in debian/copyright I found while looking at files.
I found file CommonLibs/PRBS.h to be LGPL-v2.1+ but not listed as such in debian/copyright. It seems to be owned by ipse , written in 2017. That file afaict seems to not be used at all in osmo-trx, only by tests/CommonLibs/PRBSTest.cpp. ipse can you confirm? If it's not used we can simply drop it from osmo-trx in order to shrink osmo-trx already convoluted code base, unless there's some plan to use it in the future...
#5 Updated by pespin 5 months ago
Related patches submitted:
https://gerrit.osmocom.org/c/osmo-trx/+/14888 debian/copyright: Remove non existent radioInterfaceDiversity.cpp from list
https://gerrit.osmocom.org/c/osmo-trx/+/14889 debian/copyright: Update wrong paths in license list
https://gerrit.osmocom.org/c/osmo-trx/+/14890 debian/copyright: Add missing file Utils.* to LGPL-2.1+ list
https://gerrit.osmocom.org/c/osmo-trx/+/14891 cosmetic: Fix trailing whitespace in several files
https://gerrit.osmocom.org/c/osmo-trx/+/14892 Add SPDX annotation
Assigning task to ipse so he can answer. Please re-assign to me once you do so.
#7 Updated by laforge 9 days ago
- Status changed from In Progress to Resolved
I remember from the original discussion that the PRBS_Test was the only user, see Ib5331ba5d0b5819929541686fdd87905e2177b74
However, I don't see any reason why we should remove it, sorry. If pespin really minds too much, it could be moved to a separate directory.