summarylogtreecommitdiffstats
diff options
context:
space:
mode:
author0xReki2015-06-08 15:06:47 +0200
committer0xReki2015-06-08 15:06:47 +0200
commit6362895686e34971b3371d87c42b69a4cbab7574 (patch)
treef2d5e2e35f1ec11b6d67343e34a7476301f8dc6f
downloadaur-6362895686e34971b3371d87c42b69a4cbab7574.tar.gz
Initial Transition to AUR 4
-rw-r--r--.SRCINFO40
-rw-r--r--PKGBUILD67
-rw-r--r--gnupg-large-rsa-2.1.3.patch53
-rw-r--r--install25
4 files changed, 185 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..534c442a54ed
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,40 @@
+pkgbase = gnupg-large-rsa
+ pkgdesc = Complete and free implementation of the OpenPGP standard - with fixes to make large RSA keys really work (and even bigger keys)
+ pkgver = 2.1.3
+ pkgrel = 2
+ url = http://www.gnupg.org/
+ install = install
+ arch = i686
+ arch = x86_64
+ license = GPL
+ makedepends = libldap
+ makedepends = libusb-compat
+ depends = npth
+ depends = libgpg-error
+ depends = libgcrypt
+ depends = libksba
+ depends = libassuan
+ depends = pinentry
+ depends = bzip2
+ depends = readline
+ depends = gnutls
+ optdepends = libldap: gpg2keys_ldap
+ optdepends = libusb-compat: scdaemon
+ provides = dirmngr
+ provides = gnupg2=2.1.3
+ provides = gnupg=2.1.3
+ conflicts = dirmngr
+ conflicts = gnupg2
+ conflicts = gnupg
+ replaces = dirmngr
+ replaces = gnupg2
+ replaces = gnupg
+ source = ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-2.1.3.tar.bz2
+ source = ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-2.1.3.tar.bz2.sig
+ source = gnupg-large-rsa-2.1.3.patch
+ sha1sums = 091e69ec1ce3f0032e6b135e4da561e8d46d20a7
+ sha1sums = SKIP
+ sha1sums = 72bb0fc9e28702332cb7eba1e631c9f37ee10c30
+
+pkgname = gnupg-large-rsa
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..35443e00ce9d
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,67 @@
+# Maintainer: “0xReki” <mail@0xreki.de>
+# Contributor: Gaetan Bisson <bisson@archlinux.org>
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
+# Contributor: Andreas Radke <andyrtr@archlinux.org>
+# Contributor: Judd Vinet <jvinet@zeroflux.org>
+
+pkgname=gnupg-large-rsa
+_pkgname=gnupg
+pkgver=2.1.3
+pkgrel=2
+pkgdesc='Complete and free implementation of the OpenPGP standard - with fixes to make large RSA keys really work (and even bigger keys)'
+url='http://www.gnupg.org/'
+license=('GPL')
+arch=('i686' 'x86_64')
+optdepends=('libldap: gpg2keys_ldap'
+ 'libusb-compat: scdaemon')
+makedepends=('libldap' 'libusb-compat')
+depends=('npth' 'libgpg-error' 'libgcrypt' 'libksba' 'libassuan'
+ 'pinentry' 'bzip2' 'readline' 'gnutls')
+validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6'
+ '46CC730865BB5C78EBABADCF04376F3EE0856959'
+ '031EC2536E580D8EA286A9F22071B08A33BD3F06'
+ 'D238EA65D64C67ED4C3073F28A861B1C7EFD60D9')
+source=("ftp://ftp.gnupg.org/gcrypt/${_pkgname}/${_pkgname}-${pkgver}.tar.bz2"{,.sig} "${pkgname}-${pkgver}.patch")
+sha1sums=('091e69ec1ce3f0032e6b135e4da561e8d46d20a7'
+ 'SKIP'
+ '72bb0fc9e28702332cb7eba1e631c9f37ee10c30')
+
+install=install
+
+conflicts=('dirmngr' 'gnupg2' 'gnupg')
+provides=('dirmngr' "gnupg2=${pkgver}" "gnupg=${pkgver}" )
+replaces=('dirmngr' 'gnupg2' 'gnupg')
+
+prepare() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ patch -p1 < ${srcdir}/${pkgname}-${pkgver}.patch
+ sed '/noinst_SCRIPTS = gpg-zip/c bin_SCRIPTS += gpg-zip' -i tools/Makefile.in
+}
+
+build() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --sbindir=/usr/bin \
+ --libexecdir=/usr/lib/gnupg \
+ --enable-symcryptrun \
+ --enable-gpgtar \
+ --enable-large-secmem
+
+ make
+}
+
+check() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ make check
+}
+
+package() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ ln -s gpg2 "${pkgdir}"/usr/bin/gpg
+ ln -s gpgv2 "${pkgdir}"/usr/bin/gpgv
+ ln -s gpg2.1.gz "${pkgdir}"/usr/share/man/man1/gpg.1.gz
+ rm "${pkgdir}/usr/share/gnupg/com-certs.pem" # FS#33059
+}
diff --git a/gnupg-large-rsa-2.1.3.patch b/gnupg-large-rsa-2.1.3.patch
new file mode 100644
index 000000000000..8aef5fedfd31
--- /dev/null
+++ b/gnupg-large-rsa-2.1.3.patch
@@ -0,0 +1,53 @@
+diff -ru gnupg-2.1.3/configure gnupg-2.1.3-patched/configure
+--- gnupg-2.1.3/configure 2015-02-11 19:29:17.000000000 +0100
++++ gnupg-2.1.3-patched/configure 2015-03-01 15:55:46.824184533 +0100
+@@ -2840,7 +2840,7 @@
+
+ ac_config_headers="$ac_config_headers config.h"
+
+-am__api_version='1.14'
++am__api_version='1.15'
+
+ # Find a good install program. We prefer a C program (faster),
+ # so one script is as good as another. But avoid the broken or
+diff -ru gnupg-2.1.3/configure.ac gnupg-2.1.3-patched/configure.ac
+--- gnupg-2.1.3/configure.ac 2015-02-03 19:08:51.000000000 +0100
++++ gnupg-2.1.3-patched/configure.ac 2015-03-01 15:55:46.837517867 +0100
+@@ -19,7 +19,7 @@
+
+ # Process this file with autoconf to produce a configure script.
+ AC_PREREQ(2.61)
+-min_automake_version="1.14"
++min_automake_version="1.15"
+
+ # To build a release you need to create a tag with the version number
+ # (git tag -s gnupg-2.n.m) and run "./autogen.sh --force". Please
+@@ -229,7 +229,7 @@
+ large_secmem=$enableval, large_secmem=no)
+ AC_MSG_RESULT($large_secmem)
+ if test "$large_secmem" = yes ; then
+- SECMEM_BUFFER_SIZE=65536
++ SECMEM_BUFFER_SIZE=67108864
+ else
+ SECMEM_BUFFER_SIZE=32768
+ fi
+diff -ru gnupg-2.1.3/g10/keygen.c gnupg-2.1.3-patched/g10/keygen.c
+--- gnupg-2.1.3/g10/keygen.c 2015-02-10 21:56:43.000000000 +0100
++++ gnupg-2.1.3-patched/g10/keygen.c 2015-03-01 15:59:55.870861973 +0100
+@@ -1553,7 +1553,7 @@
+ int err;
+ char *keyparms;
+ char nbitsstr[35];
+- const unsigned maxsize = (opt.flags.large_rsa ? 8192 : 4096);
++ const unsigned maxsize = (opt.flags.large_rsa ? 14336 : 4096);
+
+ assert (is_RSA(algo));
+
+@@ -2047,6 +2047,7 @@
+
+ case PUBKEY_ALGO_RSA:
+ min=1024;
++ max = (opt.flags.large_rsa ? 14336 : 4096);
+ break;
+ }
+
diff --git a/install b/install
new file mode 100644
index 000000000000..67bbe1b85ca9
--- /dev/null
+++ b/install
@@ -0,0 +1,25 @@
+info_dir=/usr/share/info
+info_files=(gnupg.info gnupg.info-1 gnupg.info-2)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for f in ${info_files[@]}; do
+ usr/bin/install-info ${info_dir}/$f ${info_dir}/dir 2> /dev/null
+ done
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for f in ${info_files[@]}; do
+ usr/bin/install-info --delete ${info_dir}/$f ${info_dir}/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install
+
+ # Fix upgrade to 2.1; see FS#42798
+ [ $(vercmp $2 2.1.0-4) = -1 ] &&
+ dirmngr </dev/null &>/dev/null ||
+ return 0
+}