diff options
author | Diego Elio Pettenò <flameeyes@gentoo.org> | 2009-09-28 10:59:07 +0000 |
---|---|---|
committer | Diego Elio Pettenò <flameeyes@gentoo.org> | 2009-09-28 10:59:07 +0000 |
commit | 19e45254d93be3bae4e5c656e724d98c959f01ad (patch) | |
tree | b3577a00e8714d5291829a522511625d1806e2dc /app-crypt | |
parent | Initial import of luasocket (needed for ekeyd); thanks to Pierre Guinoiseau i... (diff) | |
download | gentoo-2-19e45254d93be3bae4e5c656e724d98c959f01ad.tar.gz gentoo-2-19e45254d93be3bae4e5c656e724d98c959f01ad.tar.bz2 gentoo-2-19e45254d93be3bae4e5c656e724d98c959f01ad.zip |
Initial import of the EntropyKey daemon; this is still a work-in-progress ebuild, as it lacks an init script for the USB userland driver, and checks for Linux kernel options for CDC modem support.
(Portage version: 2.2_rc42/cvs/Linux x86_64)
Diffstat (limited to 'app-crypt')
-rw-r--r-- | app-crypt/ekeyd/ChangeLog | 12 | ||||
-rw-r--r-- | app-crypt/ekeyd/ekeyd-1.0.5.ebuild | 113 | ||||
-rw-r--r-- | app-crypt/ekeyd/files/ekeyd.init | 32 | ||||
-rw-r--r-- | app-crypt/ekeyd/metadata.xml | 14 |
4 files changed, 171 insertions, 0 deletions
diff --git a/app-crypt/ekeyd/ChangeLog b/app-crypt/ekeyd/ChangeLog new file mode 100644 index 000000000000..1d66fcf93138 --- /dev/null +++ b/app-crypt/ekeyd/ChangeLog @@ -0,0 +1,12 @@ +# ChangeLog for app-crypt/ekeyd +# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/app-crypt/ekeyd/ChangeLog,v 1.1 2009/09/28 10:59:06 flameeyes Exp $ + +*ekeyd-1.0.5 (28 Sep 2009) + + 28 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org> +ekeyd-1.0.5.ebuild, + +files/ekeyd.init, +metadata.xml: + Initial import of the EntropyKey daemon; this is still a work-in-progress + ebuild, as it lacks an init script for the USB userland driver, and checks + for Linux kernel options for CDC modem support. + diff --git a/app-crypt/ekeyd/ekeyd-1.0.5.ebuild b/app-crypt/ekeyd/ekeyd-1.0.5.ebuild new file mode 100644 index 000000000000..0fff9c327b1a --- /dev/null +++ b/app-crypt/ekeyd/ekeyd-1.0.5.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-crypt/ekeyd/ekeyd-1.0.5.ebuild,v 1.1 2009/09/28 10:59:06 flameeyes Exp $ + +EAPI=2 + +inherit multilib + +DESCRIPTION="Entropy Key userspace daemon" +HOMEPAGE="http://www.entropykey.co.uk/" +SRC_URI="http://www.entropykey.co.uk/res/download/${P}.tar.gz" + +LICENSE="as-is" # yes, truly + +SLOT="0" + +KEYWORDS="~amd64" + +IUSE="usb kernel_linux" + +RDEPEND="dev-lang/lua + usb? ( dev-libs/libusb:0 )" +DEPEND="${RDEPEND}" +RDEPEND="${RDEPEND} + dev-libs/luasocket + kernel_linux? ( sys-fs/udev )" + +src_prepare() { + # - avoid using -Werror; + # - don't gzip the man pages, this will also stop it from + # installing them, so we'll do it by hand. + sed -i \ + -e 's:-Werror::' \ + -e '/gzip/d' \ + daemon/Makefile || die +} + +src_compile() { + local osname + + # Override automatic detection: upstream provides this with uname, + # we don't like using uname. + case ${CHOST} in + *-linux-*) + osname=linux;; + *-freebsd*) + osname=freebsd;; + *-kfrebsd-gnu) + osname=gnukfreebsd;; + *-openbsd*) + osname=openbsd;; + *) + die "Unsupported operating system!" + ;; + esac + + # We don't slot LUA so we don't really need to have the variables + # set at all. + emake -C daemon \ + LUA_V= LUA_INC= \ + OSNAME=${osname} \ + OPT="${CFLAGS}" \ + BUILD_ULUSBD=$(use usb && echo yes || echo no) \ + || die "emake failed" +} + +src_install() { + emake -C daemon \ + DESTDIR="${D}" \ + install || die "emake install failed" + + # Install them manually because we don't want them gzipped + doman daemon/{ekeyd,ekey-setkey,ekey-rekey,ekeydctl}.8 \ + daemon/ekeyd.conf.5 || die + + if use usb; then + doman daemon/ekey-ulusbd.8 || die + fi + + dodoc daemon/README* AUTHORS WARNING || die + + if use kernel_linux; then + insinto /etc/udev/rules.d + newins doc/60-UDEKEY01.rules 70-${PN}.rules || die + + exeinto /$(get_libdir)/udev + doexe doc/ekeyd-udev || die + fi + + keepdir /etc/ekeyd + + newinitd "${FILESDIR}"/${PN}.init ${PN} || die +} + +pkg_postinst() { + elog "To make use of your entropykey, make sure to execute ekey-rekey" + elog "the first time, and then start the ekeyd service." + elog "" + elog "The service supports multiplexing if you wish to use multiple" + elog "keys, just symlink /etc/init.d/ekeyd → /etc/init.d/ekeyd.identifier" + elog "and it'll be looking for /etc/init.d/identifier.conf" + + if use usb; then + elog "" + elog "TODO TODO TODO TODO TODO" + elog "" + elog "Please note that while the userland USB daemon is being built" + elog "there currently is no init script to start it; this will be fixed" + elog "as soon as possible." + elog "" + elog "TODO TODO TODO TODO TODO" + fi +} diff --git a/app-crypt/ekeyd/files/ekeyd.init b/app-crypt/ekeyd/files/ekeyd.init new file mode 100644 index 000000000000..89dab724a46c --- /dev/null +++ b/app-crypt/ekeyd/files/ekeyd.init @@ -0,0 +1,32 @@ +#!/sbin/runscript +# Copyright 2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-crypt/ekeyd/files/ekeyd.init,v 1.1 2009/09/28 10:59:07 flameeyes Exp $ + +INSTANCE="${SVCNAME#*.}" +if [ -z "${INSTANCE}" ] || [ "${SVCNAME}" = "ekeyd" ]; then + INSTANCE="ekeyd" +fi + +depend() { + use udev +} + +start() { + ebegin "Starting EntropyKey daemon" + start-stop-daemon \ + --start --pidfile "/var/run/${SVCNAME}.pid" \ + --exec /usr/sbin/ekeyd -- \ + -f "/etc/entropykey/${INSTANCE}.conf" \ + -p "/var/run/${SVCNAME}.pid" + eend $? +} + +stop() { + ebegin "Stopping EntropyKey daemon" + start-stop-daemon \ + --stop --pidfile "/var/run/${SVCNAME}.pid" \ + --exec /usr/sbin/ekeyd + eend $? +} + diff --git a/app-crypt/ekeyd/metadata.xml b/app-crypt/ekeyd/metadata.xml new file mode 100644 index 000000000000..85ddda26dec9 --- /dev/null +++ b/app-crypt/ekeyd/metadata.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>no-herd</herd> + <maintainer> + <email>flameeyes@gentoo.org</email> + </maintainer> + <use> + <flag name='usb'> + Build the libusb-based userland daemon for accessing the + entropykey (alternative to the CDC USB driver). + </flag> + </use> +</pkgmetadata> |