Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] WIP: Sequoia Chameleon GnuPG
@ 2022-12-26 22:59 jcgruenhage
  2022-12-27  1:24 ` [PR REVIEW] " sgn
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: jcgruenhage @ 2022-12-26 22:59 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1528 bytes --]

There is a new pull request by jcgruenhage against master on the void-packages repository

https://github.com/jcgruenhage/void-packages sequoia-chameleon-gnupg-0.1.1_1
https://github.com/void-linux/void-packages/pull/41306

WIP: Sequoia Chameleon GnuPG
Based on #41270
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I'm sure the `alternatives` approach taken here is not quite good enough yet
(man pages not included for example), but I think it's the right direction to
take here.

Regardless though, it doesn't quite work for me yet, at least with my Yubikey
backed keys.

<!--
#### New package
- This new package conforms to the [package
  requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements):
  **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/41306.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-sequoia-chameleon-gnupg-0.1.1_1-41306.patch --]
[-- Type: text/x-diff, Size: 11594 bytes --]

From 5274110ba5d6e52d95a1975f2c62d4b10e3dbb21 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Sat, 24 Dec 2022 16:24:32 +0100
Subject: [PATCH 1/6] libgpg-error: update to 1.46.

---
 srcpkgs/libgpg-error/template | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libgpg-error/template b/srcpkgs/libgpg-error/template
index 0bcf2a42e221..32fc7f573718 100644
--- a/srcpkgs/libgpg-error/template
+++ b/srcpkgs/libgpg-error/template
@@ -1,14 +1,15 @@
 # Template file for 'libgpg-error'
 pkgname=libgpg-error
-version=1.45
+version=1.46
 revision=1
 build_style=gnu-configure
+configure_args="--enable-install-gpg-error-config"
 short_desc="Library for error values used by GnuPG component"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz>"
 license="LGPL-2.1-or-later, GPL-2.0-or-later"
 homepage="https://www.gnupg.org"
 distfiles="https://www.gnupg.org/ftp/gcrypt/${pkgname}/${pkgname}-${version}.tar.bz2"
-checksum=570f8ee4fb4bff7b7495cff920c275002aea2147e9a1d220c068213267f80a26
+checksum=b7e11a64246bbe5ef37748de43b245abd72cfcd53c9ae5e7fc5ca59f1c81268d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends="qemu-user-static"

From 9160209029f823351a726e913231de3bc75193c0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Sat, 24 Dec 2022 16:24:37 +0100
Subject: [PATCH 2/6] libksba: update to 1.6.3.

---
 srcpkgs/libksba/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libksba/template b/srcpkgs/libksba/template
index adc6202164c1..e5a59cba024e 100644
--- a/srcpkgs/libksba/template
+++ b/srcpkgs/libksba/template
@@ -1,15 +1,15 @@
 # Template file for 'libksba'
 pkgname=libksba
-version=1.6.0
+version=1.6.3
 revision=1
 build_style=gnu-configure
 makedepends="libgpg-error-devel"
 short_desc="CMS and X.509 access library"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz>"
 license="GPL-2.0-or-later,LGPL-3.0-or-later"
 homepage="https://www.gnupg.org/related_software/libksba/index.html"
-distfiles="https://gnupg.org/ftp/gcrypt/${pkgname}/${pkgname}-${version}.tar.bz2"
-checksum=dad683e6f2d915d880aa4bed5cea9a115690b8935b78a1bbe01669189307a48b
+distfiles="https://gnupg.org/ftp/gcrypt/libksba/libksba-${version}.tar.bz2"
+checksum=3f72c68db30971ebbf14367527719423f0a4d5f8103fc9f4a1c01a9fa440de5c
 
 libksba-devel_package() {
 	depends="libgpg-error-devel ${sourcepkg}>=${version}_${revision}"

From 081be9786130a58ac03a8bd644578b2c43546b31 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Sat, 24 Dec 2022 16:24:21 +0100
Subject: [PATCH 3/6] gnupg: update to 2.4.0.

---
 ...csclite-library-on-musl-libc-as-well.patch |  6 +-
 ...ests-gpgme-for-in-source-tree-builds.patch | 63 +++++++++++++++++++
 srcpkgs/gnupg/template                        | 11 +++-
 3 files changed, 74 insertions(+), 6 deletions(-)
 create mode 100644 srcpkgs/gnupg/patches/0002-tests-Fix-tests-gpgme-for-in-source-tree-builds.patch

diff --git a/srcpkgs/gnupg/patches/0001-use-versioned-pcsclite-library-on-musl-libc-as-well.patch b/srcpkgs/gnupg/patches/0001-use-versioned-pcsclite-library-on-musl-libc-as-well.patch
index f677cb0d8ea7..aa2e924c3356 100644
--- a/srcpkgs/gnupg/patches/0001-use-versioned-pcsclite-library-on-musl-libc-as-well.patch
+++ b/srcpkgs/gnupg/patches/0001-use-versioned-pcsclite-library-on-musl-libc-as-well.patch
@@ -1,8 +1,8 @@
-From 5242588814474653bb0de15ebda3b0c6bb539ff6 Mon Sep 17 00:00:00 2001
+From 7f672f6281b0b27be8279cc5e422aeb55ffcf0fb Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
  <congdanhqx@gmail.com>
 Date: Sun, 29 Sep 2019 12:32:46 +0700
-Subject: [PATCH] use versioned pcsclite library on musl-libc as well
+Subject: [PATCH 1/2] use versioned pcsclite library on musl-libc as well
 
 ---
  scd/scdaemon.c | 2 +-
@@ -22,5 +22,5 @@ index e43769f85..97449eff2 100644
  #else
  #define DEFAULT_PCSC_DRIVER "libpcsclite.so"
 -- 
-2.38.0
+2.39.0
 
diff --git a/srcpkgs/gnupg/patches/0002-tests-Fix-tests-gpgme-for-in-source-tree-builds.patch b/srcpkgs/gnupg/patches/0002-tests-Fix-tests-gpgme-for-in-source-tree-builds.patch
new file mode 100644
index 000000000000..cd0f695043a6
--- /dev/null
+++ b/srcpkgs/gnupg/patches/0002-tests-Fix-tests-gpgme-for-in-source-tree-builds.patch
@@ -0,0 +1,63 @@
+From a4ec37b589a0646f2e756921f7abbb578cb5464d Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <gniibe@fsij.org>
+Date: Wed, 21 Dec 2022 10:52:24 +0900
+Subject: [PATCH 2/2] tests: Fix tests/gpgme for in-source-tree builds.
+
+* tests/gpgme/Makefile.am: Don't use setup.scm/ dir.
+* tests/gpgme/all-tests.scm: Fix the name of the environment.
+
+--
+
+GnuPG-bug-id: 6313
+Fixes-commit: c19ea75f10d6278569619f90977ce7c820e9319d
+Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
+---
+ tests/gpgme/Makefile.am   | 5 ++---
+ tests/gpgme/all-tests.scm | 4 ++--
+ 2 files changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/tests/gpgme/Makefile.am b/tests/gpgme/Makefile.am
+index ca7be13df..ae98db4a0 100644
+--- a/tests/gpgme/Makefile.am
++++ b/tests/gpgme/Makefile.am
+@@ -47,8 +47,7 @@ check: xcheck
+ 
+ .PHONY: xcheck
+ xcheck:
+-	@$(MKDIR_P) setup.scm/tests \
+-	  tests/gpg lang/qt/tests lang/python/tests
++	@$(MKDIR_P) tests/gpg lang/qt/tests lang/python/tests
+ 	$(TESTS_ENVIRONMENT) $(abs_top_builddir)/tests/gpgscm/gpgscm$(EXEEXT) \
+ 	  $(abs_srcdir)/run-tests.scm $(TESTFLAGS) $(TESTS)
+ 
+@@ -61,4 +60,4 @@ CLEANFILES = *.log report.xml
+ all-local: $(required_pgms)
+ 
+ clean-local:
+-	-rm -rf setup.scm/tests tests/gpg lang/qt/tests lang/python/tests
++	-rm -rf tests lang
+diff --git a/tests/gpgme/all-tests.scm b/tests/gpgme/all-tests.scm
+index 1746c4ee1..aef7d6a21 100644
+--- a/tests/gpgme/all-tests.scm
++++ b/tests/gpgme/all-tests.scm
+@@ -41,7 +41,7 @@
+     (test::scm
+      #f
+      #f
+-     (path-join "tests" "gpgme" "setup.scm" "tests" "gpg")
++     (path-join "tests" "gpgme" "tests" "gpg")
+      (in-srcdir "tests" "gpgme" "setup.scm")
+      "--" "tests" "gpg")))
+  (define setup-py
+@@ -49,7 +49,7 @@
+     (test::scm
+      #f
+      #f
+-     (path-join "tests" "gpgme" "setup.scm" "lang" "python" "tests")
++     (path-join "tests" "gpgme" "lang" "python" "tests")
+      (in-srcdir "tests" "gpgme" "setup.scm")
+      "--" "lang" "python" "tests")))
+ 
+-- 
+2.39.0
+
diff --git a/srcpkgs/gnupg/template b/srcpkgs/gnupg/template
index 08751d2bea31..a531ffca4b46 100644
--- a/srcpkgs/gnupg/template
+++ b/srcpkgs/gnupg/template
@@ -1,6 +1,6 @@
 # Template file for 'gnupg'
 pkgname=gnupg
-version=2.3.8
+version=2.4.0
 revision=1
 build_style=gnu-configure
 configure_args="$(vopt_enable ldap)
@@ -8,7 +8,7 @@ configure_args="$(vopt_enable ldap)
  --with-libassuan-prefix=${XBPS_CROSS_BASE}/usr
  --with-ksba-prefix=${XBPS_CROSS_BASE}/usr
  --with-npth-prefix=${XBPS_CROSS_BASE}/usr"
-hostmakedepends="pkg-config gettext"
+hostmakedepends="pkg-config gettext gettext-devel-tools automake"
 makedepends="bzip2-devel gnutls-devel libassuan-devel libcurl-devel
  libksba-devel libldap-devel libusb-compat-devel npth-devel sqlite-devel
  libgcrypt-devel"
@@ -18,10 +18,15 @@ maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz>"
 license="GPL-3.0-or-later"
 homepage="https://www.gnupg.org/"
 distfiles="https://gnupg.org/ftp/gcrypt/gnupg/gnupg-${version}.tar.bz2"
-checksum=540b7a40e57da261fb10ef521a282e0021532a80fd023e75fb71757e8a4969ed
+checksum=1d79158dd01d992431dd2e3facb89fdac97127f89784ea2cb610c600fb0c1483
+alternatives="gpg:/usr/bin/gpg:/usr/bin/gpg2 gpgv:/usr/bin/gpgv:/usr/bin/gpgv2"
 build_options="ldap"
 build_options_default="ldap"
 
+pre_configure() {
+	autoreconf -fi
+}
+
 post_install() {
 	vmkdir usr/share/examples
 	rm -r $DESTDIR/usr/share/doc/gnupg/examples/systemd-user

From b534ac239a2fd8d2b178491f7cb952ec9936dbe8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Mon, 26 Dec 2022 23:53:25 +0100
Subject: [PATCH 4/6] gnupg: use alternatives for gpg and gpgv

---
 srcpkgs/gnupg/template | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/gnupg/template b/srcpkgs/gnupg/template
index a531ffca4b46..d151124063dc 100644
--- a/srcpkgs/gnupg/template
+++ b/srcpkgs/gnupg/template
@@ -1,7 +1,7 @@
 # Template file for 'gnupg'
 pkgname=gnupg
 version=2.4.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="$(vopt_enable ldap)
  --with-libgcrypt-prefix=${XBPS_CROSS_BASE}/usr
@@ -32,6 +32,9 @@ post_install() {
 	rm -r $DESTDIR/usr/share/doc/gnupg/examples/systemd-user
 	mv ${DESTDIR}/usr/share/doc/gnupg/examples \
 		${DESTDIR}/usr/share/examples/gnupg
+
+	mv ${DESTDIR}/usr/bin/gpg ${DESTDIR}/usr/bin/gpg2
+	mv ${DESTDIR}/usr/bin/gpgv ${DESTDIR}/usr/bin/gpgv2
 }
 
 gnupg2_package() {

From a3bf1220a76462ea30cfe2f8a3d3f5c7bc8796c7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Mon, 26 Dec 2022 23:52:56 +0100
Subject: [PATCH 5/6] gnupg1: use alternatives for gpg and gpgv

---
 srcpkgs/gnupg1/template | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/gnupg1/template b/srcpkgs/gnupg1/template
index c0c837477939..f331824455a5 100644
--- a/srcpkgs/gnupg1/template
+++ b/srcpkgs/gnupg1/template
@@ -1,7 +1,7 @@
 # Template file for 'gnupg1'
 pkgname=gnupg1
 version=1.4.23
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-threads=posix --enable-noexecstack
  gnupg_cv_regex_broken=no"
@@ -14,6 +14,7 @@ license="GPL-3.0-or-later"
 homepage="https://www.gnupg.org/"
 distfiles="https://www.gnupg.org/ftp/gcrypt/gnupg/gnupg-${version}.tar.bz2"
 checksum=c9462f17e651b6507848c08c430c791287cd75491f8b5a8b50c6ed46b12678ba
+alternatives="gpg:/usr/bin/gpg:/usr/bin/gpg1 gpgv:/usr/bin/gpgv:/usr/bin/gpgv1"
 
 CFLAGS="-fcommon"
 

From 589bdf8428122f11d46d12be498d01e1a1b104a5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Mon, 26 Dec 2022 23:23:32 +0100
Subject: [PATCH 6/6] New package: sequoia-chameleon-gnupg-0.1.1

---
 srcpkgs/sequoia-chameleon-gnupg/template | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 srcpkgs/sequoia-chameleon-gnupg/template

diff --git a/srcpkgs/sequoia-chameleon-gnupg/template b/srcpkgs/sequoia-chameleon-gnupg/template
new file mode 100644
index 000000000000..e817374a1bdc
--- /dev/null
+++ b/srcpkgs/sequoia-chameleon-gnupg/template
@@ -0,0 +1,18 @@
+# Template file for 'sequoia-chameleon-gnupg'
+pkgname=sequoia-chameleon-gnupg
+version=0.1.1
+revision=1
+build_style=cargo
+_deps="nettle-devel openssl-devel"
+hostmakedepends="pkg-config llvm clang ${_deps}"
+makedepends="${_deps}"
+depends="gnupg"
+short_desc="Sequoia reimplementation of the GnuPG CLI"
+maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz>"
+license="GPL-3.0-or-later"
+homepage="https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg"
+distfiles="https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/archive/v${version}/sequoia-chameleon-gnupg-v${version}.tar.gz"
+checksum=94a981abd3906c660740d8c75d13f288bec65f8bc4ed3ca9d34d35cfcb57ebb7
+alternatives="gpg:/usr/bin/gpg:/usr/bin/sequoia-chameleon-gpg gpgv:/usr/bin/gpgv:/usr/bin/sequoia-chameleon-gpgv"
+# The tests don't pass with 2.3.8 or 2.4.0
+make_check=no

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR REVIEW] WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
@ 2022-12-27  1:24 ` sgn
  2022-12-27  1:25 ` sgn
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: sgn @ 2022-12-27  1:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 578 bytes --]

New review comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/41306#discussion_r1057391792

Comment:
No, this will break various program miserably:
```
$ gpgconf --check-programs                                            =79% =70%
gpg:OpenPGP:/usr/bin/gpg:1:1:
gpgsm:S/MIME:/usr/bin/gpgsm:1:1:
keyboxd:Public Keys:/usr/libexec/keyboxd:1:1:
gpg-agent:Private Keys:/usr/bin/gpg-agent:1:1:
scdaemon:Smartcards:/usr/libexec/scdaemon:1:1:
dirmngr:Network:/usr/bin/dirmngr:1:1:
pinentry:Passphrase Entry:/usr/bin/pinentry:1:1:
```

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR REVIEW] WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
  2022-12-27  1:24 ` [PR REVIEW] " sgn
