From 79bc42800079f1a4cd331071a853b759a24a4013 Mon Sep 17 00:00:00 2001 From: tastytea Date: Sun, 8 Mar 2020 12:46:12 +0100 Subject: [PATCH] www-apps/pleroma: Version bump 2.0.0. --- www-apps/pleroma/Manifest | 9 +- www-apps/pleroma/pleroma-2.0.0.ebuild | 123 ++++++++++++++++++++++++++ 2 files changed, 128 insertions(+), 4 deletions(-) create mode 100644 www-apps/pleroma/pleroma-2.0.0.ebuild diff --git a/www-apps/pleroma/Manifest b/www-apps/pleroma/Manifest index d98a866..ca54494 100644 --- a/www-apps/pleroma/Manifest +++ b/www-apps/pleroma/Manifest @@ -4,11 +4,12 @@ Hash: SHA256 AUX syslog.exs 193 BLAKE2B 63ec05041a10b7f3a5c7fbd8bf454819eafbd98efd635a2888d7db7333e212a872ea212889bb9ee81c1810bf9f55d6d7d7133e0a6619d23c9e3bdcac04d70c73 SHA512 fd47e00575a64cd519a1229ca429059eb9ca5c0a1e8454b56995606e25f9fcfad0107d92207eab41aad36ccf30b506a5475781225274fc55841fd55ec74928f1 EBUILD pleroma-1.1.8.ebuild 3372 BLAKE2B 37173e0ddbca3dfbe5e37ae370c5d9e5e9f9e47a2f7fea36f7da2f4d8cd945711597871f1a2bd09c733994a5211c08596dce1d8b238cd7d59ab14eb909030da8 SHA512 bdbf8490668d1ca5917f3708f6f41a295b321efc958b4cff25fdb7baeff366e3a1f084524d7e09bbed8865cefe41d0c23cc6ff12636cff1ea48688e2bfe571d0 EBUILD pleroma-1.1.9.ebuild 3372 BLAKE2B 37173e0ddbca3dfbe5e37ae370c5d9e5e9f9e47a2f7fea36f7da2f4d8cd945711597871f1a2bd09c733994a5211c08596dce1d8b238cd7d59ab14eb909030da8 SHA512 bdbf8490668d1ca5917f3708f6f41a295b321efc958b4cff25fdb7baeff366e3a1f084524d7e09bbed8865cefe41d0c23cc6ff12636cff1ea48688e2bfe571d0 +EBUILD pleroma-2.0.0.ebuild 3372 BLAKE2B 37173e0ddbca3dfbe5e37ae370c5d9e5e9f9e47a2f7fea36f7da2f4d8cd945711597871f1a2bd09c733994a5211c08596dce1d8b238cd7d59ab14eb909030da8 SHA512 bdbf8490668d1ca5917f3708f6f41a295b321efc958b4cff25fdb7baeff366e3a1f084524d7e09bbed8865cefe41d0c23cc6ff12636cff1ea48688e2bfe571d0 MISC metadata.xml 993 BLAKE2B adc5c72fe12b6fdb4eb20c1d79dde227b088b437ffd21d16cc5775fa5bb7fa6363890dd5017fbe7f5a00a794a38fb298ce17e6402f6d3d5441985effd0d7e1db SHA512 6ff23fa60c0f22ef7a433e3d1b4919d074508898504b7168c925da8840f542afcdc891a9f4df69dc8eb6c44b7d9c41e6b94fdecd404ca738169124bcdab0af0d -----BEGIN PGP SIGNATURE----- -iHUEAREIAB0WIQQ1VSZoZMptf/RapufPw5SX8bJuBwUCXkAAZgAKCRDPw5SX8bJu -B/QbAP4iSk/eZ/MFmfmRBWFl/e2VYlkAYPCu7/rQhvhAwL8hLQD9FEbK8npkHHpg -2SQcGo0ZyLwd8Iu4bAcgfazhKPg7zgA= -=H2wT +iHUEAREIAB0WIQQ1VSZoZMptf/RapufPw5SX8bJuBwUCXmTbBQAKCRDPw5SX8bJu +B9lAAP4+3NBW+Vl6mrSLa+LEJx+HgGE7TdmW+2HkzuCxGuJ1IAD+LfLjzhAAMOBt +fr9Rf35hjiVBxL8sMZCZWWbVIYhYEAg= +=jW2H -----END PGP SIGNATURE----- diff --git a/www-apps/pleroma/pleroma-2.0.0.ebuild b/www-apps/pleroma/pleroma-2.0.0.ebuild new file mode 100644 index 0000000..762d3b4 --- /dev/null +++ b/www-apps/pleroma/pleroma-2.0.0.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit git-r3 user systemd + +DESCRIPTION="Microblogging server software that can federate with other servers." +HOMEPAGE="https://pleroma.social/ https://git.pleroma.social/pleroma/pleroma/" +EGIT_REPO_URI="https://git.pleroma.social/pleroma/pleroma.git" +EGIT_COMMIT="v${PV}" + +LICENSE="AGPL-3" +SLOT="0" +KEYWORDS="~amd64" +IUSE="apache +nginx syslog" + +RDEPEND=" + >=dev-lang/elixir-1.8.1 + >=dev-db/postgresql-9.6.13[uuid] + apache? ( www-servers/apache ) + nginx? ( www-servers/nginx[nginx_modules_http_slice] ) +" +DEPEND="" + +pkg_preinst() { + ewarn "This ebuild will overwrite modified files in /opt/pleroma/priv/static/" +} + +pkg_setup() { + enewgroup pleroma + enewuser pleroma -1 -1 /opt/pleroma pleroma +} + +src_install() { + insinto "/opt/pleroma" + insopts -o pleroma -g pleroma -m 0664 + doins -r * .* + # insopts doesn't affect directories. + chown -R pleroma:pleroma "${ED}/opt/pleroma" + chmod -R ug=rwX "${ED}/opt/pleroma" + + if use nginx; then + dodoc installation/pleroma.nginx + fi + if use apache; then + dodoc installation/pleroma-apache.conf + fi + + dodoc -r docs/* + + doinitd installation/init.d/pleroma + systemd_dounit installation/pleroma.service +} + +pkg_postinst() { + elog "You need to run emerge --config www-apps/pleroma after each upgrade." + if use nginx; then + einfo "An example config for nginx has been installed in the doc directory." + fi + if use apache; then + einfo "An example config for apache has been installed in the doc directory." + fi +} + +pkg_config() { + local configfile="${EROOT}/opt/pleroma/config/prod.secret.exs" + cd "${EROOT}/opt/pleroma" || die + + if [[ ! -f ${configfile} ]]; then # Fresh install. + einfo "Installing the dependencies..." + einfo "Answer with yes if it asks you to install Hex." + su -ls /bin/bash -c "mix deps.get" pleroma || die + + einfo "Generating the configuration..." + einfo "Answer with yes if it asks you to install rebar3." + su -ls /bin/bash -c "mix pleroma.instance gen" pleroma || die + mv -v config/{generated_config.exs,prod.secret.exs} || die + + if use syslog; then + einfo "Activating syslog in ${configfile} ..." + cat "${FILESDIR}/syslog.exs" >> ${configfile} + fi + + einfo "Creating the database..." + su -ls /bin/bash -c "psql -f config/setup_db.psql" postgres || die + + einfo "Running the database migration..." + su -ls /bin/bash -c "MIX_ENV=prod mix ecto.migrate" pleroma || die + + einfo "Your configuration file is in ${configfile}." + else # Update. + einfo "Pleroma will be stopped for the duration of the update." + einfo "Hit enter to proceed." + read + + declare -i started=0 + if "${EROOT}"/etc/init.d/pleroma --nocolor status | grep -q started; then + started=1 + fi + + if [[ ${started} -eq 1 ]]; then + einfo "Stopping pleroma..." + "${EROOT}"/etc/init.d/pleroma stop || die + fi + + einfo "Updating the dependencies..." + su -ls /bin/bash -c "mix deps.get" pleroma || die + + einfo "Running the database migration..." + su -ls /bin/bash -c "MIX_ENV=prod mix ecto.migrate" pleroma || die + + if [[ ${started} -eq 1 ]]; then + einfo "Starting pleroma..." + "${EROOT}"/etc/init.d/pleroma start || die + fi + fi + + if ! grep -q MIX_ENV ~pleroma/.profile 2>/dev/null; then + elog "Setting MIX_ENV=prod in ~pleroma/.profile ..." + echo "export MIX_ENV=prod" >> ~pleroma/.profile || die + fi +}