add www-apps/taskcafe and its user/group accounts

This commit is contained in:
Martin Sekera 2020-12-28 02:14:50 +01:00
parent e3472d928d
commit 7bff6cdfca
5 changed files with 100 additions and 1 deletions

View file

@ -0,0 +1,16 @@
[Unit]
Description=Taskcafé
After=network.target
ConditionPathExists=/etc/taskcafe/taskcafe.toml
[Service]
Type=simple
ExecStart=/usr/bin/taskcafe --config /etc/taskcafe/taskcafe.toml web
User=taskcafe
Group=taskcafe
WorkingDirectory=/var/lib/taskcafe
Restart=always
RestartSec=25
[Install]
WantedBy=multi-user.target

View file

@ -0,0 +1,59 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit systemd
DESCRIPTION="An open source project management tool with Kanban boards"
HOMEPAGE="https://github.com/JordanKnott/${PN}"
SRC_URI="https://github.com/JordanKnott/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="*"
IUSE="+acct"
RESTRICT="network-sandbox"
RDEPEND="
acct? ( acct-user/taskcafe )
dev-lang/go
sys-apps/yarn
dev-db/postgresql
"
src_compile () {
ewarn "This is a preliminary ebuild. It downloads over 2000 npm and go packages during src_compile."
go run cmd/mage/main.go install
go run cmd/mage/main.go build
}
src_install() {
dobin dist/${PN}
keepdir /var/lib/${PN}/uploads
insinto /etc/${PN}
doins conf/${PN}.example.toml
systemd_dounit ${FILESDIR}/${PN}.service
}
pkg_postinst() {
elog "There are a few things to do before enabling the service:"
elog "- Create a PostgreSQL role and database for ${PN}"
elog "- Create a configuration file:"
elog " # cp /etc/${PN}/${PN}.example.toml /etc/${PN}/${PN}.toml"
elog " and edit its contents to match your needs. It has to be"
elog " owned by and readable only by ${PN}."
elog "- Run database migration (emerge --config ${PNV})"
elog ""
elog "Note that ${PN} is under heavy development. Backup your data often."
}
pkg_config() {
einfo "Running database migrations..."
/usr/bin/${PN} --config /etc/${PN}/${PN}.toml migrate
}