@ 2022-12-27  1:25 ` sgn
  2022-12-27  1:31 ` sgn
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: sgn @ 2022-12-27  1:25 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 525 bytes --]

New review comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/41306#discussion_r1057391792

Comment:
No, this will break various program miserably:
```
$ gpgconf --check-programs
gpg:OpenPGP:/usr/bin/gpg:1:1:
gpgsm:S/MIME:/usr/bin/gpgsm:1:1:
keyboxd:Public Keys:/usr/libexec/keyboxd:1:1:
gpg-agent:Private Keys:/usr/bin/gpg-agent:1:1:
scdaemon:Smartcards:/usr/libexec/scdaemon:1:1:
dirmngr:Network:/usr/bin/dirmngr:1:1:
pinentry:Passphrase Entry:/usr/bin/pinentry:1:1:
```

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR REVIEW] WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
  2022-12-27  1:24 ` [PR REVIEW] " sgn
  2022-12-27  1:25 ` sgn
@ 2022-12-27  1:31 ` sgn
  2022-12-27  8:05 ` jcgruenhage
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: sgn @ 2022-12-27  1:31 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 208 bytes --]

New review comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/41306#discussion_r1057393076

Comment:
Remove this block of diff, and remove `autotools` from template.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR REVIEW] WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
                   ` (2 preceding siblings ...)
  2022-12-27  1:31 ` sgn
