View Raw Ebuild
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit systemd
DESCRIPTION="Collaboration suite, end-to-end encrypted and open-source."
HOMEPAGE="https://github.com/xwiki-labs/cryptpad"
SRC_URI="https://github.com/xwiki-labs/cryptpad/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
https://github.com/bekcpear/cryptpad-release/archive/refs/tags/${PV}.tar.gz -> ${PN}-release-${PV}.tar.gz"
LICENSE="AGPL-3"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
DEPEND=""
RDEPEND="${DEPEND}
>=net-libs/nodejs-12.14.0
acct-user/cryptpad
acct-group/cryptpad"
BDEPEND=""
src_prepare() {
mv "${WORKDIR}"/${PN}-release-${PV}/node_modules "${S}" || die
mv "${WORKDIR}"/${PN}-release-${PV}/www/bower_components "${S}"/www/ || die
cp "${FILESDIR}"/cryptpad.{service,initd} ./ || die
eapply_user
}
src_install () {
local install_dir="/usr/$(get_libdir)/node_modules/${PN}" path shebang
eval "sed -Ei 's#@PATH@#${install_dir}#' cryptpad.{service,initd}" || die
insinto ${install_dir}
doins -r .
insinto /etc/cryptpad
newins config/config.example.js config.js
dosym -r /etc/cryptpad/config.js ${install_dir}/config/config.js
keepdir /var/lib/cryptpad/{blob,block,customize,data,datastore}
fowners cryptpad:cryptpad /var/lib/cryptpad/{blob,block,customize,data,datastore}
dosym -r /var/lib/cryptpad/blob ${install_dir}/blob
dosym -r /var/lib/cryptpad/block ${install_dir}/block
dosym -r /var/lib/cryptpad/customize ${install_dir}/customize
dosym -r /var/lib/cryptpad/data ${install_dir}/data
dosym -r /var/lib/cryptpad/datastore ${install_dir}/datastore
keepdir /var/log/cryptpad
fowners cryptpad:cryptpad /var/log/cryptpad
newconfd "${FILESDIR}/cryptpad.confd" cryptpad
newinitd "cryptpad.initd" cryptpad
systemd_dounit "cryptpad.service"
}