While there are no development news right now (there will be soon), here’s a more informative blog post about Nirvati:
Nirvati is an open source project, but we still have certain opinions about how we open source stuff. As a community project, we have no incentives to keep stuff closed source, but there are still some opinions that we have.
Nearly all code we write is licensed under a copyleft license.
This means that if anyone modifies Nirvati in any way, they can not sell (or share) that without also giving users the source code.
The people purchasing/downloading it can then also share the code of the modified version with anyone, and we can then merge potential improvements back into Nirvati.
This forces everyone who modifies Nirvati to give improvements back to us.
Giving back financially
As of today, Nirvati forwards 65$/month of our donations to other open source projects we are built on top of. It’s not much, but it’s still a considerable part of the donations we receive.
We are doing this because when you donate, you want to help sustain Nirvati. And these projects are doing so much to make Nirvati possible, but development tools often are under-appreciated and don’t get much attention (Maybe you’ve heard of what happened with OpenSSL in 2014).
Supporting these projects financially, even by a small amount, shows our appreciation and helps the underlying core components that make Nirvati possible receive updates.
Whenever we encounter issues in any tool that’s related to Nirvati development, we try to contact the developers to get this issue fixed or fix it ourselves.
Here are some recent examples:
- GitLab: Fix license reports in merge requests
- GitLab: Add RISC-V support for runners
- Nitro: Improve external URL handling with Deno (This was part of fixing an issue with Nuxt.js)
- Rollup: Reported an issue with external module handling
On this issue, we received excellent and very fast help from the Rollup team. Thanks to them for their hard work on this project! We also increased the donation amount by $5/month after this.
- BTCPayServer: Improve handling of HTTPS domains
- KDE Konsole (Part of my Nirvati development environment): Fix a crash when an emoji is printed
This is another part of our approach to open source. While we could keep all changes we make internal, we instead ask upstream maintainers to include the code in the official releases so everyone benefits from it.
If open source always worked this way, and if everyone who is using code and has the ability to contribute back would actually do that, open source would be a lot better today.
In most cases, the maintainers chose a non-copyleft license. This is certainly useful for getting more people to use your software, but sadly, a lot of people in these cases don’t give back anything.
If you use any open source project daily, we recommend you support the maintainers. Everything can help:
- Financial donations
- Contributing code
- Helping other users
- Writing documentation
The open source ecosystem depends on many people helping, and I’m incredibly grateful for all the help Nirvati is already receiving from the community.
I hope this post helped you understand how we at Nirvati view open source today, and maybe even enouraged you to support an open source project. I’m sure everybody uses some FOSS project daily, and if it’s a program you actively use (not as part of a commercial app, some examples are LibreOffice, Firefox, any app from F-Droid, KDE, Debian, …), please try helping the maintainers.