@ 2022-12-27  8:05 ` jcgruenhage
  2022-12-27  8:05 ` jcgruenhage
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: jcgruenhage @ 2022-12-27  8:05 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 170 bytes --]

New review comment by jcgruenhage on void-packages repository

https://github.com/void-linux/void-packages/pull/41306#discussion_r1057507925

Comment:
Care to elaborate?

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR REVIEW] WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
                   ` (3 preceding siblings ...)
  2022-12-27  8:05 ` jcgruenhage
@ 2022-12-27  8:05 ` jcgruenhage
  2022-12-27  8:23 ` jcgruenhage
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: jcgruenhage @ 2022-12-27  8:05 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 231 bytes --]

New review comment by jcgruenhage on void-packages repository

https://github.com/void-linux/void-packages/pull/41306#discussion_r1057508107

Comment:
This bit should be addressed in #41270, so I'm marking this thread as resolved.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR REVIEW] WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
                   ` (4 preceding siblings ...)
  2022-12-27  8:05 ` jcgruenhage
@ 2022-12-27  8:23 ` jcgruenhage
  2022-12-27 10:10 ` [PR PATCH] [Updated] " jcgruenhage
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: jcgruenhage @ 2022-12-27  8:23 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 464 bytes --]

New review comment by jcgruenhage on void-packages repository

