= FediPotato :toc: preamble :project: FediPotato :uri-base: https://schlomp.space/tastytea/{project} :uri-branch-main: {uri-base}/src/branch/main :uri-wp-fediverse: https://en.wikipedia.org/wiki/Fediverse :uri-wp-mastodon: https://en.wikipedia.org/wiki/Mastodon_(software) :uri-pleroma: https://pleroma.social/ :uri-gcc: https://gcc.gnu.org/ :uri-clang: https://clang.llvm.org/ :uri-cmake: https://cmake.org/ :uri-mastodonpp: https://schlomp.space/tastytea/mastodonpp :uri-doxygen: http://www.doxygen.nl/ :uri-catch: https://github.com/catchorg/Catch2 :uri-dpkg: https://packages.qa.debian.org/dpkg :uri-rpm-build: http://www.rpm.org :uri-clang-tidy: https://clang.llvm.org/extra/clang-tidy/ *{project}* is a client for link:{uri-wp-fediverse}[Fediverse] servers. // It currently supports link:{uri-wp-mastodon}[Mastodon] and // link:{uri-pleroma}[Pleroma]. // == Install // === Gentoo // [source,shell] // -------------------------------------------------------------------------------- // eselect repository enable tastytea // echo 'net-misc/fedipotato' >> /etc/portage/package.accept_keywords/fedipotato // emaint sync -r tastytea // emerge -a net-misc/fedipotato // -------------------------------------------------------------------------------- // === Debian and Ubuntu // We automatically generate packages for Debian buster (10) and Ubuntu bionic // (18.04), but only for x86_64 (amd64). Download them at // link:{uri-base}/releases[schlomp.space]. // [source,shell] // -------------------------------------------------------------------------------- // apt install ./fedipotato*.deb // -------------------------------------------------------------------------------- // === CentOS // We automatically generate packages for CentOS 8, but only for x86_64 // (amd64). Download them at link:{uri-base}/releases[schlomp.space]. // [source,shell] // -------------------------------------------------------------------------------- // yum install ./fedipotato*.rpm // -------------------------------------------------------------------------------- // === From source // ==== Dependencies // * Tested OS: Linux // * C\++ compiler with C++17 support (tested: link:{uri-gcc}[GCC] 7/8/9, // link:{uri-clang}[clang] 6/7) // * link:{uri-cmake}[CMake] (at least: 3.9) // * link:{uri-mastodonpp}[mastodonpp] (at least: 0.5) // * Optional // ** Library documentation: link:{uri-doxygen}[Doxygen] (tested: 1.8) // ** Tests: link:{uri-catch}[Catch] (tested: 2.5 / 1.2) // ** DEB package: link:{uri-dpkg}[dpkg] (tested: 1.19) // ** RPM package: link:{uri-rpm-build}[rpm-build] (tested: 4.11) // ==== Get sourcecode // ===== Release // Download the current release at link:{uri-base}/releases[schlomp.space]. // ===== Development version // [source,shell] // -------------------------------------------------------------------------------- // git clone https://schlomp.space/tastytea/FediPotato.git // -------------------------------------------------------------------------------- // ==== Compile // [source,shell] // -------------------------------------------------------------------------------- // mkdir -p build && cd build // cmake .. // cmake --build . -- -j$(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 // link:{uri-clang-tidy}[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. include::{uri-base}/raw/branch/main/CONTRIBUTING.adoc[]