sunaku/dasht

Mention GPL license?

akavel opened this issue · 4 comments

I noticed this fragment of code, fairly attributed to a GPL project:

# _ _ ____ ____ _ _
# | |__ ___ __ _(_)_ __ / ___| _ \| | ___ ___ __| | ___
# | '_ \ / _ \/ _` | | '_ \ | | _| |_) | | / __/ _ \ / _` |/ _ \
# | |_) | __/ (_| | | | | | | |_| | __/| |___ | (_| (_) | (_| | __/
# |_.__/ \___|\__, |_|_| |_| \____|_| |_____| \___\___/ \__,_|\___|
# |___/
#
# The following SQL queries were derived from snippets found at this URL:
#
# https://github.com/zealdocs/zeal/blob/c6d4bab8bce62d39ceaec7eb853d12ca9c43a361/src/registry/docset.cpp#L268-L283
#
# The file at that URL is distributed under a different software license:

As far as I know, GPL is "viral", in that if a project (such as dasht) uses a fragment of GPL-licensed code, this makes the project a derived work based on the GPL-licensed fragment - and per the GPL license, this requires the derived project to be also distributed under GPL license. I believe you should mention this clearly in the "licensing" section of the dasht readme. I believe it's OK for the rest of the code to be licensed differently, so that any other parts of the code can be reused under that license, if taken without the GPL parts. But any copy of this (dasht) project that contains any GPL code, I believe must still be distributed in accordance with GPL license terms, and marked as such; I believe the license also requires that certain files (e.g. the full text of the GPL license) to be present in the project, see e.g.: https://www.gnu.org/licenses/gpl-faq.en.html#WhyMustIInclude

Adding the author of Zeal, @trollixx, to comment: What do you think about this licensing question? Notably, does an SQL query (which ultimately just reflects the schema of Dash's SQLite3 databases) warrant the replication of the full text of GPL in this project? Here are the queries, for your reference:

Hi @akavel, I have implemented your suggestions in the issue-50 branch. Please check if this suffices.

does an SQL query (which ultimately just reflects the schema of Dash's SQLite3 databases) warrant the replication of the full text of GPL in this project?

Honestly I don't think this is worth the trouble. It's not like you can write the query in a considerably different way, and the code around it is your own. The the database schema in this case is Apple's docset index.

Thanks all. I decided to err on the side of caution and mention + reproduce the GPL in this project. 🙀

Closed by commit 5a741da.