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.

  • Julian
    link
    fedilink
    English
    655 months ago

    MIT license is useful for a lot of stuff that is traditionally monetized. Game development tools, for example. I don’t think a game engine could become very popular if you had to release your game’s source code for free.

    • bjorney
      link
      fedilink
      535 months ago

      Literally every library with any traction in any field is MIT licensed.

      If the scientific python stack was GPL, then industry would have just kept paying for Matlab licenses

    • @renzevOP
      link
      English
      165 months ago

      That’s a good point! The FSF also developed LGPL for this reason (their particular example was something like OGG that is meant to displace the proprietary (back then) MP3), but you example with game engines is also a good one!

      • @woelkchen
        link
        25 months ago

        LGPL

        Depending on the provisions of a console’s SDK, that may be not an option because you may be able to deduct some of the SDK’s working from the released source code and that may violate the NDA.

          • @woelkchen
            link
            15 months ago

            Sure but that attitude doesn’t help game developers looking to make a living selling console games. Godot with its licensing, helped by Unity messing up big time, is about to become the entry level game engine… The engine universities and self-taught game developers will likely use it as learning tool. Godot got a big influx of donations even though it’s under a permissive license. Small indies don’t care to modify the core engine anyway. Most GZDoom games on Steam are living proof of that. Game logic in separate scripts isn’t covered by the interpreter’s license anyway.

            • @[email protected]
              link
              fedilink
              05 months ago

              Godot got a big influx of donations even though it’s under a permissive license.

              Many opensource game engines received donations when Unity tried to rape gamedevs.

              Game logic in separate scripts isn’t covered by the interpreter’s license anyway.

              That’s why I said game engine can be LGPL. Even GPL, if game logic is loaded separately.

              • @woelkchen
                link
                05 months ago

                Game engines can’t be LGPL because of console SDK NDAs. At best MPL.

    • @marcos
      link
      -45 months ago

      The same way, if the BSD internet stack was GPL, we wouldn’t have an internet at all.

        • @marcos
          link
          15 months ago

          Yep, different licenses have different consequences.

          • @[email protected]
            link
            fedilink
            15 months ago

            Because companies weren’t sharing modifications under network stack that was originally BSD. I think the only advantage *BSD stack has over Linux is kqueue, which notifies also about amount of avaliable bytes in socket, what epoll doesn’t do.