aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/flatpages/help.md7
-rw-r--r--app/flatpages/help/non_free.md70
-rw-r--r--app/public/static/contentdb_flag_blacklist.pngbin0 -> 28411 bytes
-rw-r--r--app/templates/macros/packagegridtile.html1
-rw-r--r--app/templates/packages/view.html7
5 files changed, 80 insertions, 5 deletions
diff --git a/app/flatpages/help.md b/app/flatpages/help.md
index 2bdd72c..784adf7 100644
--- a/app/flatpages/help.md
+++ b/app/flatpages/help.md
@@ -2,14 +2,19 @@ title: Help
## Content
+Policies and user help.
+
+* [Content Ratings and Flags](content_flags)
+* [Non-free Licenses](non_free)
* [Package Tags](package_tags)
* [Ranks and Permissions](ranks_permissions)
-* [Content Ratings and Flags](content_flags)
* [Reporting Content](reporting)
* [Top Packages Algorithm](top_packages)
## Developers
+Various APIs.
+
* [API](api)
* [Metrics](metrics)
* [Creating Releases using Webhooks](release_webhooks)
diff --git a/app/flatpages/help/non_free.md b/app/flatpages/help/non_free.md
new file mode 100644
index 0000000..b2f3e68
--- /dev/null
+++ b/app/flatpages/help/non_free.md
@@ -0,0 +1,70 @@
+title: Non-free Licenses
+
+## What are Non-Free, Free, and Open Source licenses?
+
+A non-free license is one that does not meet the
+[Free Software Definition](https://www.gnu.org/philosophy/free-sw.en.html)
+or the [Open Source Definition](https://opensource.org/osd).
+ContentDB will clearly label any packages with non-free licenses,
+and they will be subject to limited promotion.
+
+## How does ContentDB deal with Non-Free Licenses?
+
+Minetest is free and open source software, and is only as big as it is now
+because of this. It's pretty amazing you can take nearly any published mod and modify it
+to how you like - add some features, maybe fix some bugs - and then share those
+modifications without worry of legal issues. The project, itself, relies on open
+source contributions to survive - if it were non-free, then it would have died
+when celeron55 lost interest.
+
+If you have played nearly any game with a large modding scene, you will find
+that most mods are legally ambiguous. A lot of them don't even provide the
+source code to allow you to bug fix or extend as you need.
+
+Limiting the promotion of problematic licenses helps Minetest avoid ending up in
+such a state. Licenses that prohibit redistribution or modification are
+completely banned from ContentDB and the Minetest forums.
+
+Not providing full promotion on ContentDB, or not allowing your package at all,
+doesn't mean you can't make such content - it just means we're not going to help
+you spread it.
+
+## What's so bad about licenses that forbid commercial use?
+
+Please read [reasons not to use a Creative Commons -NC license](https://freedomdefined.org/Licenses/NC).
+Here's a quick summary related to Minetest content:
+
+1. They make your work incompatible with a growing body of free content, even if
+ you do want to allow derivative works or combinations.
+
+ This means that it can cause problems when another modder wishes to include your
+ work in a modpack or game.
+2. They may rule out other basic and beneficial uses which you want to allow.
+
+ For example, CC -NC will forbid showing your content in a monetised YouTube
+ video.
+3. They are unlikely to increase the potential profit from your work, and a
+ share-alike license serves the goal to protect your work from unethical
+ exploitation equally well.
+
+## How can I show non-free packages in the client?
+
+Non-free packages are hidden in the client by default, partly in order to comply
+with the rules of various Linux distributions.
+
+Users can opt-in to showing non-free software, if they wish:
+
+1. In the main menu, go to Settings > All settings
+2. Search for "ContentDB Flag Blacklist".
+3. Edit that setting to remove `nonfree, `.
+
+<figure class="figure my-4">
+ <img class="figure-img img-fluid rounded" src="/static/contentdb_flag_blacklist.png" alt="Screenshot of the ContentDB Flag Blacklist setting">
+ <figcaption class="figure-caption">Screenshot of the ContentDB Flag Blacklist setting</figcaption>
+</figure>
+
+In the future, [the `platform_default` flag](/help/content_flags/) will be used to control what content
+each platforms shows - Android is significantly stricter about mature content.
+You may wish to remove all text from that setting completely, leaving it blank,
+if you wish to view all content when this happens. Currently, [mature content is
+not permitted on ContentDB](/policy_and_guidance/).
diff --git a/app/public/static/contentdb_flag_blacklist.png b/app/public/static/contentdb_flag_blacklist.png
new file mode 100644
index 0000000..1e38e22
--- /dev/null
+++ b/app/public/static/contentdb_flag_blacklist.png
Binary files differ
diff --git a/app/templates/macros/packagegridtile.html b/app/templates/macros/packagegridtile.html
index 3fb39a8..3066194 100644
--- a/app/templates/macros/packagegridtile.html
+++ b/app/templates/macros/packagegridtile.html
@@ -15,7 +15,6 @@
{{ package.short_desc }}
</p>
-
{% if not package.license.is_foss and not package.media_license.is_foss and package.type != package.type.TXP %}
<p style="color:#f33;">
<b>Warning:</b> Non-free code and media.
diff --git a/app/templates/packages/view.html b/app/templates/packages/view.html
index 4fe6b51..f6889e0 100644
--- a/app/templates/packages/view.html
+++ b/app/templates/packages/view.html
@@ -42,10 +42,10 @@
<p>
{% if package_warning %}
- <span class="badge badge-danger">
+ <a class="badge badge-danger" href="/help/non_free/">
<i class="fas fa-exclamation-circle" style="margin-right: 0.3em;"></i>
{{ package_warning }}
- </span>
+ </a>
{% endif %}
{% for t in package.tags %}
<a class="badge badge-primary"
@@ -214,11 +214,12 @@
<a class="btn btn-danger btn-sm ml-1" href="{{ package.getRemoveURL() }}"><i class="fas fa-trash"></i></a>
{% endif %}
</div>
-
</div>
+
{% if package_warning %}
<div class="card-body">
<div class="alert alert-danger">
+ <a href="/help/non_free/" class="float-right">Info</a>
<b>Warning:</b> {{ package_warning }}
</div>
</div>