diff --git a/acct-group/gotosocial/gotosocial-0-r1.ebuild b/acct-group/gotosocial/gotosocial-0-r1.ebuild new file mode 100644 index 0000000..92d6c5e --- /dev/null +++ b/acct-group/gotosocial/gotosocial-0-r1.ebuild @@ -0,0 +1,9 @@ +# Copyright 2019-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit acct-group + +DESCRIPTION="Gotosocial program group" +ACCT_GROUP_ID=981 diff --git a/acct-user/gotosocial/gotosocial-0-r1.ebuild b/acct-user/gotosocial/gotosocial-0-r1.ebuild new file mode 100644 index 0000000..636c617 --- /dev/null +++ b/acct-user/gotosocial/gotosocial-0-r1.ebuild @@ -0,0 +1,13 @@ +# Copyright 2019-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit acct-user + +DESCRIPTION="Gotosocial program user" +ACCT_USER_ID=981 +ACCT_USER_HOME=/var/lib/gotosocial +ACCT_USER_HOME_PERMS=0750 +ACCT_USER_GROUPS=( gotosocial ) +acct-user_add_deps diff --git a/www-apps/gotosocial-bin/Manifest b/www-apps/gotosocial-bin/Manifest new file mode 100644 index 0000000..41a647b --- /dev/null +++ b/www-apps/gotosocial-bin/Manifest @@ -0,0 +1,5 @@ +AUX authelia.confd 0 BLAKE2B 786a02f742015903c6c6fd852552d272912f4740e15847618a86e217f71f5419d25e1031afee585313896444934eb04b903a685b1448b755d56f701afe9be2ce SHA512 cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e +AUX authelia.initd 838 BLAKE2B 39b6b4dfddaed1f277bc4dbfdb20e3f280d23b5685c031bc909179b6bc29afe37170c50dff0e80fe34dc5dee145c8e39a774dfe1c9c57e3c768c68f2ce217632 SHA512 270098a0e946167213656404d09460ed939b650be20f06fdb8195bbae140a6cb9705f0374f109bf7897347230f695af0c2b20383c371febc46ab5ac75e1de340 +AUX authelia.service 338 BLAKE2B 82bb76bc9c3fc97ecceeda62fa4b177c9b8b9790f553eb19b310affffbda18acbd357c09318fbf608a15b8d5ae613667f9af39f0e4dd0ea603520537b6d450fc SHA512 86188b3de4d1bd9dbf3ae35c42fc1e8bd37497b5f29c7a149a15324f6821428d90884e25fafe6f61f29765d713c0d48dc900329850686a4c44aeab279e9143c7 +DIST authelia-bin-4.36.3-linux-amd64.tar.gz 14623425 BLAKE2B 9a7b9c32ae9d72386600437d2047477933fb4d7170bf6c3de132c673a36d2dacdbb8b2f542603598a62308369767154f5cf703f28d9122a7d4f8025b96771130 SHA512 98f43bb69a6c2ab8a4a75f144af4544628771a043f3aefb39f984d1e2d7aeabd5cdca47fe25a5615817d30c4d1806a20c0c6dfcbcc4e31f18564897c1b1fe373 +EBUILD authelia-bin-4.36.3.ebuild 942 BLAKE2B 60dac1ca290891127d3bce232790ba29b6c7ec993f48c53b9e4286c56da70434499ed609c6ba0ce87ead2842e2367be834b192afb526b91990b57f39a35cd6f4 SHA512 6491434425b438cfde87b9142322e33cb41c6766d6009bd66b12561ec9861377f5dfa9d7a1e52f7744a96097c362c7ddc416eaf836e2c808d4ab87a4f0042cd1 diff --git a/www-apps/gotosocial-bin/files/gotosocial.confd b/www-apps/gotosocial-bin/files/gotosocial.confd new file mode 100644 index 0000000..e69de29 diff --git a/www-apps/gotosocial-bin/files/gotosocial.initd b/www-apps/gotosocial-bin/files/gotosocial.initd new file mode 100644 index 0000000..a50a37b --- /dev/null +++ b/www-apps/gotosocial-bin/files/gotosocial.initd @@ -0,0 +1,21 @@ +#!/sbin/openrc-run +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +GOTOSOCIAL_USER="${GOTOSOCIAL_USER:-gotosocial}" +GOTOSOCIAL_GROUP="${GOTOSOCIAL_GROUP:-gotosocial}" +GOTOSOCIAL_CONFIG="${GOTOSOCIAL_CONFIG:-/etc/gotosocial/config.yml}" +GOTOSOCIAL_DATA_DIR="${GOTOSOCIAL_DATA_DIR:-/var/lib/gotosocial}" +GOTOSOCIAL_LOG_DIR="${GOTOSOCIAL_LOG_DIR:-/var/log/gotosocial}" + +command="/usr/bin/gotosocial" +command_args="--config ${GOTOSOCIAL_CONFIG}" + +pidfile="/run/${RC_SVCNAME}.pid" +command_background="true" +start_stop_daemon_args="--user=\"${GOTOSOCIAL_USER}\" --group=\"${GOTOSOCIAL_GROUP}\" --stdout ${GOTOSOCIAL_LOG_DIR}/gotosocial.log --stderr ${GOTOSOCIAL_LOG_DIR}/gotosocial.err server start" + +start_pre() { + checkpath -d -o "${GOTOSOCIAL_USER}" -m750 "${GOTOSOCIAL_DATA_DIR}" + checkpath -d -o "${GOTOSOCIAL_USER}" -m750 "${GOTOSOCIAL_LOG_DIR}" +} diff --git a/www-apps/gotosocial-bin/files/gotosocial.service b/www-apps/gotosocial-bin/files/gotosocial.service new file mode 100644 index 0000000..58c06a6 --- /dev/null +++ b/www-apps/gotosocial-bin/files/gotosocial.service @@ -0,0 +1,18 @@ +[Unit] +Description=gotosocial Web Application +After=network.target + +[Service] +WorkingDirectory=/var/lib/gotosocial +StateDirectory=gotosocial +StateDirectoryMode=0750 +CacheDirectory=gotosocial +CacheDirectoryMode=0750 + +User=gotosocial +Group=gotosocial + +ExecStart=/usr/bin/gotosocial --config /etc/gotosocial/config.yml server start + +[Install] +WantedBy=multi-user.target diff --git a/www-apps/gotosocial-bin/gotosocial-bin-0.5.2.ebuild b/www-apps/gotosocial-bin/gotosocial-bin-0.5.2.ebuild new file mode 100644 index 0000000..ed9f16f --- /dev/null +++ b/www-apps/gotosocial-bin/gotosocial-bin-0.5.2.ebuild @@ -0,0 +1,42 @@ + +EAPI="7" + +inherit systemd + +MY_PN="gotosocial" +DESCRIPTION="Single Sign-On Multi-Factor portal for web apps" +HOMEPAGE="https://github.com/superseriousbusiness/gotosocial" +SRC_URI="https://github.com/superseriousbusiness/gotosocial/releases/download/v${PV}/${MY_PN}-v${PV}_linux_amd64.tar.gz -> ${P}-linux-amd64.tar.gz" + +SLOT="0" +LICENSE="AGPL-3.0" +KEYWORDS="amd64" +S="${WORKDIR}" + +QA_PRESTRIPPED="usr/bin/gotosocial" + +DEPEND=" + acct-group/gotosocial + acct-user/gotosocial +" + +src_install() { + newbin gotosocial-linux-amd64 gotosocial + + newinitd "${FILESDIR}/${MY_PN}.initd" ${MY_PN} + newconfd "${FILESDIR}/${MY_PN}.confd" ${MY_PN} + + systemd_dounit "${FILESDIR}/${MY_PN}.service" + + diropts -m 0750 -o ${MY_PN} -g ${MY_PN} + dodir /etc/${MY_PN} + dodir /etc/${MY_PN}/keys.d + dodir /etc/${MY_PN}/certs.d + keepdir /etc/${MY_PN}/keys.d + keepdir /etc/${MY_PN}/certs.d + keepdir /var/lib/${MY_PN} + keepdir /var/log/${MY_PN} + + insinto /etc/${MY_PN} + doins config.template.yml +}