https://github.com/void-linux/void-packages/pull/41306#discussion_r1057507925

Comment:
Care to elaborate? I wrote in the topic above that this approach probably has problems, so this comment doesn't really add anything. Can you give me at least one of:
 - What is the concrete problem with the approach of using `alternatives` here? How will this break?
 - What is the approach that you'd suggest?

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR PATCH] [Updated] WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
                   ` (5 preceding siblings ...)
  2022-12-27  8:23 ` jcgruenhage
@ 2022-12-27 10:10 ` jcgruenhage
  2022-12-27 12:02 ` [PR REVIEW] " sgn
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: jcgruenhage @ 2022-12-27 10:10 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1661 bytes --]

There is an updated pull request by jcgruenhage against master on the void-packages repository

https://github.com/jcgruenhage/void-packages sequoia-chameleon-gnupg-0.1.1_1
https://github.com/void-linux/void-packages/pull/41306

WIP: Sequoia Chameleon GnuPG
See https://preview.sequoia-pgp.org/blog/2022/12/19/202212-chameleon-0.1/ for what this is.

Based on #41270
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I'm sure the `alternatives` approach taken here is not quite good enough yet
(man pages not included for example), but I think it's the right direction to
take here.

Regardless though, it doesn't quite work for me yet, at least with my Yubikey
backed keys.

