diff options
author | Diego Elio Pettenò <flameeyes@gentoo.org> | 2011-04-16 23:56:26 +0000 |
---|---|---|
committer | Diego Elio Pettenò <flameeyes@gentoo.org> | 2011-04-16 23:56:26 +0000 |
commit | 96905ff26dd868ff4e6ffcab8ea1e4bae1f55be4 (patch) | |
tree | 00600aec5aba312eeea92d3c631c0e857d864d89 | |
parent | Version bump. Drop old patches. (diff) | |
download | gentoo-2-96905ff26dd868ff4e6ffcab8ea1e4bae1f55be4.tar.gz gentoo-2-96905ff26dd868ff4e6ffcab8ea1e4bae1f55be4.tar.bz2 gentoo-2-96905ff26dd868ff4e6ffcab8ea1e4bae1f55be4.zip |
Revision bump: patch gpgsm-gencert.sh to actually work; remove openct and pcsc-lite USE flags: smartcard USE flag now enables scdaemon, and usb enables the internal CCID driver; don't depend on a particular implementation since there are multiple options; use EAPI=4 and REQUIRED_USE to block static support with smartcard.
(Portage version: 2.2.0_alpha30/cvs/Linux x86_64)
-rw-r--r-- | app-crypt/gnupg/ChangeLog | 13 | ||||
-rw-r--r-- | app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch | 32 | ||||
-rw-r--r-- | app-crypt/gnupg/gnupg-2.0.17-r1.ebuild | 144 | ||||
-rw-r--r-- | app-crypt/gnupg/metadata.xml | 47 |
4 files changed, 222 insertions, 14 deletions
diff --git a/app-crypt/gnupg/ChangeLog b/app-crypt/gnupg/ChangeLog index 321f712c5fe7..7cfec0e7b4c6 100644 --- a/app-crypt/gnupg/ChangeLog +++ b/app-crypt/gnupg/ChangeLog @@ -1,6 +1,17 @@ # ChangeLog for app-crypt/gnupg # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/ChangeLog,v 1.411 2011/03/23 20:37:17 xarthisius Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/ChangeLog,v 1.412 2011/04/16 23:56:26 flameeyes Exp $ + +*gnupg-2.0.17-r1 (16 Apr 2011) + + 16 Apr 2011; Diego E. Pettenò <flameeyes@gentoo.org> + +gnupg-2.0.17-r1.ebuild, +files/gnupg-2.0.17-gpgsm-gencert.patch, + metadata.xml: + Revision bump: patch gpgsm-gencert.sh to actually work; remove openct and + pcsc-lite USE flags: smartcard USE flag now enables scdaemon, and usb enables + the internal CCID driver; don't depend on a particular implementation since + there are multiple options; use EAPI=4 and REQUIRED_USE to block static + support with smartcard. 23 Mar 2011; Kacper Kowalik <xarthisius@gentoo.org> gnupg-2.0.17.ebuild: ppc/ppc64 stable wrt #355265 diff --git a/app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch b/app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch new file mode 100644 index 000000000000..88a95fac0072 --- /dev/null +++ b/app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch @@ -0,0 +1,32 @@ +From c34486a64c223bcbfbb57d9abcf107d684b815b6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Diego=20Elio=20Petten=C3=B2?= <flameeyes@gmail.com> +Date: Sun, 17 Apr 2011 01:34:39 +0200 +Subject: [PATCH] gpgsm-gencert.sh: make sure not to abort after creating temp + file. + +--- + tools/gpgsm-gencert.sh | 8 ++++---- + 1 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/tools/gpgsm-gencert.sh b/tools/gpgsm-gencert.sh +index b209c8e..e7c812f 100755 +--- a/tools/gpgsm-gencert.sh ++++ b/tools/gpgsm-gencert.sh +@@ -178,10 +178,10 @@ Key-Length: $KEY_LENGTH + Key-Usage: $KEY_USAGE + Name-DN: $NAME + EOF +-[ -n "$KEY_GRIP" ] && echo "Key-Grip: $KEY_GRIP" +-[ -n "$EMAIL_ADDRESSES" ] && echo "$EMAIL_ADDRESSES" +-[ -n "$DNS_ADDRESSES" ] && echo "$DNS_ADDRESSES" +-[ -n "$URI_ADDRESSES" ] && echo "$URI_ADDRESSES" ++[ -n "$KEY_GRIP" ] && echo "Key-Grip: $KEY_GRIP" || true ++[ -n "$EMAIL_ADDRESSES" ] && echo "$EMAIL_ADDRESSES" || true ++[ -n "$DNS_ADDRESSES" ] && echo "$DNS_ADDRESSES" || true ++[ -n "$URI_ADDRESSES" ] && echo "$URI_ADDRESSES" || true + ) > "$file_parameter" + + +-- +1.7.5.rc1 + diff --git a/app-crypt/gnupg/gnupg-2.0.17-r1.ebuild b/app-crypt/gnupg/gnupg-2.0.17-r1.ebuild new file mode 100644 index 000000000000..5194ce7728fa --- /dev/null +++ b/app-crypt/gnupg/gnupg-2.0.17-r1.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/gnupg-2.0.17-r1.ebuild,v 1.1 2011/04/16 23:56:26 flameeyes Exp $ + +EAPI="4" + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="The GNU Privacy Guard, a GPL pgp replacement" +HOMEPAGE="http://www.gnupg.org/" +SRC_URI="mirror://gnupg/gnupg/${P}.tar.bz2" +# SRC_URI="ftp://ftp.gnupg.org/gcrypt/${PN}/${P}.tar.bz2" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="adns bzip2 caps doc ldap nls static selinux smartcard usb" + +COMMON_DEPEND_LIBS=" + >=dev-libs/libassuan-2 + >=dev-libs/libgcrypt-1.4 + >=dev-libs/libgpg-error-1.7 + >=dev-libs/libksba-1.0.7 + >=dev-libs/pth-1.3.7 + >=net-misc/curl-7.10 + adns? ( >=net-libs/adns-1.4 ) + bzip2? ( app-arch/bzip2 ) + smartcard? ( usb? ( =virtual/libusb-0* ) ) + ldap? ( net-nds/openldap )" +COMMON_DEPEND_BINS="|| ( app-crypt/pinentry app-crypt/pinentry-qt )" + +# Existence of executables is checked during configuration. +DEPEND="${COMMON_DEPEND_LIBS} + ${COMMON_DEPEND_BINS} + static? ( + >=dev-libs/libassuan-2[static-libs] + >=dev-libs/libgcrypt-1.4[static-libs] + >=dev-libs/libgpg-error-1.7[static-libs] + >=dev-libs/libksba-1.0.7[static-libs] + ) + nls? ( sys-devel/gettext ) + doc? ( sys-apps/texinfo )" + +RDEPEND="!static? ( ${COMMON_DEPEND_LIBS} ) + ${COMMON_DEPEND_BINS} + virtual/mta + !app-crypt/gpg-agent + !<=app-crypt/gnupg-2.0.1 + selinux? ( sec-policy/selinux-gnupg ) + nls? ( virtual/libintl )" + +REQUIRED_USE="smartcard? ( !static )" + +src_prepare() { + epatch "${FILESDIR}"/${P}-gpgsm-gencert.patch +} + +src_configure() { + local myconf= + + # 'USE=static' support was requested: + # gnupg1: bug #29299 + # gnupg2: bug #159623 + use static && append-ldflags -static + + if use smartcard; then + myconf+=" --enable-scdaemon $(use_enable usb ccid-driver)" + else + myconf+=" --disable-scdaemon" + fi + + econf \ + --docdir="${EPREFIX}/usr/share/doc/${PF}" \ + --enable-gpg \ + --enable-gpgsm \ + --enable-agent \ + ${myconf} \ + $(use_with adns) \ + $(use_enable bzip2) \ + $(use_enable !elibc_SunOS symcryptrun) \ + $(use_enable nls) \ + $(use_enable ldap) \ + $(use_with caps capabilities) \ + CC_FOR_BUILD="$(tc-getBUILD_CC)" +} + +src_compile() { + emake || die "emake failed" + + if use doc; then + cd doc + emake html || die "emake html failed" + fi +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + emake DESTDIR="${D}" -f doc/Makefile uninstall-nobase_dist_docDATA || die + rm -r "${ED}usr/share/gnupg/help"* || die + + dodoc ChangeLog NEWS README THANKS TODO VERSION doc/FAQ doc/DETAILS \ + doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER doc/help* || die "dodoc failed" + + dosym gpg2 /usr/bin/gpg || die + dosym gpgv2 /usr/bin/gpgv || die + dosym gpg2keys_hkp /usr/libexec/gpgkeys_hkp || die + dosym gpg2keys_finger /usr/libexec/gpgkeys_finger || die + dosym gpg2keys_curl /usr/libexec/gpgkeys_curl || die + if use ldap; then + dosym gpg2keys_ldap /usr/libexec/gpgkeys_ldap || die + fi + echo ".so man1/gpg2.1" > "${ED}usr/share/man/man1/gpg.1" + echo ".so man1/gpgv2.1" > "${ED}usr/share/man/man1/gpgv.1" + + dodir /etc/env.d || die + echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >>"${ED}etc/env.d/30gnupg" + + if use doc; then + dohtml doc/gnupg.html/* doc/*.png || die "dohtml failed" + fi +} + +pkg_postinst() { + elog "If you wish to view images emerge:" + elog "media-gfx/xloadimage, media-gfx/xli or any other viewer" + elog "Remember to use photo-viewer option in configuration file to activate" + elog "the right viewer." + elog + if use smartcard; then + elog "To use your OpenPGP smartcard (or token) with GnuPG you need one of" + use usb && elog " - a CCID-compatible reader, used directly through dev-libs/libusb;" + elog " - sys-apps/pcsc-lite and a compatible reader device;" + elog " - dev-libs/openct and a compatible reader device;" + elog " - a reader device and drivers exporting either PC/SC or CT-API interfaces." + elog "" + elog "General hint: you probably want to try installing sys-apps/pcsc-lite and" + elog "app-crypt/ccid first." + fi + + ewarn "Please remember to restart gpg-agent if a different version" + ewarn "of the agent is currently used. If you are unsure of the gpg" + ewarn "agent you are using please run 'killall gpg-agent'," + ewarn "and to start a fresh daemon just run 'gpg-agent --daemon'." +} diff --git a/app-crypt/gnupg/metadata.xml b/app-crypt/gnupg/metadata.xml index 4123a58ff39f..59580940df2c 100644 --- a/app-crypt/gnupg/metadata.xml +++ b/app-crypt/gnupg/metadata.xml @@ -1,17 +1,38 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<herd>crypto</herd> -<maintainer> - <email>crypto@gentoo.org</email> - <name>Crypto Herd</name> -</maintainer> -<longdescription> -GnuPG is a complete and free replacement for PGP. Because it does not use the patented IDEA algorithm, it can be used without any restrictions. GnuPG is a RFC2440 (OpenPGP) compliant application. -</longdescription> -<use> - <flag name='idea'>Use the patented IDEA algorithm</flag> - <flag name='openct'>build using <pkg>dev-libs/openct</pkg> compat</flag> - <flag name='pcsc-lite'>build with <pkg>sys-apps/pcsc-lite</pkg></flag> -</use> + <herd>crypto</herd> + <maintainer> + <email>crypto@gentoo.org</email> + <name>Crypto Herd</name> + </maintainer> + <longdescription> + GnuPG is a complete and free replacement for PGP. Because it does + not use the patented IDEA algorithm, it can be used without any + restrictions. GnuPG is a RFC2440 (OpenPGP) compliant application. + </longdescription> + <use> + <flag name='idea'>Use the patented IDEA algorithm</flag> + <flag name='openct'> + Bring in <pkg>dev-libs/openct</pkg> as a dependency; enable + scdaemon. + </flag> + <flag name='pcsc-lite'> + Bring in <pkg>sys-apps/pcsc-lite</pkg> as a dependency; enable + scdaemon. + </flag> + <flag name='smartcard' restrict='<app-crypt/gnupg-2.0.17-r1'> + Bring in <pkg>dev-libs/libusb</pkg> as a dependency; enable + scdaemon. + </flag> + <flag name='smartcard' restrict='>=app-crypt/gnupg-2.0.17-r1'> + Build scdaemon software. Enables usage of OpenPGP cards. For + other type of smartcards, try + <pkg>app-crypt/gnupg-pkcs11-scd</pkg>. + </flag> + <flag name='usb' restrict='>=app-crypt/gnupg-2.0.17-r1'> + Build direct CCID access for scdaemon; requires + <pkg>dev-libs/libusb</pkg>. + </flag> + </use> </pkgmetadata> |