License
easywall is under the GNU General Public License, version 3. The full text is in the repository and at gnu.org. This page is what it means in practice; it is not legal advice, and where the two disagree the licence is what counts.
Running it
| On your own machine | Yes. No conditions at all |
| At work, on company hardware | Yes. Commercial use is use |
| On a server other people reach | Yes. GPL-3.0 is not the AGPL — serving something over a network is not distribution |
| Modified, for yourself | Yes. A change you keep is yours and nobody has to see it |
| Paying nothing, telling nobody | Yes |
Nothing on that list creates an obligation. That is the whole of it for almost everybody who reads this page.
Handing it to somebody else
Obligations begin at distribution — a binary, a package, a container image, a modified source tree, anything that leaves your hands.
| You give them | You also owe them |
|---|---|
| An unmodified binary or package | The corresponding source, and this licence with it |
| A build with your changes in it | The same, including your changes, under GPL-3.0 |
| A container image with easywall in it | The same. An image is a distribution of what is inside it |
And in every case the copyright notices and the licence text stay where they are. You may charge for the distribution itself; the source that comes with it is not something you get to withhold or sell separately.
A network service is not distribution. Running a modified easywall for other people to use over HTTP does not oblige you to publish anything. That obligation is the AGPL’s, and easywall is not under it.
Contributing
A pull request is contributed under GPL-3.0, the same as the rest. There is no contributor licence agreement and nothing to sign — see Contributing.
Why this licence
easywall puts a web interface in front of a machine’s packet filter. Anyone running it is trusting the code with the one thing standing between their host and the network. A licence that lets a modified copy be handed on with the modification hidden is the wrong licence for that. GPL-3.0 means the version somebody hands you is a version you can read.