nalim icon indicating copy to clipboard operation
nalim copied to clipboard

Separate GPL and non-GPL part?

Open trustin opened this issue 3 years ago • 0 comments

The entire agent and public API of nalim are licensed under GPLv2 and thus it is impossible for most organization to use it as a compile time dependency.

It'd be nice if we could separate nalim into two components:

  • nalim-api - The public API licensed under more permissive license.
    • e.g. @Library, @Link, @Code, etc
  • nalim-agent - All other stuff that must be licensed under GPLv2 due to JVMCI usage.
    • e.g. Linker, Agent, etc.

A user who calls Linker.linkClass() will still have the licensing problem, but the user can avoid it by specifying the list of the classes in the agent options instead of calling Linker.linkClass(). (Please correct me if this still causes any licensing issues.)

We could also improve the nalim agent to link the classes automatically, most likely by 1) intercepting the class-loading process or 2) looking for a certain file in a JAR.

trustin avatar Feb 12 '23 10:02 trustin