# 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 ## 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 . ### REUSE compliance This project uses [REUSE](https://reuse.software/) 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. ``` shell #!/usr/bin/env bash reuse lint ``` ## Credits `brewserverblocklist` was created with [`cookiecutter`](https://cookiecutter.readthedocs.io/en/latest/) and the `py-pkgs-cookiecutter` [template](https://github.com/py-pkgs/py-pkgs-cookiecutter).