<!--
#### New package
- This new package conforms to the [package
  requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements):
  **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/41306.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-sequoia-chameleon-gnupg-0.1.1_1-41306.patch --]
[-- Type: text/x-diff, Size: 9653 bytes --]

From 5274110ba5d6e52d95a1975f2c62d4b10e3dbb21 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Sat, 24 Dec 2022 16:24:32 +0100
Subject: [PATCH 1/6] libgpg-error: update to 1.46.

---
 srcpkgs/libgpg-error/template | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libgpg-error/template b/srcpkgs/libgpg-error/template
index 0bcf2a42e221..32fc7f573718 100644
--- a/srcpkgs/libgpg-error/template
+++ b/srcpkgs/libgpg-error/template
@@ -1,14 +1,15 @@
 # Template file for 'libgpg-error'
 pkgname=libgpg-error
-version=1.45
+version=1.46
 revision=1
 build_style=gnu-configure
+configure_args="--enable-install-gpg-error-config"
 short_desc="Library for error values used by GnuPG component"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz>"
 license="LGPL-2.1-or-later, GPL-2.0-or-later"
 homepage="https://www.gnupg.org"
 distfiles="https://www.gnupg.org/ftp/gcrypt/${pkgname}/${pkgname}-${version}.tar.bz2"
-checksum=570f8ee4fb4bff7b7495cff920c275002aea2147e9a1d220c068213267f80a26
+checksum=b7e11a64246bbe5ef37748de43b245abd72cfcd53c9ae5e7fc5ca59f1c81268d
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends="qemu-user-static"

From 9160209029f823351a726e913231de3bc75193c0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Sat, 24 Dec 2022 16:24:37 +0100
Subject: [PATCH 2/6] libksba: update to 1.6.3.

---
 srcpkgs/libksba/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libksba/template b/srcpkgs/libksba/template
index adc6202164c1..e5a59cba024e 100644
--- a/srcpkgs/libksba/template
+++ b/srcpkgs/libksba/template
@@ -1,15 +1,15 @@
 # Template file for 'libksba'
 pkgname=libksba
-version=1.6.0
+version=1.6.3
 revision=1
 build_style=gnu-configure
 makedepends="libgpg-error-devel"
 short_desc="CMS and X.509 access library"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz>"
 license="GPL-2.0-or-later,LGPL-3.0-or-later"
 homepage="https://www.gnupg.org/related_software/libksba/index.html"
