app-misc/taskd: initial commit
authorMarc Schiffbauer <mschiff@gentoo.org>
Sun, 3 Jan 2016 03:16:09 +0000 (04:16 +0100)
committerMarc Schiffbauer <mschiff@gentoo.org>
Sun, 3 Jan 2016 03:16:28 +0000 (04:16 +0100)
Package-Manager: portage-2.2.26

app-misc/taskd/Manifest [new file with mode: 0644]
app-misc/taskd/files/config [new file with mode: 0644]
app-misc/taskd/files/taskd.confd [new file with mode: 0644]
app-misc/taskd/files/taskd.initd [new file with mode: 0644]
app-misc/taskd/metadata.xml [new file with mode: 0644]
app-misc/taskd/taskd-1.1.0.ebuild [new file with mode: 0644]

diff --git a/app-misc/taskd/Manifest b/app-misc/taskd/Manifest
new file mode 100644 (file)
index 0000000..3901f52
--- /dev/null
@@ -0,0 +1 @@
+DIST taskd-1.1.0.tar.gz 120115 SHA256 7b8488e687971ae56729ff4e2e5209ff8806cf8cd57718bfd7e521be130621b4 SHA512 df2349c354258fd1b014b1a9c78f68dc10c9e5a48357e282e8a760cf4e4aaf4d36486796ad094ee2b050e7506195b778e3316c90ef543a2f8242de313daa13aa WHIRLPOOL f3247de0ab1ecfed48e6c4e2f2391d370e77b6fb17a4aee5b0824efb1c0e70b725a6d9a544ffb9611d2dcba9956ec0443b0161ca8310f56a41cdd89b99335591
diff --git a/app-misc/taskd/files/config b/app-misc/taskd/files/config
new file mode 100644 (file)
index 0000000..51a8cdd
--- /dev/null
@@ -0,0 +1,17 @@
+confirmation=1
+extensions=/usr/libexec/taskd
+ip.log=on
+log=/var/log/taskd/taskd.log
+pid.file=/run/taskd.pid
+queue.size=10
+request.limit=1048576
+root=/var/lib/taskd
+server=localhost:53589
+trust=strict
+verbose=1
+# TLS config:
+#ciphers=
+#ca.cert=/etc/taskd/tls/ca.pem
+#server.cert=/etc/taskd/tls/server.crt.pem
+#server.crl=/etc/taskd/tls/server.crl.pem
+#server.key=/etc/taskd/tls/server.key.pem
diff --git a/app-misc/taskd/files/taskd.confd b/app-misc/taskd/files/taskd.confd
new file mode 100644 (file)
index 0000000..aadbc6e
--- /dev/null
@@ -0,0 +1 @@
+TASKDDATA="/var/lib/taskd"
diff --git a/app-misc/taskd/files/taskd.initd b/app-misc/taskd/files/taskd.initd
new file mode 100644 (file)
index 0000000..bbee521
--- /dev/null
@@ -0,0 +1,16 @@
+#!/sbin/runscript
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+need="net localmount"
+command="/usr/bin/taskd"
+command_args="server --data ${TASKDDATA:-/var/lib/taskd}"
+pidfile="/run/taskd.pid"
+start_stop_daemon_args="--user taskd:taskd"
+command_background=1
+extra_started_commands="reload"
+
+reload() {
+       kill -HUP "$(cat $pidfile)"
+}
diff --git a/app-misc/taskd/metadata.xml b/app-misc/taskd/metadata.xml
new file mode 100644 (file)
index 0000000..b8c3e05
--- /dev/null
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+       <email>mschiff@gentoo.org</email>
+       <name>Marc Schiffbauer</name>
+</maintainer>
+</pkgmetadata>
diff --git a/app-misc/taskd/taskd-1.1.0.ebuild b/app-misc/taskd/taskd-1.1.0.ebuild
new file mode 100644 (file)
index 0000000..e58da33
--- /dev/null
@@ -0,0 +1,75 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils cmake-utils systemd user
+
+DESCRIPTION="the server part of Taskwarrior, a command-line todo list manager"
+HOMEPAGE="http://taskwarrior.org/"
+SRC_URI="http://taskwarrior.org/download/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="sys-libs/readline:0
+       net-libs/gnutls
+       sys-apps/util-linux"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+       mycmakeargs=(
+               -DTASKD_DOCDIR=share/doc/${PF}
+       )
+       cmake-utils_src_configure
+}
+
+src_install() {
+       cmake-utils_src_install
+
+       systemd_dounit "${S}"/scripts/systemd/taskd.service
+
+       insinto /usr/share/${PN}/pki
+       doins pki/*
+
+       insinto /usr/share/${PN}/mon
+       doins mon/*
+
+       newinitd "${FILESDIR}"/taskd.initd taskd
+       newconfd "${FILESDIR}"/taskd.confd taskd
+
+       grep ^TASKDDATA= "${FILESDIR}"/taskd.confd > 90taskd
+       doenvd 90taskd
+
+       keepdir /usr/libexec/taskd /etc/taskd
+       diropts -m 0750
+       dodir /var/lib/taskd
+       keepdir /var/log/taskd
+       diropts -m 0700
+       keepdir /var/lib/taskd/orgs /etc/taskd/tls
+       insopts -m0600
+       insinto /etc/taskd
+       doins "${FILESDIR}"/config
+       dosym /etc/taskd/config /var/lib/taskd/config
+}
+
+pkg_preinst() {
+       enewgroup taskd
+       enewuser taskd -1 -1 /var/lib/taskd taskd
+}
+
+pkg_postinst() {
+       chown taskd:taskd /var/lib/taskd{,/orgs} /var/log/taskd /etc/taskd/{config,tls}
+
+       einfo ""
+       einfo "For configuration see 'man taskdrc' and edit /etc/taskd/config"
+       einfo "You will need to configure certificates first in order to use taskd"
+       einfo ""
+       ewarn ""
+       ewarn "Do not use 'taskd init' as this will replace the config file and set"
+       ewarn "default but unsuitable paths"
+       ewarn ""
+}