diff options
author | Diego Elio Pettenò <flameeyes@gentoo.org> | 2010-09-29 23:54:46 +0000 |
---|---|---|
committer | Diego Elio Pettenò <flameeyes@gentoo.org> | 2010-09-29 23:54:46 +0000 |
commit | 092adae9d4b2830685c8f05fc22a0ae115b052ed (patch) | |
tree | ec207dc79a4fdbc6e69795965b1605a1deee1483 /app-crypt | |
parent | QA: avoid double-execution of econf. (diff) | |
download | historical-092adae9d4b2830685c8f05fc22a0ae115b052ed.tar.gz historical-092adae9d4b2830685c8f05fc22a0ae115b052ed.tar.bz2 historical-092adae9d4b2830685c8f05fc22a0ae115b052ed.zip |
Add patch to that worksaround a libusb-compat bug and allows using the virtual with ekeyd-ulusbd.
Package-Manager: portage-2.2_rc88/cvs/Linux x86_64
Diffstat (limited to 'app-crypt')
-rw-r--r-- | app-crypt/ekeyd/ChangeLog | 10 | ||||
-rw-r--r-- | app-crypt/ekeyd/Manifest | 12 | ||||
-rw-r--r-- | app-crypt/ekeyd/ekeyd-1.1.3-r1.ebuild | 155 | ||||
-rw-r--r-- | app-crypt/ekeyd/files/ekeyd-1.1.3-libusb_compat.patch | 14 | ||||
-rw-r--r-- | app-crypt/ekeyd/metadata.xml | 5 |
5 files changed, 189 insertions, 7 deletions
diff --git a/app-crypt/ekeyd/ChangeLog b/app-crypt/ekeyd/ChangeLog index 6b9d5cf88448..76f0998dd57e 100644 --- a/app-crypt/ekeyd/ChangeLog +++ b/app-crypt/ekeyd/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for app-crypt/ekeyd # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-crypt/ekeyd/ChangeLog,v 1.15 2010/09/24 11:43:26 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-crypt/ekeyd/ChangeLog,v 1.16 2010/09/29 23:54:46 flameeyes Exp $ + +*ekeyd-1.1.3-r1 (29 Sep 2010) + + 29 Sep 2010; Diego E. Pettenò <flameeyes@gentoo.org> + +ekeyd-1.1.3-r1.ebuild, +files/ekeyd-1.1.3-libusb_compat.patch, + metadata.xml: + Add patch to that worksaround a libusb-compat bug and allows using the + virtual with ekeyd-ulusbd. *ekeyd-1.1.3 (24 Sep 2010) diff --git a/app-crypt/ekeyd/Manifest b/app-crypt/ekeyd/Manifest index 9dd83386de4f..22180ca386cb 100644 --- a/app-crypt/ekeyd/Manifest +++ b/app-crypt/ekeyd/Manifest @@ -4,15 +4,17 @@ Hash: SHA1 AUX ekey-ulusbd.conf 579 RMD160 0fb73018df4b96197fb1bd245f98e078b9e84501 SHA1 c7b287b34080c6cc941e217e21768f290803ca98 SHA256 7077c2634fe54d1c1a6af9f48d4e76b53b8c8f2b110c44ec50a4998f7e797fa9 AUX ekey-ulusbd.init 1044 RMD160 8d367b69b2ab785603329039005e3e04d0a5858e SHA1 acece8401daf5d0d9c73e4efd3262f2fd2887391 SHA256 454def35bf7bb2e8e1927a33415f51832f45714e5db411c1d0374331e07e802c AUX ekeyd-1.1.1-earlyboot.patch 1526 RMD160 66512d44326f6b4ccb3971dd83a5888dc8175a47 SHA1 9ac7a0ab0ff4f800d373f16173a0a40d282a6030 SHA256 00d346ba22afcefafbed9ee1a53c38460db732839a2ed9b5a32ac5bb250987c3 +AUX ekeyd-1.1.3-libusb_compat.patch 658 RMD160 356e27996ac6efbda56002d2dabaae9fce234e95 SHA1 e035db0258b7162a1ed7a69a343628a92c4a78a8 SHA256 5b82fe0d834ccfe674fdee2582a9097e4f0bea5b766e0c287808c7f4b3bc77e2 AUX ekeyd.init 781 RMD160 9f7f426544b116224cbb523d27bee17d378acf2d SHA1 9017e3ddfa29b2b4319a61245f1cf8400f0f06c4 SHA256 441af4b871a17184196a5dbf5263b40291185646ed199c2495662f4da2ea9f86 DIST ekeyd-1.1.3.tar.gz 95173 RMD160 0af970891d8da67b5b0737fbac9d626a38ccb41a SHA1 a0119105d3804b76df0dd6a5e18e80db3193ece8 SHA256 07c20450e7ab139b723945e3aa0748f55209c0da097253b25074149c847044e4 +EBUILD ekeyd-1.1.3-r1.ebuild 4195 RMD160 7ab761faac5792a74c03bf18f5b4ffa955e1132e SHA1 fc42d6e82d3bc17ab296c04f998de1f93ed974ac SHA256 12e592b9dea61605dcde5f910cff11db522b500628f96fabbaecaee0a00efc10 EBUILD ekeyd-1.1.3.ebuild 4146 RMD160 4b71c1f56fa5fe2223252d04723c9faa648e4fa3 SHA1 90aa886ae71a7e035ece217800f9ea15e0df4de2 SHA256 fec902a9e6f1a4d31cd6b283e2b1f6235497db00aaed50e9f4e46ea98d65ba72 -MISC ChangeLog 3904 RMD160 3a661dd4602912b4ffc8beb13c56d90422388f05 SHA1 a1cefad3c68762600f0877faab500a81ab245e9e SHA256 68d9cc7900e77bf2e6f79258b67bd69051f474f5c21f70ff438888d76b7537d2 -MISC metadata.xml 401 RMD160 988224226b2b1e56ca024b6866deb0291faf3ab7 SHA1 17ae474fa2c6964cc4feab7173ec86f1062b9197 SHA256 3e04add274d3b051cdc073d9b3b8272861caff36bec655e6c86cf2a4fabb66c4 +MISC ChangeLog 4176 RMD160 3dcbfc86170c4801ca943bc70f5d8f7c2a3faa3e SHA1 bab7d32e5d39a87b0ff53e20d92caa6643b85ed3 SHA256 e1f89087a0738097a6ff997e16116ee881d21707dbe3819763629b5993a5b6e8 +MISC metadata.xml 619 RMD160 a2b1c4bc5ba935096e78992db51ee7d129e21b30 SHA1 2d82a2c0c31be9a52b57ce055de3fb3bbde28544 SHA256 f7a7ec084ae9aec5e7b5bfc14fc853bdb56f427b8577eb494576079ae5205aa9 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (GNU/Linux) -iEYEARECAAYFAkycjuEACgkQAiZjviIA2XiGnwCcD3NF+QVi0CRlmYQj//Ri4rsS -MK4AoNlb1tZYG9tlF0H2T17x0/SriJOk -=8GBF +iEYEARECAAYFAkyj0ckACgkQAiZjviIA2Xj78ACfSTPfx7621Ze5FBVl/D4pv6vm +zt8AmgKcWevhsqWItyPFt6scaw/hxrzL +=fa8C -----END PGP SIGNATURE----- diff --git a/app-crypt/ekeyd/ekeyd-1.1.3-r1.ebuild b/app-crypt/ekeyd/ekeyd-1.1.3-r1.ebuild new file mode 100644 index 000000000000..d369e138eff4 --- /dev/null +++ b/app-crypt/ekeyd/ekeyd-1.1.3-r1.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-crypt/ekeyd/ekeyd-1.1.3-r1.ebuild,v 1.1 2010/09/29 23:54:46 flameeyes Exp $ + +EAPI=2 + +inherit multilib linux-info + +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 ~x86" + +IUSE="usb kernel_linux" + +RDEPEND="dev-lang/lua + usb? ( virtual/libusb:0 )" +DEPEND="${RDEPEND}" +RDEPEND="${RDEPEND} + dev-libs/luasocket + kernel_linux? ( sys-fs/udev ) + usb? ( !kernel_linux? ( sys-apps/usbutils ) )" + +CONFIG_CHECK="~USB_ACM" + +pkg_setup() { + if use kernel_linux && ! use usb && linux_config_exists; then + check_extra_config + fi +} + +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 + + epatch "${FILESDIR}"/${PN}-1.1.1-earlyboot.patch + epatch "${FILESDIR}"/${P}-libusb_compat.patch + + # We moved the binaries around + sed -i -e 's:$BINPATH/ekey-ulusbd:/usr/libexec/ekey-ulusbd:' \ + doc/ekeyd-udev || 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}" \ + BUILD_ULUSBD=$(use usb && echo yes || echo no) \ + install || die "emake install failed" + + # We move the daemons around to avoid polluting the available + # commands. + dodir /usr/libexec + mv "${D}"/usr/sbin/ekey*d "${D}"/usr/libexec + + # Install them manually because we don't want them gzipped + doman daemon/{ekeyd,ekey-setkey,ekey-rekey,ekeydctl}.8 \ + daemon/ekeyd.conf.5 || die + + newinitd "${FILESDIR}"/${PN}.init ${PN} || die + + if use usb; then + if ! use kernel_linux; then + newinitd "${FILESDIR}"/ekey-ulusbd.init ekey-ulusbd || die + newconfd "${FILESDIR}"/ekey-ulusbd.conf ekey-ulusbd || die + fi + doman daemon/ekey-ulusbd.8 || die + fi + + dodoc daemon/README* AUTHORS WARNING ChangeLog || die + + if use kernel_linux; then + insinto /etc/udev/rules.d + if use usb; then + newins doc/60-UDEKEY01-UDS.rules 70-ekey-ulusbd.rules || die + else + newins doc/60-UDEKEY01.rules 70-${PN}.rules || die + fi + + exeinto /$(get_libdir)/udev + doexe doc/ekeyd-udev || die + fi +} + +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" + elog "" + + if use usb; then + if use kernel_linux; then + elog "You're going to use the userland USB daemon, the udev rules" + elog "will be used accordingly. If you want to use the CDC driver" + elog "please disable the usb USE flag." + else + elog "You're going to use the userland USB daemon, since your OS" + elog "does not support udev, you should start the ekey-ulusbd" + elog "service before ekeyd." + fi + else + if use kernel_linux; then + elog "Some versions of Linux have a faulty CDC ACM driver that stops" + elog "EntropyKey from working properly; please check the compatibility" + elog "table at http://www.entropykey.co.uk/download/" + else + elog "Make sure your operating system supports the CDC ACM driver" + elog "or otherwise you won't be able to use the EntropyKey." + fi + elog "" + elog "If you're unsure about the working state of the CDC ACM driver" + elog "enable the usb USE flag and use the userland USB daemon" + fi +} diff --git a/app-crypt/ekeyd/files/ekeyd-1.1.3-libusb_compat.patch b/app-crypt/ekeyd/files/ekeyd-1.1.3-libusb_compat.patch new file mode 100644 index 000000000000..e97f4e12ba3e --- /dev/null +++ b/app-crypt/ekeyd/files/ekeyd-1.1.3-libusb_compat.patch @@ -0,0 +1,14 @@ +Index: ekeyd-1.1.3/daemon/ekey-ulusbd.c +=================================================================== +--- ekeyd-1.1.3.orig/daemon/ekey-ulusbd.c ++++ ekeyd-1.1.3/daemon/ekey-ulusbd.c +@@ -100,7 +100,8 @@ find_usb_device(char *busmatch, char *de + + #if LIBUSB_HAS_DETACH_KERNEL_DRIVER_NP + if ((r = usb_detach_kernel_driver_np(devh, EKEY_IFACE)) != 0) { +- if (r != -ENODATA) { ++ /* libusb_compat-0.1.3 mistakenly translate ENODATA to ENOENT */ ++ if (r != -ENODATA && r != -ENOENT) { + fprintf(stderr, + "Unable to detach Entropy Key at %s/%s from kernel\n", + busmatch, devmatch); diff --git a/app-crypt/ekeyd/metadata.xml b/app-crypt/ekeyd/metadata.xml index 85ddda26dec9..b12952fd840a 100644 --- a/app-crypt/ekeyd/metadata.xml +++ b/app-crypt/ekeyd/metadata.xml @@ -8,7 +8,10 @@ <use> <flag name='usb'> Build the libusb-based userland daemon for accessing the - entropykey (alternative to the CDC USB driver). + EntropyKey (alternative to the CDC USB driver). It is suggested + to use this option by default, as the CDC driver in the kernel + often seems to be fragile (or the gadget implementation on the + EntropyKey is too buggy), and can cause various problems. </flag> </use> </pkgmetadata> |