Context:

Permissive licenses (commonly referred to as “cuck licenses”) like the MIT license allow others to modify your software and release it under an unfree license. Copyleft licenses (like the Gnu General Public License) mandate that all derivative works remain free.

Andrew Tanenbaum developed MINIX, a modular operating system kernel. Intel went ahead and used it to build Management Engine, arguably one of the most widespread and invasive pieces of malware in the world, without even as much as telling him. There’s nothing Tanenbaum could do, since the MIT license allows this.

Erik Andersen is one of the developers of Busybox, a minimal implementation of that’s suited for embedded systems. Many companies tried to steal his code and distribute it with their unfree products, but since it’s protected under the GPL, Busybox developers were able to sue them and gain some money in the process.

Interestingly enough, Tanenbaum doesn’t seem to mind what intel did. But there are some examples out there of people regretting releasing their work under a permissive license.

  • GreyEyedGhost@lemmy.ca
    link
    fedilink
    arrow-up
    6
    ·
    6 months ago

    I’ll throw my opinions in here.

    If you’re publishing a standard or a reference application, a permissive license makes sense. What better way to guarantee compatibility than being able to use the reference code in your product. This is what happened with the TCP/IP stack, and it was used in its original form in Windows for years.

    If you’re making something that you want to build a community around, something more akin to the GPL may be more aligned with your goals. The nice part is, you can include MIT licensed projects as part of your GPL project. This means there is nothing stopping you from building your standard with a MIT license while building your community-driven application using GPL, maximizing the reach of your standard while reducing the risk to your community.

    Note that either option opens you to EEE (Embrace, Extend, Extinguish), the GPL option just takes an extra step (clean room implementation of a published standard).