-distfiles="https://gnupg.org/ftp/gcrypt/${pkgname}/${pkgname}-${version}.tar.bz2"
-checksum=dad683e6f2d915d880aa4bed5cea9a115690b8935b78a1bbe01669189307a48b
+distfiles="https://gnupg.org/ftp/gcrypt/libksba/libksba-${version}.tar.bz2"
+checksum=3f72c68db30971ebbf14367527719423f0a4d5f8103fc9f4a1c01a9fa440de5c
 
 libksba-devel_package() {
 	depends="libgpg-error-devel ${sourcepkg}>=${version}_${revision}"

From f79f9c27c1414f8f19852c3f93ddf76c45eedb03 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Sat, 24 Dec 2022 16:24:21 +0100
Subject: [PATCH 3/6] gnupg: update to 2.4.0.

---
 ...d-pcsclite-library-on-musl-libc-as-well.patch |  6 +++---
 srcpkgs/gnupg/template                           | 16 +++++++++++++---
 2 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/gnupg/patches/0001-use-versioned-pcsclite-library-on-musl-libc-as-well.patch b/srcpkgs/gnupg/patches/0001-use-versioned-pcsclite-library-on-musl-libc-as-well.patch
index f677cb0d8ea7..aa2e924c3356 100644
--- a/srcpkgs/gnupg/patches/0001-use-versioned-pcsclite-library-on-musl-libc-as-well.patch
+++ b/srcpkgs/gnupg/patches/0001-use-versioned-pcsclite-library-on-musl-libc-as-well.patch
@@ -1,8 +1,8 @@
-From 5242588814474653bb0de15ebda3b0c6bb539ff6 Mon Sep 17 00:00:00 2001
+From 7f672f6281b0b27be8279cc5e422aeb55ffcf0fb Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
  <congdanhqx@gmail.com>
 Date: Sun, 29 Sep 2019 12:32:46 +0700
-Subject: [PATCH] use versioned pcsclite library on musl-libc as well
+Subject: [PATCH 1/2] use versioned pcsclite library on musl-libc as well
 
 ---
  scd/scdaemon.c | 2 +-
@@ -22,5 +22,5 @@ index e43769f85..97449eff2 100644
  #else
  #define DEFAULT_PCSC_DRIVER "libpcsclite.so"
 -- 
-2.38.0
+2.39.0
 
diff --git a/srcpkgs/gnupg/template b/srcpkgs/gnupg/template
index 08751d2bea31..753b17e1f033 100644
--- a/srcpkgs/gnupg/template
+++ b/srcpkgs/gnupg/template
@@ -1,13 +1,18 @@
 # Template file for 'gnupg'
 pkgname=gnupg
-version=2.3.8
+version=2.4.0
 revision=1
+# We're building outside of the source tree, because upstream told us to:
+# https://dev.gnupg.org/T6313#166339
+build_wrksrc=build
 build_style=gnu-configure
 configure_args="$(vopt_enable ldap)
  --with-libgcrypt-prefix=${XBPS_CROSS_BASE}/usr
  --with-libassuan-prefix=${XBPS_CROSS_BASE}/usr
  --with-ksba-prefix=${XBPS_CROSS_BASE}/usr
- --with-npth-prefix=${XBPS_CROSS_BASE}/usr"
+ --with-npth-prefix=${XBPS_CROSS_BASE}/usr
+ --enable-all-tests"
+configure_script="../configure"
 hostmakedepends="pkg-config gettext"
 makedepends="bzip2-devel gnutls-devel libassuan-devel libcurl-devel
  libksba-devel libldap-devel libusb-compat-devel npth-devel sqlite-devel
@@ -18,10 +23,15 @@ maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz>"
 license="GPL-3.0-or-later"
 homepage="https://www.gnupg.org/"
 distfiles="https://gnupg.org/ftp/gcrypt/gnupg/gnupg-${version}.tar.bz2"
-checksum=540b7a40e57da261fb10ef521a282e0021532a80fd023e75fb71757e8a4969ed
+checksum=1d79158dd01d992431dd2e3facb89fdac97127f89784ea2cb610c600fb0c1483
+make_check_pre='env TESTFLAGS="--parallel=${XBPS_MAKEJOBS}"'
 build_options="ldap"
 build_options_default="ldap"
 
+post_extract() {
+	mkdir build
+}
+
 post_install() {
 	vmkdir usr/share/examples
 	rm -r $DESTDIR/usr/share/doc/gnupg/examples/systemd-user

From 4e4dcdf055b8e43bfaedc7de2452184a85ea36e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Mon, 26 Dec 2022 23:53:25 +0100
Subject: [PATCH 4/6] gnupg: use alternatives for gpg and gpgv

---
 srcpkgs/gnupg/template | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/gnupg/template b/srcpkgs/gnupg/template
index 753b17e1f033..4344ea98e9eb 100644
--- a/srcpkgs/gnupg/template
+++ b/srcpkgs/gnupg/template
@@ -1,7 +1,7 @@
 # Template file for 'gnupg'
 pkgname=gnupg
 version=2.4.0
-revision=1
+revision=2
 # We're building outside of the source tree, because upstream told us to:
 # https://dev.gnupg.org/T6313#166339
 build_wrksrc=build
@@ -24,6 +24,7 @@ license="GPL-3.0-or-later"
 homepage="https://www.gnupg.org/"
 distfiles="https://gnupg.org/ftp/gcrypt/gnupg/gnupg-${version}.tar.bz2"
 checksum=1d79158dd01d992431dd2e3facb89fdac97127f89784ea2cb610c600fb0c1483
+alternatives="gpg:/usr/bin/gpg:/usr/bin/gpg2 gpgv:/usr/bin/gpgv:/usr/bin/gpgv2"
 make_check_pre='env TESTFLAGS="--parallel=${XBPS_MAKEJOBS}"'
 build_options="ldap"
 build_options_default="ldap"
@@ -37,6 +38,9 @@ post_install() {
 	rm -r $DESTDIR/usr/share/doc/gnupg/examples/systemd-user
 	mv ${DESTDIR}/usr/share/doc/gnupg/examples \
 		${DESTDIR}/usr/share/examples/gnupg
+
+	mv ${DESTDIR}/usr/bin/gpg ${DESTDIR}/usr/bin/gpg2
+	mv ${DESTDIR}/usr/bin/gpgv ${DESTDIR}/usr/bin/gpgv2
 }
 
 gnupg2_package() {

From 6e4e33e7e358333d0c4fc7fe2828b68ac126a534 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Mon, 26 Dec 2022 23:52:56 +0100
Subject: [PATCH 5/6] gnupg1: use alternatives for gpg and gpgv

---
 srcpkgs/gnupg1/template | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/gnupg1/template b/srcpkgs/gnupg1/template
index c0c837477939..f331824455a5 100644
--- a/srcpkgs/gnupg1/template
+++ b/srcpkgs/gnupg1/template
@@ -1,7 +1,7 @@
 # Template file for 'gnupg1'
 pkgname=gnupg1
 version=1.4.23
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-threads=posix --enable-noexecstack
  gnupg_cv_regex_broken=no"
@@ -14,6 +14,7 @@ license="GPL-3.0-or-later"
 homepage="https://www.gnupg.org/"
 distfiles="https://www.gnupg.org/ftp/gcrypt/gnupg/gnupg-${version}.tar.bz2"
 checksum=c9462f17e651b6507848c08c430c791287cd75491f8b5a8b50c6ed46b12678ba
+alternatives="gpg:/usr/bin/gpg:/usr/bin/gpg1 gpgv:/usr/bin/gpgv:/usr/bin/gpgv1"
 
 CFLAGS="-fcommon"
 

From 1aeff85459c9f7c17c29ee44b7a36bd46bbcdd29 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?=
 <jan.christian@gruenhage.xyz>
Date: Mon, 26 Dec 2022 23:23:32 +0100
Subject: [PATCH 6/6] New package: sequoia-chameleon-gnupg-0.1.1

---
 srcpkgs/sequoia-chameleon-gnupg/template | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 srcpkgs/sequoia-chameleon-gnupg/template

diff --git a/srcpkgs/sequoia-chameleon-gnupg/template b/srcpkgs/sequoia-chameleon-gnupg/template
new file mode 100644
index 000000000000..e817374a1bdc
--- /dev/null
+++ b/srcpkgs/sequoia-chameleon-gnupg/template
@@ -0,0 +1,18 @@
+# Template file for 'sequoia-chameleon-gnupg'
+pkgname=sequoia-chameleon-gnupg
+version=0.1.1
+revision=1
+build_style=cargo
+_deps="nettle-devel openssl-devel"
+hostmakedepends="pkg-config llvm clang ${_deps}"
+makedepends="${_deps}"
+depends="gnupg"
+short_desc="Sequoia reimplementation of the GnuPG CLI"
+maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz>"
+license="GPL-3.0-or-later"
+homepage="https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg"
+distfiles="https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/archive/v${version}/sequoia-chameleon-gnupg-v${version}.tar.gz"
+checksum=94a981abd3906c660740d8c75d13f288bec65f8bc4ed3ca9d34d35cfcb57ebb7
+alternatives="gpg:/usr/bin/gpg:/usr/bin/sequoia-chameleon-gpg gpgv:/usr/bin/gpgv:/usr/bin/sequoia-chameleon-gpgv"
+# The tests don't pass with 2.3.8 or 2.4.0
+make_check=no

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR REVIEW] WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
                   ` (6 preceding siblings ...)
  2022-12-27 10:10 ` [PR PATCH] [Updated] " jcgruenhage
@ 2022-12-27 12:02 ` sgn
  2022-12-27 12:05 ` sgn
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: sgn @ 2022-12-27 12:02 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 636 bytes --]

New review comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/41306#discussion_r1057639125

Comment:
Software that wants gnupg 2.x supposed to call `gpgconf --check-programs` and parse the output to detect which program provides which functionality. You're configure gpg 2.x to be built as `/usr/bin/gpg` but `/usr/bin/gpg` is not what it's claimed to (if the alternatives point to something else). At the very least configure gnupg with `--enable-gpg-is-gpg2`. I have no idea if any software expect gnupg functionalities, :shrug: 

Anyway, remember to remove the symlink in gnupg2 packages.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR REVIEW] WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
                   ` (7 preceding siblings ...)
  2022-12-27 12:02 ` [PR REVIEW] " sgn
