From 2c03cf9491e1c29bd8a3777a18a20926da2119dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix=20Baylac-Jacqu=C3=A9?= Date: Sat, 7 Nov 2020 18:41:44 +0100 Subject: [PATCH] pleroma-otp: init at 2.2.2 Co-authored-by: flokli --- pkgs/servers/pleroma-otp/default.nix | 66 ++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 68 insertions(+) create mode 100644 pkgs/servers/pleroma-otp/default.nix diff --git a/pkgs/servers/pleroma-otp/default.nix b/pkgs/servers/pleroma-otp/default.nix new file mode 100644 index 000000000000..756f2fc33dca --- /dev/null +++ b/pkgs/servers/pleroma-otp/default.nix @@ -0,0 +1,66 @@ +{ stdenv +, autoPatchelfHook +, fetchurl +, file +, makeWrapper +, ncurses +, nixosTests +, openssl +, unzip +, zlib +}: +stdenv.mkDerivation { + pname = "pleroma-otp"; + version = "2.2.2"; + + # To find the latest binary release stable link, have a look at + # the CI pipeline for the latest commit of the stable branch + # https://git.pleroma.social/pleroma/pleroma/-/tree/stable + src = { + aarch64-linux = fetchurl { + url = "https://git.pleroma.social/pleroma/pleroma/-/jobs/175288/artifacts/download"; + sha256 = "107kp5zqwq1lixk1cwkx4v7zpm0h248xzlm152aj36ghb43j2snw"; + }; + x86_64-linux = fetchurl { + url = "https://git.pleroma.social/pleroma/pleroma/-/jobs/175284/artifacts/download"; + sha256 = "1c6l04gga9iigm249ywwcrjg6wzy8iiid652mws3j9dnl71w2sim"; + }; + }."${stdenv.hostPlatform.system}"; + + nativeBuildInputs = [ unzip ]; + + buildInputs = [ + autoPatchelfHook + file + makeWrapper + ncurses + openssl + zlib + ]; + + # mkDerivation fails to detect the zip nature of $src due to the + # missing .zip extension. + # Let's unpack the archive explicitely. + unpackCmd = "unzip $curSrc"; + + installPhase = '' + mkdir $out + cp -r * $out''; + + # Pleroma is using the project's root path (here the store path) + # as its TMPDIR. + # Patching it to move the tmp dir to the actual tmpdir + postFixup = '' + wrapProgram $out/bin/pleroma \ + --set-default RELEASE_TMP "/tmp" + wrapProgram $out/bin/pleroma_ctl \ + --set-default RELEASE_TMP "/tmp"''; + + meta = { + description = "ActivityPub microblogging server"; + homepage = https://git.pleroma.social/pleroma/pleroma; + license = stdenv.lib.licenses.agpl3; + maintainers = with stdenv.lib.maintainers; [ ninjatrappeur ]; + platforms = [ "x86_64-linux" "aarch64-linux" ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b5f88bdb8e70..6eb9ef1f46e2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7020,6 +7020,8 @@ in tautulli = python3Packages.callPackage ../servers/tautulli { }; + pleroma-otp = callPackage ../servers/pleroma-otp { }; + ploticus = callPackage ../tools/graphics/ploticus { libpng = libpng12; };