Repository navigation
GPL'd Program includes GPLv3-incompatible library. #1139
Description
Activity
Describe the bug AttorneyOnline client is released under GPLv3, meaning the entire program must be free software. However, the libraries libbass/libbassopus are proprietary/non-free and incompatible with the GPLv3.
This means that they must be removed and replaced by open source/free software libraries.
miniaudio is a good solution https://miniaud.io/
I made a branch that used QtMultimedia for audio before but it was dropped because looping audio didn't work correctly.
I made a branch that used QtMultimedia for audio before but it was dropped because looping audio didn't work correctly.
You could pretty easily get mini audio to work with AO2. I don't mind looking into it if everyone is on board with swapping to it to comply with AGPL. Looping audio can work. This has no external dependencys.
The program itself does not contain bass.dll, it links to bass.dll, which is quite different. The only place where this is a very technical, very boring legal detail matters for is distribution. If we nuked every .zip file from the Releases tab we'd be perfectly complaint, but I think that's kind of missing the point.
There exists a "fix" to this which is adding an exception in the license, but it'd require all living contributors to agree to which is a long, boring and frankly pointless process.
In any case, I agree with sD to replace it with Qt built-ins if possible to reduce external deps and yes technically make distribution legally compliant, but I'd open that as a separate issue.
Reacted by SyntaxNyahThe program itself does not contain bass.dll, it links to bass.dll, which is quite different. The only place where this is a very technical, very boring legal detail matters for is distribution. If we nuked every .zip file from the Releases tab we'd be perfectly complaint, but I think that's kind of missing the point.
There exists a "fix" to this which is adding an exception in the license, but it'd require all living contributors to agree to which is a long, boring and frankly pointless process.
In any case, I agree with sD to replace it with Qt built-ins if possible to reduce external deps and yes technically make distribution legally compliant, but I'd open that as a separate issue.
Yes that works.
- addedconversionIssues related to converting a legacy systemIssues related to converting a legacy system
on Jun 23, 2026 I made a branch that used QtMultimedia for audio before but it was dropped because looping audio didn't work correctly.
maybe that branch can be revivified, then we open the bug report and find a solution for that error, looking on Stackoverflow, maybe we'd want the QMediaPlaylist plugin instead?
If we also avoided neccessary linkage to uncompliant binaries, we could also consider publishing a Flatpak Application, but that might be a discussion for another issue.
The program itself does not contain bass.dll, it links to bass.dll, which is quite different. The only place where this is a very technical, very boring legal detail matters for is distribution. If we nuked every .zip file from the Releases tab we'd be perfectly complaint, but I think that's kind of missing the point.
(Actually, the official .AppImage for the GNU/Linux client contains libbass in it. The .exe might as well but I haven't checked.)
I'm assuming that the executables for all the clients aren't released under a different license than the GPLv3 since like you said that'd require consent from every contributor.In any case, I agree with sD to replace it with Qt built-ins if possible to reduce external deps and yes technically make distribution legally compliant, but I'd open that as a separate issue.
Well the issue I opened here requests that libbass be replaced by something libre/open-source, whatever
that may be. If it can run with only Qt built-ins that'd be really awesome...
Describe the bug
AttorneyOnline client is released under GPLv3, meaning the entire
program must be free software. However, the libraries libbass/libbassopus
are proprietary/non-free and incompatible with the GPLv3.
This means that they must be removed and replaced by
open source/free software libraries.