Turns form data into JSON and opens a pull request. https://fediblock.org/
This repository has been archived on 2021-03-22. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
tastytea 22429c8175
Set required CMake version to 3.11.
Needed for FindFilesystem.
2020-07-04 02:14:20 +02:00
cmake Add std::filesystem helper to CMake recipe. 2020-06-29 22:47:55 +02:00
src HTML generator: Prettier HTML. 2020-07-02 11:50:04 +02:00
tests Simplify CMake config by making a reusable library. 2020-07-02 06:54:54 +02:00
.clang-format Add skeleton. 2020-06-29 03:07:46 +02:00
.drone.yml Add pull requests via Gitea API. 2020-07-02 00:19:18 +02:00
.editorconfig Add skeleton. 2020-06-29 03:07:46 +02:00
.gitignore Add skeleton. 2020-06-29 03:07:46 +02:00
AUTHORS Add skeleton. 2020-06-29 03:07:46 +02:00
CMakeLists.txt Set required CMake version to 3.11. 2020-07-04 02:14:20 +02:00
CODE_OF_CONDUCT.adoc Add skeleton. 2020-06-29 03:07:46 +02:00
CONTRIBUTING.adoc Fix URIs in contributing guidelines. 2020-06-29 06:24:56 +02:00
CREDITS Add pull requests via Gitea API. 2020-07-02 00:19:18 +02:00
LICENSE Add skeleton. 2020-06-29 03:07:46 +02:00
README.adoc Improve usage documentation. 2020-07-02 11:30:34 +02:00

README.adoc

fediblock-backend

fediblock-backend turns form data into JSON and opens a pull request on FediBlock/data.

Usage

nginx config
# […]

location /add {
    include /etc/nginx/fastcgi_params;
    fastcgi_pass    unix:/var/run/cgi-fcgiwrap.socket-1;
    fastcgi_param SCRIPT_FILENAME /usr/bin/fediblock-backend;
    fastcgi_param HOME "/var/lib/nginx"; # When I didn't set it, HOME was /root.
}
Generate SSH key
sudo -u nginx ssh-keygen -t ed25519 -f ~nginx/.local/share/fediblock-backend/ssh_id

Dont forget to add the key to the data repo.

Generate an access token and save it in /var/lib/nginx/.local/share/fediblock-backend/gitea_access_token.

Generate HTML blocklist

After compiling, run src/generators/gen_html in your build dir. The screenshots will be copied into the target directory and the output will be the HTML file.

Example: Generate the HTML blocklist in ~/blocklist/
./src/generators/gen_html ~/blocklist > ~/blocklist/index.html

Existing screenshots will not be overwritten.

Install

From source

Dependencies

  • Tested OS: Linux

  • C++ compiler with C++17 support (tested: GCC 8/9/10, clang 7/10)

  • CMake (at least: 3.9)

  • cgicc (tested: 3.2)

  • nlohmann-json (tested: 3.7 / 2.1)

  • libgit2 with SSH support (tested: 1.0 / 0.27)

  • libcurl (at least: 7.56)

  • Optional

    • Tests: Catch (tested: 2.5 / 1.10)

    • DEB package: dpkg (tested: 1.19)

    • RPM package: rpm-build (tested: 4.11)

Get sourcecode

git clone https://schlomp.space/FediBlock/backend.git

Compile

mkdir -p build && cd build
cmake ..
cmake --build . -- --jobs=$(nproc --ignore=1)
CMake options:
  • -DCMAKE_BUILD_TYPE=Debug for a debug build.

  • -DWITH_TESTS=YES if you want to compile the tests.

  • -DWITH_CLANG-TIDY=YES to check the sourcecode with clang-tidy while compiling.

  • One of:

    • -DWITH_DEB=YES if you want to be able to generate a deb-package.

    • -DWITH_RPM=YES if you want to be able to generate an rpm-package.

To create a deb or rpm package, run make package after compiling.