commit:     89a9f01cea2783d51b4f5e307e2d3f6b64e0e603
Author:     Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq <DOT> in>
AuthorDate: Thu Nov 17 15:36:11 2022 +0000
Commit:     Anna Vyalkova <cyber+gentoo <AT> sysrq <DOT> in>
CommitDate: Thu Nov 17 15:36:11 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=89a9f01c

net-misc/fedigroup: new package, add 1.0.6

Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq.in>

 net-misc/fedigroup/Manifest               |  1 +
 net-misc/fedigroup/fedigroup-1.0.6.ebuild | 38 ++++++++++++++++++
 net-misc/fedigroup/files/fedigroup.confd  |  5 +++
 net-misc/fedigroup/files/fedigroup.initd  | 64 +++++++++++++++++++++++++++++++
 net-misc/fedigroup/metadata.xml           | 12 ++++++
 5 files changed, 120 insertions(+)

diff --git a/net-misc/fedigroup/Manifest b/net-misc/fedigroup/Manifest
new file mode 100644
index 000000000..b651ef866
--- /dev/null
+++ b/net-misc/fedigroup/Manifest
@@ -0,0 +1 @@
+DIST fedigroup.py-1.0.6.tar.gz 17909 BLAKE2B 
d4a9003d0fd06f3bb74777966b71618cb5283aa017ecf91ac182f8fb460fc028469e13aace678b4319714e555ede2c6f4aa7f16b449efb272bf9a6d441be423f
 SHA512 
0481bd1de94d3d4cf2f5c57c078244a079ac3541393555bcb6b36db88457ed10505d065eeee63da222280e62ec14fb5c492b727da6f6495f1d91936c7b9ea53c

diff --git a/net-misc/fedigroup/fedigroup-1.0.6.ebuild 
b/net-misc/fedigroup/fedigroup-1.0.6.ebuild
new file mode 100644
index 000000000..f0bd8ba5d
--- /dev/null
+++ b/net-misc/fedigroup/fedigroup-1.0.6.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..11} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_SINGLE_IMPL=1
+inherit distutils-r1 edo
+
+MY_PN="${PN}.py"
+MY_P="${MY_PN}-${PV}"
+DESCRIPTION="Emulate group accounts on Mastodon/Pleroma"
+HOMEPAGE="
+       https://pypi.org/project/fedigroup.py/
+       https://github.com/uanet-exception/fedigroup.py
+"
+SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+       acct-user/fedigroup
+       $(python_gen_cond_dep '
+               dev-python/mastodon-py[${PYTHON_USEDEP}]
+               dev-python/requests[${PYTHON_USEDEP}]
+       ')
+"
+
+src_install() {
+       distutils-r1_src_install
+
+       newinitd "${FILESDIR}"/fedigroup.initd ${PN}
+       newconfd "${FILESDIR}"/fedigroup.confd ${PN}
+}

diff --git a/net-misc/fedigroup/files/fedigroup.confd 
b/net-misc/fedigroup/files/fedigroup.confd
new file mode 100644
index 000000000..fe8c789d7
--- /dev/null
+++ b/net-misc/fedigroup/files/fedigroup.confd
@@ -0,0 +1,5 @@
+# Fedigroup bot name
+#FEDIGROUP_BOT="${RC_SVCNAME#fedigroup.}"
+
+# Fedigroup configuration file
+#FEDIGROUP_CONFIG="/etc/fedigroup.conf"

diff --git a/net-misc/fedigroup/files/fedigroup.initd 
b/net-misc/fedigroup/files/fedigroup.initd
new file mode 100644
index 000000000..cb27094c4
--- /dev/null
+++ b/net-misc/fedigroup/files/fedigroup.initd
@@ -0,0 +1,64 @@
+#!/sbin/openrc-run
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+# shellcheck shell=sh disable=SC2034
+
+: ${FEDIGROUP_BOT:=${RC_SVCNAME#fedigroup.}}
+: ${FEDIGROUP_CONFIG:=/etc/fedigroup.conf}
+
+extra_commands="create remove list"
+description_create="create a new bot"
+description_remove="remove selected bot from config file"
+description_list="list all bots from config file"
+
+command="/usr/bin/fedigroup.py"
+command_args="run ${FEDIGROUP_BOT} -c ${FEDIGROUP_CONFIG}"
+command_user="fedigroup:fedigroup"
+command_background=yes
+pidfile="/run/${RC_SVCNAME}.pid"
+output_log="/var/log/${RC_SVCNAME}.log"
+error_log="${output_log}"
+
+depend() {
+       need net
+}
+
+fix_config_perms() {
+       checkpath -q -o fedigroup:fedigroup -m 0640 -f "${FEDIGROUP_CONFIG}"
+}
+
+start_pre() {
+       if [ "${FEDIGROUP_BOT}" = "${RC_SVCNAME}" ]; then
+               eerror "Missing FEDIGROUP_BOT variable"
+               return 1
+       fi
+
+       fix_config_perms || return 1
+
+       return 0
+}
+
+create() {
+       local name=""
+       printf "Enter the name of the bot to be created: "
+       read name
+
+       fix_config_perms || return 1
+       "${command}" create "${name}" -c "${FEDIGROUP_CONFIG}" || return 1
+}
+
+remove() {
+       local name=""
+       printf "Enter the name of the bot to be removed: "
+       read name
+
+       fix_config_perms || return 1
+       start-stop-daemon --quiet --exec "${command}" \
+               -- remove "${name}" -c "${FEDIGROUP_CONFIG}" || return 1
+}
+
+list() {
+       fix_config_perms || return 1
+       start-stop-daemon --quiet --exec "${command}" \
+               -- list -c "${FEDIGROUP_CONFIG}" || return 1
+}

diff --git a/net-misc/fedigroup/metadata.xml b/net-misc/fedigroup/metadata.xml
new file mode 100644
index 000000000..ff852796e
--- /dev/null
+++ b/net-misc/fedigroup/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>Anna</name>
+       </maintainer>
+       <upstream>
+               <remote-id type="pypi">fedigroup.py</remote-id>
+               <remote-id 
type="github">uanet-exception/fedigroup.py</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to