net-libs/signald: new package, add 0.23.2

Signed-off-by: Julien Roy <julien@jroy.ca>
This commit is contained in:
Julien Roy
2023-01-28 19:57:39 -05:00
parent c91a829310
commit 7b339947ae
4 changed files with 104 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
DIST signald-0.23.2.tar.bz2 267235 BLAKE2B 4ef118dcb4003320945a3110488f606889a1e4c716b54a2e984e73a3631b9b205bb782206b4ce1e89b6e2d994464971d52c24491b4c519a5cd5d648df711cea5 SHA512 a308f31a14bd6c7d71441aaa1ec318d21f4d74c224f14940077105bf0f37e3a9fbc6799d89667ce638cce291773df8a468db8e7b87def1d342b5bc6659339dc1
DIST signald-0.23.2.tar.xz 121013748 BLAKE2B 66b6d4f0077a70f6311f60b5fd770638927ed8d4948920e616a36e701a0bfec1b950238a1817ed1bcfc68acd31de7833038a55fb2583a58b42df4324261f234e SHA512 840b0658afb3b1f30ba742328fb326bf788e9825e07fc6bc081ad02639e95eb366959ffdb2e21486d87c4973ddb69905941573e6eb4edbc4c935cd15a35fb03d

View File

@@ -0,0 +1,23 @@
#!/sbin/openrc-run
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
name="signald daemon"
description="an API for Signal"
pidfile="/run/${RC_SVCNAME}.pid"
command="/usr/bin/signald"
command_args="-d /var/lib/signald -s /tmp/signald.sock --system-socket"
command_background=true
command_user="signald:signald"
output_log="/var/log/signald.log"
error_log="/var/log/signald.log"
depend() {
need net
}
start_pre() {
checkpath -f -m 0644 -o "$command_user" "$output_log"
}

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<name>Julien Roy</name>
<email>julien@jroy.ca</email>
</maintainer>
<longdescription>
a daemon that facilitates communication over Signal. It is unofficial, unapproved, and not nearly as secure as the real Signal clients
Signal does not offer any sort of official API. Unlike traditional messaging applications, the Signal server expects the
client software to perform encryption and key management. signald handles all of these client-side requirements and
exposes a plain-text API which can be easily used by developers to build custom Signal clients. </longdescription>
<upstream>
<changelog>https://gitlab.com/signald/signald/-/releases</changelog>
<doc>https://signald.org</doc>
<bugs-to>https://gitlab.com/signald/signald/-/issues</bugs-to>
<remote-id type="gitlab">signald/signald</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,60 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit systemd
DESCRIPTION="an API for interacting with Signal Private Messenger"
HOMEPAGE="https://gitlab.com/signald/signald"
SRC_URI="https://gitlab.com/signald/signald/-/archive/${PV}.tar.bz2 -> ${P}.tar.bz2
https://jroy.ca/dist/${P}.tar.xz
"
COMMIT="8cfebfe0ab8395221eca94c4c366abb6d7f39314"
S="${WORKDIR}/${P}-${COMMIT}"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="acct-user/signald"
DEPEND="${RDEPEND}"
BDEPEND="dev-java/gradle-bin:7.3.3"
# From https://github.com/gentoo/gentoo/pull/28986
# TODO: inherit this eclass when the PR is merged
GRADLE_ARGS=(
--console=plain
--gradle-user-home "${T}/gradle_user_home"
--info
--no-build-cache
--no-daemon
--offline
--parallel
--project-cache-dir "${T}/gradle_project_cache"
--stacktrace
)
src_unpack() {
default
mv "${WORKDIR}/gradle_project_cache" "${T}" || die
mv "${WORKDIR}/gradle_user_home" "${T}" || die
}
src_compile() {
gradle "${GRADLE_ARGS[@]}" installDist || die
}
src_install() {
rm "${S}/build/install/signald/bin/signald.bat" || die
dodir "/var/lib"
mv "${S}/build/install/signald" "${ED}/var/lib" || die
dosym -r "/var/lib/signald/bin/signald" "usr/bin/${PN}"
newinitd "${FILESDIR}/${PN}.initd" "${PN}"
sed -i -e "s/^EnvironmentFile=-\/etc\/default\/signald$//" \
"${S}/src/main/resources/io/finn/signald/signald.service" || die
sed -i -e "s/--system-socket/-s \/tmp\/signald.sock/" \
"${S}/src/main/resources/io/finn/signald/signald.service" || die
systemd_dounit "${S}/src/main/resources/io/finn/signald/signald.service"
}