From 77e2b08b7e5a3ea439c072ca037878af097e12be Mon Sep 17 00:00:00 2001 From: "Anna (navi) Figueiredo Gomes" Date: Sat, 19 Oct 2024 02:54:19 +0200 Subject: www-apps/akkoma: new package, add 3.12.0 Signed-off-by: Anna (navi) Figueiredo Gomes --- www-apps/akkoma/Manifest | 1 + www-apps/akkoma/akkoma-3.12.0.ebuild | 97 ++++++++++++++++++++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 www-apps/akkoma/Manifest create mode 100644 www-apps/akkoma/akkoma-3.12.0.ebuild diff --git a/www-apps/akkoma/Manifest b/www-apps/akkoma/Manifest new file mode 100644 index 0000000..ac7ba2b --- /dev/null +++ b/www-apps/akkoma/Manifest @@ -0,0 +1 @@ +DIST akkoma-3.12.0.tar.gz 5638964 BLAKE2B cf61d36be2ac599f13b4e049bf4904c3f634b941b50e347e69eb882569b0d18d538f71663813c5adea8f57313ff71083208dcea5283fe7408238f350cc4b6b7a SHA512 b108d22877c40f66d51ec8dbeb8e90070c253058b9552b4ca0158cb1317ece57c4db6511f302f83ec6a27a32a0082c9e5561129e39a1f74d439182fa8d052b47 diff --git a/www-apps/akkoma/akkoma-3.12.0.ebuild b/www-apps/akkoma/akkoma-3.12.0.ebuild new file mode 100644 index 0000000..2a1a0f6 --- /dev/null +++ b/www-apps/akkoma/akkoma-3.12.0.ebuild @@ -0,0 +1,97 @@ +# Copyright 2022-2023 Anna (navi) Figueiredo Gomes +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit mix optfeature + +DESCRIPTION="a smallish microblogging platform" +HOMEPAGE="https://akkoma.social/" + +SRC_URI="https://akkoma.dev/AkkomaGang/akkoma/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}" +KEYWORDS="~amd64" + +LICENSE="AGPL-3 CC-BY-SA-4.0 CC-BY-4.0" +SLOT="otp" + +# Requires network access (https) as long as elixir dependencies aren't packaged +# said dependencies have their checksum verified via `mix.lock` +RESTRICT="network-sandbox" + +BDEPEND=" + >=dev-lang/erlang-25:= + >=dev-lang/elixir-1.14:= + dev-build/cmake + >=dev-util/rebar-3.20.0-r1 + dev-elixir/hex +" +DEPEND=" + sys-libs/ncurses:= + sys-apps/file +" +RDEPEND=" + ${DEPEND} + acct-user/akkoma + acct-group/akkoma + dev-db/postgresql[uuid] +" + +src_unpack() { + default + + cd "${S}" || die + emix deps.get --only prod +} + +src_prepare() { + default + + sed -i -e '/include_executables_for:/a\ strip_beams: false,\n\ include_erts: false,' mix.exs || die + + sed -i \ + -e '/update \[OPTIONS\]/,/--tmp-dir/d' \ + -e 's;update "$@";echo "Unsupported, check the '"${CATEGORY}/${PN}"' package instead.";' \ + rel/files/bin/pleroma_ctl || die + + # Default ends up being inside /opt/akkoma which should be kept read-only to akkoma + echo 'config :tzdata, :data_dir, "/var/lib/akkoma/tzdata"' >> config/prod.exs || die + + echo "import Config" > config/prod.secret.exs || die +} + +src_compile() { + mkdir -p akkoma || die + emix release --overwrite --path akkoma +} + +src_install() { + # doins doesn't seems to preserve permissions + mkdir -p "${ED}/opt" || die + cp -pr ./akkoma "${ED}/opt/akkoma" || die + fperms 0750 /opt/akkoma + fowners 0:akkoma /opt/akkoma + + doinitd ./akkoma/installation/init.d/akkoma + + dosym /opt/akkoma/bin/pleroma /usr/bin/pleroma + dosym /opt/akkoma/bin/pleroma_ctl /usr/bin/pleroma_ctl + + # This file controls console access + fperms 0750 /opt/akkoma/releases/COOKIE + fowners 0:akkoma /opt/akkoma/releases/COOKIE + + keepdir /etc/akkoma + fperms 0750 /etc/akkoma + fowners 0:akkoma /etc/akkoma + + keepdir /var/lib/akkoma + fperms 0750 /var/lib/akkoma + fowners akkoma:akkoma /var/lib/akkoma +} + +pkg_postinst() { + optfeature "For Pleroma.Upload.Filters.{Mogrify,Mogrifun} & images in previews" media-gfx/imagemagick + optfeature "For video support in Media Preview Proxy" media-video/ffmpeg + optfeature "For Pleroma.Upload.Filters.Exiftool.* filters" media-libs/exiftool +} -- cgit v1.2.3