.reuse | ||
LICENSES | ||
src/brewserverblocklist | ||
tests | ||
.gitignore | ||
.gitignore.license | ||
CHANGELOG.md | ||
CHANGELOG.md.license | ||
CONDUCT.md | ||
CONDUCT.md.license | ||
CONTRIBUTING.md | ||
CONTRIBUTING.md.license | ||
pyproject.toml | ||
pyproject.toml.license | ||
README.md | ||
README.md.license |
Brew Server Blocklist
Friendica publishes the server wide blocklists for other servers in the fediverse. This script will collect the blocklists of servers of your choice and create a merged blocklist from them that you can then import into your own Friendica server.
To make certain that you don't block just any instance in the fediverse because $somebody has it on their blocklist you assign trustlevels to the correctnes of the blocklists of the other servers. Only when a server is blocked with a total trustlevel that is above a confidence level, it will be added to resulting blocklist automatically. Otherwise the user will be ask if they want to add a node to their blocklist or not.
The entries of your own servers blocklist will always gain enough trust so that they are added on the final blocklist again.
Config file
To use the script you have to create a config file. The structure of the file is the following
[soc1.example.com]
trust = 40
[soc2.example.com]
trust = 50
[soc3.example.com]
trust = 50
[soc4.example.com]
trust = 90
it assignes trust values to nodes in the network. The node domain names
are given in the []
. These are the nodes that the script will collect
the server blocklists from.
Trust levels can be negative. Once their summed value does reach a value of 100 the blocklist entry is trusted automatically without user interaction.
Author
- Tobias Diekershoff <tobias(dot)diekershoff(att)gmx(dot)net>
LICENSE
berewserverblocklist Copyright (C) 2023 Tobias Diekershoff
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or (at
your option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
REUSE compliance
This project uses REUSE to ensure that all components are release under a FLOSS compatible license. If you contribute to the project, please ensure that your contribution is REUSE compliant.
This can be done by adding the following to your .git/hooks/pre-commit
hook.
#!/usr/bin/env bash
reuse lint
Credits
brewserverblocklist
was created with cookiecutter
and the py-pkgs-cookiecutter
template.