Hey fellow Linux enthusiasts.

I’m inching closer to releasing my program for Linux. I’ll go into details on what the program is when I release it, as it’s not really relevant to this question (IMHO).

Anyway, here are my prerequisites:

  • the program will be free. I will accept donations, but the program will be free to download and use.
  • open source.
  • I’m happy for others to use my code, as long as I’m credited.
  • I do not wish to allow others to use my code in commercial applications (as there will be mobile versions later, and I don’t want clones selling it for money, as the mobile versions will also be free.

I’m looking for advice on the best code license to choose, based on my requirements. I’d also like it if my choice of license didn’t prohibit my program from potentially being included in package managers.

I’m grateful for any advice. Thank you.

Edit

Thanks for the replies everyone. I’ve decided to not let my concerns overcome the most important thing of releasing the project as fully open source.

Just going to go with GPLv3 and not worry about the clones that will happen regardless of the license type, if the program becomes popular.

Thank you all for your insight and for helping me come to what I believe to be the best option.

  • @pmk
    link
    4
    edit-2
    1 year ago

    Of the points, not allowing others to make money from a fork could be difficult. You can ensure that a fork stays free, but iirc it’s hard to stop anyone making money. Although I’m hesitant to suggest this, you might want to look at the license for Gnuplot (it’s not gnu as in GNU), which is imho the least free license commonly called “free software”, it effectively prevents forked projects. In which case another question might be, do you want it to be free software? Is the gratis aspect more important?