@ 2022-12-27 12:05 ` sgn
  2023-03-28  1:56 ` github-actions
  2023-04-12  1:52 ` [PR PATCH] [Closed]: " github-actions
  10 siblings, 0 replies; 12+ messages in thread
From: sgn @ 2022-12-27 12:05 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 488 bytes --]

New review comment by sgn on void-packages repository

https://github.com/void-linux/void-packages/pull/41306#discussion_r1057640589

Comment:
IOW, the broken scenario is:

- users install both `gnupg` and `gnupg1`
- alternative set to `gnupg1`
- software call `gpgconf --check-programs` and think `/usr/bin/gpg` provides GnuPG v2 functionalities and process to call `/usr/bin/gpg` with GnuPG v2 flags.

Substitute `gnupg1` with any package provides alternatives for `/usr/bin/gpg`

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
                   ` (8 preceding siblings ...)
  2022-12-27 12:05 ` sgn
@ 2023-03-28  1:56 ` github-actions
  2023-04-12  1:52 ` [PR PATCH] [Closed]: " github-actions
  10 siblings, 0 replies; 12+ messages in thread
From: github-actions @ 2023-03-28  1:56 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 305 bytes --]

New comment by github-actions[bot] on void-packages repository

https://github.com/void-linux/void-packages/pull/41306#issuecomment-1486094297

Comment:
Pull Requests become stale 90 days after last activity and are closed 14 days after that.  If this pull request is still relevant bump it or assign it.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PR PATCH] [Closed]: WIP: Sequoia Chameleon GnuPG
  2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
                   ` (9 preceding siblings ...)
  2023-03-28  1:56 ` github-actions
@ 2023-04-12  1:52 ` github-actions
  10 siblings, 0 replies; 12+ messages in thread
