Skip to content

Commit

Permalink
Update LGPLv3 interpretation - still not legal advice!
Browse files Browse the repository at this point in the history
  • Loading branch information
GarboMuffin committed Mar 13, 2024
1 parent 62f2a00 commit 5e0d24f
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 6 deletions.
25 changes: 20 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,23 @@ This program is free software: you can redistribute it and/or modify it under th

This program 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 Lesser General Public License for more details.

Our interpretation of the GNU Lesser General Public License is as follows (but we are not lawyers and this is not legal advice):

- Packaged project files generated by the packager include a substantial amount of code from the packager and possibly other LGPL-licensed dependencies, and thus are subject to the terms of the LGPL.
- Packaged project files should be considered an "Application" because they make use of interfaces provided by LGPL-licensed code, for example using subclasses, but are not otherwise based on the LGPL-licensed code.
- Packaged project files can work in a manner similar to static linking. In these instances, the "Minimal Corresponding Source" is the code for the packager itself and other LGPL dependencies. The "Corresponding Application Code" refers to the project that was packaged.
A possible interpretation of the GNU Lesser General Public License
version 3 is as follows. See relevant definitions in section 0 of the
LGPLv3. This is not legal advice.

- A "packaged project file" is an Application generated by the Library.
In general, a packaged project file forms a Combined Work in a manner
similar to static linking.
- The Corresponding Application Code of a packaged project file is the
project file (usually an sb, sb2, or sb3 file). The project file may
be compressed to save space. The project file cannot interact with
the Library except through interfaces provided by the Library and is
not otherwise based on the Library.
- The Minimal Corresponding Source of a packaged project file is the
support code from the Library used to run the packaged project. This
code may be compressed to save space, but links to find source code
are provided inside the packaged project file.
- The Corresponding Application Code can be easily extracted from a
packaged project file. https://turbowarp.github.io/unpackager/ is an
example. The retrieved Corresponding Application Code can then be
inserted back into the Library to create a modified Combined Work.
23 changes: 22 additions & 1 deletion src/packager/brand.js
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,28 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
See <https://www.gnu.org/licenses/> for a copy of the GNU Lesser
General Public license.`,
General Public license.
A possible interpretation of the GNU Lesser General Public License
version 3 is as follows. See relevant definitions in section 0 of the
LGPLv3. This is not legal advice.
- A "packaged project file" is an Application generated by the Library.
In general, a packaged project file forms a Combined Work in a manner
similar to static linking.
- The Corresponding Application Code of a packaged project file is the
project file (usually an sb, sb2, or sb3 file). The project file may
be compressed to save space. The project file cannot interact with
the Library except through interfaces provided by the Library and is
not otherwise based on the Library.
- The Minimal Corresponding Source of a packaged project file is the
support code from the Library used to run the packaged project. This
code may be compressed to save space, but links to find source code
are provided inside the packaged project file.
- The Corresponding Application Code can be easily extracted from a
packaged project file. https://turbowarp.github.io/unpackager/ is an
example. The retrieved Corresponding Application Code can then be
inserted back into the Library to create a modified Combined Work.`,
ACCENT_COLOR: '#ff4c4c',
SOURCE_CODE: 'https://github.com/TurboWarp/packager',
FEEDBACK_PRIMARY: {
Expand Down

0 comments on commit 5e0d24f

Please sign in to comment.