Code Monkey home page Code Monkey logo

Comments (2)

jawnsy avatar jawnsy commented on June 3, 2024

Hey Aleksa,

What are your goals for this project? If you're looking for adoption/usage, a permissive license like Apache is ideal (especially because, as you note, it's the same license used by OCI, Kubernetes, Docker, and much of the container ecosystem today).

On the other hand, I can understand the desire to have people contribute back to your project; a copyleft license encourages collaboration on the original project. There are a few prominent GPL-licensed codebases that were way better than their BSD counterparts (things like coreutils), so there's something to be said for that as well.

I'd like to suggest the idea that people who want to contribute will do so, regardless of license. Even with a copyleft license, people that don't want to contribute will likely just look for a different project instead. Red Hat contributes back to the community because it's "the right thing to do", but even excluding the moral/ethical argument, it's just the smart thing to do: not contributing back means you'll likely have to deal with messy merge conflicts later down the road.

But whichever way you go, I would recommend against dual-licensing, just because it makes things confusing (and risky for enterprise developers - there might be a general "Apache is OK" sentiment, but things get murky with any non-standard arrangement, especially since GPL is a dirty word in many organizations).

Good luck! I know choosing a license is really tough 😄

Cheers,

Jonathan

from umoci.

cyphar avatar cyphar commented on June 3, 2024

What are your goals for this project? If you're looking for adoption/usage, a permissive license like Apache is ideal (especially because, as you note, it's the same license used by OCI, Kubernetes, Docker, and much of the container ecosystem today).

Which makes me sad 😢. But the main reason why it is currently Apache licensed is that I'm hoping that (at the very least) the packages under oci/** will eventually become part of the OCI image-tools repository so that I don't need to maintain it forever.

On the other hand, I can understand the desire to have people contribute back to your project; a copyleft license encourages collaboration on the original project.

That's not really my main reason for using copyleft. I personally strongly believe that permissive licensing is dangerous to free software, because it allows for proprietary forks to fracture the userbase. Now, that doesn't stop me from contributing to the OCI (obviously) but when discussing licensing my own projects, I have to think about it a lot more.

If I didn't intend for oci/** to be merged into the actual OCI I would probably just go with GPLv3. It's what a lot of openSUSE and SUSE projects use, and also what I personally feel is the best license for free software.

Red Hat contributes back to the community because it's "the right thing to do"

So does SUSE. 😉 But that doesn't change the fact that GPL is still a very good license for other reasons (it ensures that users will always have freedom when using the software).

from umoci.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.