When looking for a strong open source license for a new project, a license such as the (A)GPLv3 provides a round-all catch-all protection against legal shenanigans such as patent disputes.
Effectively it ensures that software that was intended to contribute to an open society cannot be turned around and used against that goal. (among other things)
The open source community is adamant that discrimination against field is incompatible with the open source idea. Reasons for this range from technical ("where do you draw the line") to idealistic ("it's not really free if not all can use it for whatever"). The FSF has been very clear that a limitation of the use should even be opposed even when it attempts to forbid the use for "really bad thing"s.
However, people have been trying to limit the use of their software for various specific and unspecific things they don't like:
- Military use (e.g. researchers in general, OCB, formerly the GPU project who had to pull the restriction for hosting reasons in 2006).
- Commercial use (Restrict GPLv3 to non-commercial use, Is it possible to restrict GNU GPLv3 to non-commercial use only?).
- And prominently; "Evil" use: json's modified MIT license which adds the line "The Software shall be used for Good, not Evil." Which according to the author had some limited, qualified success.
What I want, and I think also motivates the examples above, is the intent to protect the idea of open source not to the letter, but to its spirit. A way to limit the tools intended for an open society by people or organisations (and specifically their goals) that are incompatible with it -- according to my interpretation as the software's author. For example, the ideology of fascists is utterly incompatible with a free society, so I want to limit the use of free software so that it cannot be used to further such a cause (e.g. the official website of the BNP uses WordPress under a GPLv2 license, so does the Identitäre Bewegung, and many many more).
I understand the general position expressed by the FSF for a general-purpose license like the GPL, if only from a practical standpoint; How do we define what is and isn't considered to fall under a category such as JSON's "Evil"? But the general case doesn't necessarily apply to the special case.
So - How do I license a piece of software under the GPL or something equivalent, while excluding its limitation that no discrimination can be made for its applicability? Specifically I want to list a number of purposes and fields that are not covered by the license for the very reason that they are (ideologically) incompatible with the (perceived) spirit of the license.