I have a project on GitHub, an Nginx module to respond to DNS over HTTPS requests, that I have been using personally without issues for a while now: https://github.com/themagister/Nginx-DOH-Module
I would like to release it with a license like the BSD license, how do I do that? Do I need to fill out any paperwork, do I just say “released under BSD license”? I know this sounds like a silly question, but I can’t find any clear answers anywhere. Thank you!
You add a BSD license file to the project root.
You basically add a LICENSE file to your repository and then add a copyright statement to each file specifying said license.
The FSF has a pretty good write-up on it, focused on the GPL of course, but applies to other licenses as well: https://www.gnu.org/licenses/gpl-howto.html
Github should have a wizard, or something along those lines, to add a license to a repository lacking one (I know there’s an option when creating a new repository).
If you are unfamiliar with the different licenses I’d recommend doing some prior research to make sure the license you pick fits your intention. Changing it later ranges from annoying to borderline impossible (if there are many outside contributions) and is never retroactive.
Thank you, that was very helpful! I was able to easily apply the license I wanted without issue.
Alternatively, you could print the code in paper (including the BSD license), put it in a sealed envelope and mail it to yourself and open it only when needed (as in to prove in court that it was originally in BSD license or something).
GitHub has handy instructions:
My personal favorites are GPLv3 and Apache 2.0 (because patents).
I especially like the copyleft project setup like the Linux kernel where you don’t reassign copyright to a corporation or some other entity, but make it so that contributors, potentially thousands of them can exercise their rights and potentially sue companies that reuse opensource to ship unmaintainable closed source binaries or products.