From: github-actions @ 2023-04-12  1:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1567 bytes --]

There's a closed pull request on the void-packages repository

WIP: Sequoia Chameleon GnuPG
https://github.com/void-linux/void-packages/pull/41306

Description:
See https://preview.sequoia-pgp.org/blog/2022/12/19/202212-chameleon-0.1/ for what this is.

Based on #41270
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I'm sure the `alternatives` approach taken here is not quite good enough yet
(man pages not included for example), but I think it's the right direction to
take here.

<del>Regardless though, it doesn't quite work for me yet, at least with my Yubikey
backed keys.</del> It has started to work now, and I can't reproduce the failure from before anymore.

<!--
#### New package
- This new package conforms to the [package
  requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements):
  **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2023-04-12  1:52 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-26 22:59 [PR PATCH] WIP: Sequoia Chameleon GnuPG jcgruenhage
2022-12-27  1:24 ` [PR REVIEW] " sgn
2022-12-27  1:25 ` sgn
2022-12-27  1:31 ` sgn
2022-12-27  8:05 ` jcgruenhage
2022-12-27  8:05 ` jcgruenhage
2022-12-27  8:23 ` jcgruenhage
2022-12-27 10:10 ` [PR PATCH] [Updated] " jcgruenhage
2022-12-27 12:02 ` [PR REVIEW] " sgn
2022-12-27 12:05 ` sgn
2023-03-28  1:56 ` github-actions
2023-04-12  1:52 ` [PR PATCH] [Closed]: " github-actions

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).