[PATCH 0/3] Add patatt and update b4

  • Done
  • quality assurance status badge
Details
4 participants
  • Kyle Meyer
  • Ludovic Courtès
  • Maxime Devos
  • Xinglu Chen
Owner
unassigned
Submitted by
Kyle Meyer
Severity
normal
K
K
Kyle Meyer wrote on 27 May 2021 16:50
(address . guix-patches@gnu.org)
20210527145046.11773-1-kyle@kyleam.com
This series updates b4 to the latest version. b4 now uses a separate tool for
patch attestation (added in patch 2), which in turn uses a license that's not
in guix/licenses.scm (added in patch 1).

[1/3] licenses: Add Expat No Attribution license.
[2/3] gnu: Add patatt.
[3/3] gnu: b4: Update to 0.7.0.

gnu/packages/version-control.scm | 37 +++++++++++++++++++++++---------
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 ++++++++-
3 files changed, 38 insertions(+), 11 deletions(-)


base-commit: 014421ee271f1790d81c9660d34ac26c4f2bf8b6
--
2.32.0.rc1.229.g3e70b5a671
K
K
Kyle Meyer wrote on 27 May 2021 16:54
[PATCH 1/3] licenses: Add Expat No Attribution license.
(address . 48702@debbugs.gnu.org)
20210527145421.11903-1-kyle@kyleam.com
* guix/licenses.scm (expat-0): New variable.
* guix/import/utils.scm (spdx-string->license): Add MIT-0.
---
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 +++++++++-
2 files changed, 11 insertions(+), 1 deletion(-)

Toggle diff (57 lines)
diff --git a/guix/import/utils.scm b/guix/import/utils.scm
index d817318a91..22d558cf09 100644
--- a/guix/import/utils.scm
+++ b/guix/import/utils.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2020 Helio Machado <0x2b3bfa0+guix@googlemail.com>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -155,6 +156,7 @@ (define (spdx-string->license str)
("CPL-1.0" 'license:cpl1.0)
("EPL-1.0" 'license:epl1.0)
("MIT" 'license:expat)
+ ("MIT-0" 'license:expat-0)
("FTL" 'license:freetype)
("GFDL-1.1" 'license:fdl1.1+)
("GFDL-1.2" 'license:fdl1.2+)
diff --git a/guix/licenses.scm b/guix/licenses.scm
index 4718ccf83f..6e3bc5f488 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -17,6 +17,7 @@
;;; Copyright © 2020 André Batista <nandre@riseup.net>
;;; Copyright © 2020 Helio Machado <0x2b3bfa0+guix@googlemail.com>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -55,7 +56,7 @@ (define-module (guix licenses)
edl1.0
epl1.0
epl2.0
- expat
+ expat expat-0
freetype
freebsd-doc
giftware
@@ -306,6 +307,13 @@ (define expat
"http://directory.fsf.org/wiki/License:Expat"
"https://www.gnu.org/licenses/license-list.html#Expat"))
+(define expat-0
+ (license "Expat No Attribution"
+ ;; Note: There is a later formulation of the same license at
+ ;; <https://github.com/aws/mit-0>.
+ "https://romanrm.net/mit-zero"
+ "Expat license with the attribution paragraph removed."))
+
(define freetype
(license "Freetype"
"http://directory.fsf.org/wiki/License:Freetype"
--
2.32.0.rc1.229.g3e70b5a671
K
K
Kyle Meyer wrote on 27 May 2021 16:54
[PATCH 2/3] gnu: Add patatt.
(address . 48702@debbugs.gnu.org)
20210527145421.11903-2-kyle@kyleam.com
* gnu/packages/version-control.scm (patatt): New variable.
---
gnu/packages/version-control.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 80842ecf0c..6d555c16d9 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -109,6 +109,7 @@ (define-module (gnu packages version-control)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
+ #:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
@@ -2422,6 +2423,28 @@ (define-public grokmirror
based on a manifest file published by servers.")
(license license:gpl3+)))
+(define-public patatt
+ (package
+ (name "patatt")
+ (version "0.4.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
+ (base32 "0gqcrigq8alxydl6w5kxwdjfkpjhqprpwa3180sbkjlnvans71fs"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
+ `(("python-pynacl" ,python-pynacl)))
+ (home-page "https://git.kernel.org/pub/scm/utils/patatt/patatt.git")
+ (synopsis "Tool for cryptographic patch attestation")
+ (description "This utility provides end-to-end cryptographic attestation
+of patches sent via mail. It does so by adapting the DKIM email signature
+standard to include cryptographic signatures via the X-Developer-Signature
+email header.")
+ (license license:expat-0)))
+
(define-public b4
(package
(name "b4")
--
2.32.0.rc1.229.g3e70b5a671
K
K
Kyle Meyer wrote on 27 May 2021 16:54
[PATCH 3/3] gnu: b4: Update to 0.7.0.
(address . 48702@debbugs.gnu.org)
20210527145421.11903-3-kyle@kyleam.com
* gnu/packages/version-control.scm (b4): Update to 0.7.0.
[propagated-inputs]: Add patatt.
[source]: Drop snippet for issue that is now fixed upstream.
---
gnu/packages/version-control.scm | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)

Toggle diff (38 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 6d555c16d9..dbb40914da 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -2448,27 +2448,21 @@ (define-public patatt
(define-public b4
(package
(name "b4")
- (version "0.6.2")
+ (version "0.7.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "b4" version))
(sha256
- (base32 "1j904dy9cwxl85k2ngc498q5cdnqwsmw3jibjr1m55w8aqdck68z"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Fixes issue with dependency requirements being too strict. See upstream commit:
- ;; https://git.kernel.org/pub/scm/utils/b4/b4.git/commit/?id=31348a14afdb1d39e7faf9576eaddea1ced76e19
- (substitute* "setup.py"
- (("~=") ">="))
- #t))))
+ (base32 "089j33yyx827qpy8qkw3xk1cwis650bj5xjdn2qgckxs3sfklw7i"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(inputs
`(("python-dkimpy" ,python-dkimpy)
("python-dnspython" ,python-dnspython)
("python-requests" ,python-requests)))
+ (propagated-inputs
+ `(("patatt" ,patatt)))
(home-page "https://git.kernel.org/pub/scm/utils/b4/b4.git")
(synopsis "Tool for working with patches in public-inbox archives")
(description
--
2.32.0.rc1.229.g3e70b5a671
X
X
Xinglu Chen wrote on 27 May 2021 23:49
Re: [bug#48702] [PATCH 0/3] Add patatt and update b4
87im33kft3.fsf@yoctocell.xyz
On Thu, May 27 2021, Kyle Meyer wrote:

Toggle quote (8 lines)
> This series updates b4 to the latest version. b4 now uses a separate tool for
> patch attestation (added in patch 2), which in turn uses a license that's not
> in guix/licenses.scm (added in patch 1).
>
> [1/3] licenses: Add Expat No Attribution license.
> [2/3] gnu: Add patatt.
> [3/3] gnu: b4: Update to 0.7.0.

b4 and patatt both build for me, and I was able to check the DKIM
signature and generate a git-am-ready mbox with it.

Toggle snippet (18 lines)
~/src/linux $ b4 am 20200313231252.64999-1-keescook@chromium.org
Looking up https://lore.kernel.org/r/20200313231252.64999-1-keescook%40chromium.org
Analyzing 5 messages in the thread
Checking attestation on all messages, may take a moment...
---
? [PATCH v2 1/2] selftests/harness: Move test child waiting logic
? [PATCH v2 2/2] selftests/harness: Handle timeouts cleanly
---
? Signed: DKIM/chromium.org
---
Total patches: 2
---
Cover: ./v2_20200313_keescook_selftests_harness_handle_timeouts_cleanly.cover
Link: https://lore.kernel.org/r/20200313231252.64999-1-keescook@chromium.org
Base: not found
git am ./v2_20200313_keescook_selftests_harness_handle_timeouts_cleanly.mbx

Thanks for working on this!
-----BEGIN PGP SIGNATURE-----

iQJJBAEBCAAzFiEEAVhh4yyK5+SEykIzrPUJmaL7XHkFAmCwE/gVHHB1YmxpY0B5
b2N0b2NlbGwueHl6AAoJEKz1CZmi+1x5G+sP/jNL1dVLHjI7YElprqfgrO95PKbQ
KL5NPzDA8DJPSLw5HXCYd/SpFFMDsbn7OTsJ979ifw8qoubUXVkGGKB6C32oflU9
jU/3TIIEdDnTrC4KVbK2He64vIAq6iQscOHOLBuc7tcpZHUMepPzXivFtohq80r6
yrwdWWdsZSEyUlrAw0RlRPM9+CUEe/1lf5y5CmiaEbzmVPBKv4HGWRTZSc5LEGvB
poYrukYcOYMk9EmWmby3VgW6lgGSpM6qoLKQMRsYC/HEVg9pMCkLNtd1esgDeiR2
0A4I7seHic/TjWQM8+rf4oG+1h20pmBjE40iH7HVI7yyCbsG2G0VcnsWRW4ZKbbg
efXxJxNhqaZL3XvQTK/pk2635+ve3vrAun588xczpI4Ibq5qLgdlJrlGMDmRJgoP
F20VDao8rP+hT9vhnW08gW0x6hLBh9p9VudUglCrTvTSP6oXgx7EJHPO1369u83K
R2e4Qx5+nDlIC/SKRLNnCvdEGqxqNVUhUbxJhhD7j2i3vIMOJckj+M3qsNamUWBs
qvWzIbA9A62upk0ISpyabXCuAmbZyOKKcRW8wu4x9NFXn/ndvL7iuWltdBIOl67u
MiGz0sPiDD0ld3tnkDPQZOefwR89nUPhEvDUlgwn7s3atJc3GUZ/eCfQ13GUqtUI
jnz89zgl1N9B8YN0
=6Gl3
-----END PGP SIGNATURE-----

K
K
Kyle Meyer wrote on 28 May 2021 01:05
(name . Xinglu Chen)(address . public@yoctocell.xyz)(address . 48702@debbugs.gnu.org)
878s3zixqd.fsf@kyleam.com
Xinglu Chen writes:

Toggle quote (3 lines)
> b4 and patatt both build for me, and I was able to check the DKIM
> signature and generate a git-am-ready mbox with it.

Great, thank you for testing things out on your end.
K
K
Kyle Meyer wrote on 3 Jun 2021 08:40
[PATCH v2 0/3] Add patatt and update b4
20210603064009.18820-1-kyle@kyleam.com
Since v1 of this series was sent, both patatt and b4 have had bugfix releases.
Here's a reroll with the current versions.

---

This series updates b4 to the latest version. b4 now uses a separate tool for
patch attestation (added in patch 2), which in turn uses a license that's not
in guix/licenses.scm (added in patch 1).

[1/3] licenses: Add Expat No Attribution license.
[2/3] gnu: Add patatt.
[3/3] gnu: b4: Update to 0.7.1.

gnu/packages/version-control.scm | 37 +++++++++++++++++++++++---------
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 ++++++++-
3 files changed, 38 insertions(+), 11 deletions(-)

Range-diff against v1:
1: f41fc95390 = 1: 1a4ab70088 licenses: Add Expat No Attribution license.
2: 6e1a0d76fb ! 2: f9d1ef1ac5 gnu: Add patatt.
@@ gnu/packages/version-control.scm: (define-public grokmirror
+(define-public patatt
+ (package
+ (name "patatt")
-+ (version "0.4.3")
++ (version "0.4.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
-+ (base32 "0gqcrigq8alxydl6w5kxwdjfkpjhqprpwa3180sbkjlnvans71fs"))))
++ (base32 "08v7f8rwr0gx21q2igxrw51ydlwkgcjch75xhdg0qvnknn4k1c3z"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
3: 99fea48959 ! 3: 94b7d5062c gnu: b4: Update to 0.7.0.
@@ Metadata
Author: Kyle Meyer <kyle@kyleam.com>
## Commit message ##
- gnu: b4: Update to 0.7.0.
+ gnu: b4: Update to 0.7.1.
- * gnu/packages/version-control.scm (b4): Update to 0.7.0.
+ * gnu/packages/version-control.scm (b4): Update to 0.7.1.
[propagated-inputs]: Add patatt.
[source]: Drop snippet for issue that is now fixed upstream.
@@ gnu/packages/version-control.scm: (define-public patatt
(package
(name "b4")
- (version "0.6.2")
-+ (version "0.7.0")
++ (version "0.7.1")
(source
(origin
(method url-fetch)
@@ gnu/packages/version-control.scm: (define-public patatt
- (substitute* "setup.py"
- (("~=") ">="))
- #t))))
-+ (base32 "089j33yyx827qpy8qkw3xk1cwis650bj5xjdn2qgckxs3sfklw7i"))))
++ (base32 "04hwrqpvb98m6p9qj8mlblb2ynxai7zgzrlm6kbx9q2f9xl16d9z"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(inputs

base-commit: 9e7d93f67566d52a2dc9006f02a4c2ad2be14442
--
2.31.1
K
K
Kyle Meyer wrote on 3 Jun 2021 08:40
[PATCH v2 1/3] licenses: Add Expat No Attribution license.
20210603064009.18820-2-kyle@kyleam.com
* guix/licenses.scm (expat-0): New variable.
* guix/import/utils.scm (spdx-string->license): Add MIT-0.
---
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 +++++++++-
2 files changed, 11 insertions(+), 1 deletion(-)

Toggle diff (57 lines)
diff --git a/guix/import/utils.scm b/guix/import/utils.scm
index d817318a91..22d558cf09 100644
--- a/guix/import/utils.scm
+++ b/guix/import/utils.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2020 Helio Machado <0x2b3bfa0+guix@googlemail.com>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -155,6 +156,7 @@ (define (spdx-string->license str)
("CPL-1.0" 'license:cpl1.0)
("EPL-1.0" 'license:epl1.0)
("MIT" 'license:expat)
+ ("MIT-0" 'license:expat-0)
("FTL" 'license:freetype)
("GFDL-1.1" 'license:fdl1.1+)
("GFDL-1.2" 'license:fdl1.2+)
diff --git a/guix/licenses.scm b/guix/licenses.scm
index 4718ccf83f..6e3bc5f488 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -17,6 +17,7 @@
;;; Copyright © 2020 André Batista <nandre@riseup.net>
;;; Copyright © 2020 Helio Machado <0x2b3bfa0+guix@googlemail.com>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -55,7 +56,7 @@ (define-module (guix licenses)
edl1.0
epl1.0
epl2.0
- expat
+ expat expat-0
freetype
freebsd-doc
giftware
@@ -306,6 +307,13 @@ (define expat
"http://directory.fsf.org/wiki/License:Expat"
"https://www.gnu.org/licenses/license-list.html#Expat"))
+(define expat-0
+ (license "Expat No Attribution"
+ ;; Note: There is a later formulation of the same license at
+ ;; <https://github.com/aws/mit-0>.
+ "https://romanrm.net/mit-zero"
+ "Expat license with the attribution paragraph removed."))
+
(define freetype
(license "Freetype"
"http://directory.fsf.org/wiki/License:Freetype"
--
2.31.1
K
K
Kyle Meyer wrote on 3 Jun 2021 08:40
[PATCH v2 2/3] gnu: Add patatt.
20210603064009.18820-3-kyle@kyleam.com
* gnu/packages/version-control.scm (patatt): New variable.
---
gnu/packages/version-control.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index cd262402c1..3748a326b5 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -109,6 +109,7 @@ (define-module (gnu packages version-control)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
+ #:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
@@ -2422,6 +2423,28 @@ (define-public grokmirror
based on a manifest file published by servers.")
(license license:gpl3+)))
+(define-public patatt
+ (package
+ (name "patatt")
+ (version "0.4.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
+ (base32 "08v7f8rwr0gx21q2igxrw51ydlwkgcjch75xhdg0qvnknn4k1c3z"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
+ `(("python-pynacl" ,python-pynacl)))
+ (home-page "https://git.kernel.org/pub/scm/utils/patatt/patatt.git")
+ (synopsis "Tool for cryptographic patch attestation")
+ (description "This utility provides end-to-end cryptographic attestation
+of patches sent via mail. It does so by adapting the DKIM email signature
+standard to include cryptographic signatures via the X-Developer-Signature
+email header.")
+ (license license:expat-0)))
+
(define-public b4
(package
(name "b4")
--
2.31.1
K
K
Kyle Meyer wrote on 3 Jun 2021 08:40
[PATCH v2 3/3] gnu: b4: Update to 0.7.1.
20210603064009.18820-4-kyle@kyleam.com
* gnu/packages/version-control.scm (b4): Update to 0.7.1.
[propagated-inputs]: Add patatt.
[source]: Drop snippet for issue that is now fixed upstream.
---
gnu/packages/version-control.scm | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)

Toggle diff (38 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 3748a326b5..c47a3bfe74 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -2448,27 +2448,21 @@ (define-public patatt
(define-public b4
(package
(name "b4")
- (version "0.6.2")
+ (version "0.7.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "b4" version))
(sha256
- (base32 "1j904dy9cwxl85k2ngc498q5cdnqwsmw3jibjr1m55w8aqdck68z"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Fixes issue with dependency requirements being too strict. See upstream commit:
- ;; https://git.kernel.org/pub/scm/utils/b4/b4.git/commit/?id=31348a14afdb1d39e7faf9576eaddea1ced76e19
- (substitute* "setup.py"
- (("~=") ">="))
- #t))))
+ (base32 "04hwrqpvb98m6p9qj8mlblb2ynxai7zgzrlm6kbx9q2f9xl16d9z"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(inputs
`(("python-dkimpy" ,python-dkimpy)
("python-dnspython" ,python-dnspython)
("python-requests" ,python-requests)))
+ (propagated-inputs
+ `(("patatt" ,patatt)))
(home-page "https://git.kernel.org/pub/scm/utils/b4/b4.git")
(synopsis "Tool for working with patches in public-inbox archives")
(description
--
2.31.1
K
K
Kyle Meyer wrote on 17 Jul 2021 15:09
[PATCH v3 0/3] Add patatt and update b4
(address . 48702@debbugs.gnu.org)(name . Xinglu Chen)(address . public@yoctocell.xyz)
20210717130941.25146-1-kyle@kyleam.com
Here's a reroll that 1) deals with conflicts that have popped up in
guix/licenses.scm and 2) accounts for patatt and b4 releases that have
happened since v2 was sent.

---

This series updates b4 to the latest version. b4 now uses a separate tool for
patch attestation (added in patch 2), which in turn uses a license that's not
in guix/licenses.scm (added in patch 1).

[1/3] licenses: Add Expat No Attribution license.
[2/3] gnu: Add patatt.
[3/3] gnu: b4: Update to 0.7.2.

gnu/packages/version-control.scm | 37 +++++++++++++++++++++++---------
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 ++++++++-
3 files changed, 38 insertions(+), 11 deletions(-)

Range-diff against v2:
1: 1a4ab70088 ! 1: bda992a993 licenses: Add Expat No Attribution license.
@@ guix/import/utils.scm: (define (spdx-string->license str)
## guix/licenses.scm ##
@@
- ;;; Copyright © 2020 André Batista <nandre@riseup.net>
;;; Copyright © 2020 Helio Machado <0x2b3bfa0+guix@googlemail.com>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
+ ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ guix/licenses.scm: (define-module (guix licenses)
- edl1.0
epl1.0
epl2.0
+ eupl1.2
- expat
+ expat expat-0
freetype
2: f9d1ef1ac5 ! 2: 8dec2fae21 gnu: Add patatt.
@@ gnu/packages/version-control.scm: (define-public grokmirror
+(define-public patatt
+ (package
+ (name "patatt")
-+ (version "0.4.4")
++ (version "0.4.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
-+ (base32 "08v7f8rwr0gx21q2igxrw51ydlwkgcjch75xhdg0qvnknn4k1c3z"))))
++ (base32 "06xrbm94a6mzrp6pih7pk4bbcbjh4xrf8y8qjg8va4qbvkhhcl2c"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
3: 94b7d5062c ! 3: cb85fcb68c gnu: b4: Update to 0.7.1.
@@ Metadata
Author: Kyle Meyer <kyle@kyleam.com>
## Commit message ##
- gnu: b4: Update to 0.7.1.
+ gnu: b4: Update to 0.7.2.
- * gnu/packages/version-control.scm (b4): Update to 0.7.1.
+ * gnu/packages/version-control.scm (b4): Update to 0.7.2.
[propagated-inputs]: Add patatt.
[source]: Drop snippet for issue that is now fixed upstream.
@@ gnu/packages/version-control.scm: (define-public patatt
(package
(name "b4")
- (version "0.6.2")
-+ (version "0.7.1")
++ (version "0.7.2")
(source
(origin
(method url-fetch)
@@ gnu/packages/version-control.scm: (define-public patatt
- (substitute* "setup.py"
- (("~=") ">="))
- #t))))
-+ (base32 "04hwrqpvb98m6p9qj8mlblb2ynxai7zgzrlm6kbx9q2f9xl16d9z"))))
++ (base32 "1zc75s6ikn5vlv2jhvw00saqyymh3dpr9b8p9w13fwll6v05s9nd"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(inputs

base-commit: 9cb35c02164d929fcb8929e7f454df215df8cf25
--
2.32.0
K
K
Kyle Meyer wrote on 17 Jul 2021 15:09
[PATCH v3 1/3] licenses: Add Expat No Attribution license.
(address . 48702@debbugs.gnu.org)(name . Xinglu Chen)(address . public@yoctocell.xyz)
20210717130941.25146-2-kyle@kyleam.com
* guix/licenses.scm (expat-0): New variable.
* guix/import/utils.scm (spdx-string->license): Add MIT-0.
---
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 +++++++++-
2 files changed, 11 insertions(+), 1 deletion(-)

Toggle diff (57 lines)
diff --git a/guix/import/utils.scm b/guix/import/utils.scm
index d817318a91..22d558cf09 100644
--- a/guix/import/utils.scm
+++ b/guix/import/utils.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2020 Helio Machado <0x2b3bfa0+guix@googlemail.com>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -155,6 +156,7 @@ (define (spdx-string->license str)
("CPL-1.0" 'license:cpl1.0)
("EPL-1.0" 'license:epl1.0)
("MIT" 'license:expat)
+ ("MIT-0" 'license:expat-0)
("FTL" 'license:freetype)
("GFDL-1.1" 'license:fdl1.1+)
("GFDL-1.2" 'license:fdl1.2+)
diff --git a/guix/licenses.scm b/guix/licenses.scm
index 3affe1e920..852e369bbb 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -18,6 +18,7 @@
;;; Copyright © 2020 Helio Machado <0x2b3bfa0+guix@googlemail.com>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -57,7 +58,7 @@ (define-module (guix licenses)
epl1.0
epl2.0
eupl1.2
- expat
+ expat expat-0
freetype
freebsd-doc
giftware
@@ -318,6 +319,13 @@ (define expat
"http://directory.fsf.org/wiki/License:Expat"
"https://www.gnu.org/licenses/license-list.html#Expat"))
+(define expat-0
+ (license "Expat No Attribution"
+ ;; Note: There is a later formulation of the same license at
+ ;; <https://github.com/aws/mit-0>.
+ "https://romanrm.net/mit-zero"
+ "Expat license with the attribution paragraph removed."))
+
(define freetype
(license "Freetype"
"http://directory.fsf.org/wiki/License:Freetype"
--
2.32.0
K
K
Kyle Meyer wrote on 17 Jul 2021 15:09
[PATCH v3 3/3] gnu: b4: Update to 0.7.2.
(address . 48702@debbugs.gnu.org)(name . Xinglu Chen)(address . public@yoctocell.xyz)
20210717130941.25146-4-kyle@kyleam.com
* gnu/packages/version-control.scm (b4): Update to 0.7.2.
[propagated-inputs]: Add patatt.
[source]: Drop snippet for issue that is now fixed upstream.
---
gnu/packages/version-control.scm | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)

Toggle diff (38 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index b4aa1ce776..f539f7dd77 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -2447,27 +2447,21 @@ (define-public patatt
(define-public b4
(package
(name "b4")
- (version "0.6.2")
+ (version "0.7.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "b4" version))
(sha256
- (base32 "1j904dy9cwxl85k2ngc498q5cdnqwsmw3jibjr1m55w8aqdck68z"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Fixes issue with dependency requirements being too strict. See upstream commit:
- ;; https://git.kernel.org/pub/scm/utils/b4/b4.git/commit/?id=31348a14afdb1d39e7faf9576eaddea1ced76e19
- (substitute* "setup.py"
- (("~=") ">="))
- #t))))
+ (base32 "1zc75s6ikn5vlv2jhvw00saqyymh3dpr9b8p9w13fwll6v05s9nd"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(inputs
`(("python-dkimpy" ,python-dkimpy)
("python-dnspython" ,python-dnspython)
("python-requests" ,python-requests)))
+ (propagated-inputs
+ `(("patatt" ,patatt)))
(home-page "https://git.kernel.org/pub/scm/utils/b4/b4.git")
(synopsis "Tool for working with patches in public-inbox archives")
(description
--
2.32.0
K
K
Kyle Meyer wrote on 17 Jul 2021 15:09
[PATCH v3 2/3] gnu: Add patatt.
(address . 48702@debbugs.gnu.org)(name . Xinglu Chen)(address . public@yoctocell.xyz)
20210717130941.25146-3-kyle@kyleam.com
* gnu/packages/version-control.scm (patatt): New variable.
---
gnu/packages/version-control.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 7c1dbe8b26..b4aa1ce776 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -109,6 +109,7 @@ (define-module (gnu packages version-control)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
+ #:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
@@ -2421,6 +2422,28 @@ (define-public grokmirror
based on a manifest file published by servers.")
(license license:gpl3+)))
+(define-public patatt
+ (package
+ (name "patatt")
+ (version "0.4.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
+ (base32 "06xrbm94a6mzrp6pih7pk4bbcbjh4xrf8y8qjg8va4qbvkhhcl2c"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
+ `(("python-pynacl" ,python-pynacl)))
+ (home-page "https://git.kernel.org/pub/scm/utils/patatt/patatt.git")
+ (synopsis "Tool for cryptographic patch attestation")
+ (description "This utility provides end-to-end cryptographic attestation
+of patches sent via mail. It does so by adapting the DKIM email signature
+standard to include cryptographic signatures via the X-Developer-Signature
+email header.")
+ (license license:expat-0)))
+
(define-public b4
(package
(name "b4")
--
2.32.0
K
K
Kyle Meyer wrote on 18 Sep 2021 18:28
[PATCH v4 0/3] Add patatt and update b4
(address . 48702@debbugs.gnu.org)(name . Xinglu Chen)(address . public@yoctocell.xyz)
20210918162853.25997-1-kyle@kyleam.com
Here's another reroll that 1) deals with conflicts that have popped up in
guix/licenses.scm and 2) accounts for patatt and b4 releases that happened
since v3 was sent.

---

This series updates b4 to the latest version. b4 now uses a separate tool for
patch attestation (added in patch 2), which in turn uses a license that's not
in guix/licenses.scm (added in patch 1).

[1/3] licenses: Add Expat No Attribution license.
[2/3] gnu: Add patatt.
[3/3] gnu: b4: Update to 0.8.0.

gnu/packages/version-control.scm | 37 +++++++++++++++++++++++---------
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 ++++++++-
3 files changed, 38 insertions(+), 11 deletions(-)

Range-diff against v3:
1: bda992a993 ! 1: 6c2a380249 licenses: Add Expat No Attribution license.
@@ Commit message

## guix/import/utils.scm ##
@@
- ;;; Copyright © 2020 Helio Machado <0x2b3bfa0+guix@googlemail.com>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
@@ guix/import/utils.scm: (define (spdx-string->license str)

## guix/licenses.scm ##
@@
- ;;; Copyright © 2020 Helio Machado <0x2b3bfa0+guix@googlemail.com>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+ ;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
2: 8dec2fae21 ! 2: 942db96ac1 gnu: Add patatt.
@@ gnu/packages/version-control.scm: (define-public grokmirror
+(define-public patatt
+ (package
+ (name "patatt")
-+ (version "0.4.6")
++ (version "0.4.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
-+ (base32 "06xrbm94a6mzrp6pih7pk4bbcbjh4xrf8y8qjg8va4qbvkhhcl2c"))))
++ (base32 "1jj3c2rc5lzgsk3x2bq1295g7h59y9y8vi9a0gzqh3aqka00zqak"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
3: cb85fcb68c ! 3: 3a3d16e4c3 gnu: b4: Update to 0.7.2.
@@ Metadata
Author: Kyle Meyer <kyle@kyleam.com>

## Commit message ##
- gnu: b4: Update to 0.7.2.
+ gnu: b4: Update to 0.8.0.

- * gnu/packages/version-control.scm (b4): Update to 0.7.2.
+ * gnu/packages/version-control.scm (b4): Update to 0.8.0.
[propagated-inputs]: Add patatt.
[source]: Drop snippet for issue that is now fixed upstream.

@@ gnu/packages/version-control.scm: (define-public patatt
(package
(name "b4")
- (version "0.6.2")
-+ (version "0.7.2")
++ (version "0.8.0")
(source
(origin
(method url-fetch)
@@ gnu/packages/version-control.scm: (define-public patatt
- (substitute* "setup.py"
- (("~=") ">="))
- #t))))
-+ (base32 "1zc75s6ikn5vlv2jhvw00saqyymh3dpr9b8p9w13fwll6v05s9nd"))))
++ (base32 "115ysciq15sxc8fd9hf7p0f4wnd5xapcfkmq8g33y1c8nbdxclbx"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(inputs

base-commit: 511dc6877e0664d83fd800cc601fa94c231a0d0f
--
2.33.0
K
K
Kyle Meyer wrote on 18 Sep 2021 18:28
[PATCH v4 1/3] licenses: Add Expat No Attribution license.
(address . 48702@debbugs.gnu.org)(name . Xinglu Chen)(address . public@yoctocell.xyz)
20210918162853.25997-2-kyle@kyleam.com
* guix/licenses.scm (expat-0): New variable.
* guix/import/utils.scm (spdx-string->license): Add MIT-0.
---
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 +++++++++-
2 files changed, 11 insertions(+), 1 deletion(-)

Toggle diff (57 lines)
diff --git a/guix/import/utils.scm b/guix/import/utils.scm
index a180742ca3..02ddb6783e 100644
--- a/guix/import/utils.scm
+++ b/guix/import/utils.scm
@@ -9,6 +9,7 @@
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -162,6 +163,7 @@ (define (spdx-string->license str)
("CPL-1.0" 'license:cpl1.0)
("EPL-1.0" 'license:epl1.0)
("MIT" 'license:expat)
+ ("MIT-0" 'license:expat-0)
("FTL" 'license:freetype)
("GFDL-1.1" 'license:fdl1.1+)
("GFDL-1.2" 'license:fdl1.2+)
diff --git a/guix/licenses.scm b/guix/licenses.scm
index c071aae4a9..fc4077fc85 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -19,6 +19,7 @@
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -57,7 +58,7 @@ (define-module (guix licenses)
epl1.0
epl2.0
eupl1.2
- expat
+ expat expat-0
freetype
freebsd-doc
giftware
@@ -313,6 +314,13 @@ (define expat
"http://directory.fsf.org/wiki/License:Expat"
"https://www.gnu.org/licenses/license-list.html#Expat"))
+(define expat-0
+ (license "Expat No Attribution"
+ ;; Note: There is a later formulation of the same license at
+ ;; <https://github.com/aws/mit-0>.
+ "https://romanrm.net/mit-zero"
+ "Expat license with the attribution paragraph removed."))
+
(define freetype
(license "Freetype"
"http://directory.fsf.org/wiki/License:Freetype"
--
2.33.0
K
K
Kyle Meyer wrote on 18 Sep 2021 18:28
[PATCH v4 2/3] gnu: Add patatt.
(address . 48702@debbugs.gnu.org)(name . Xinglu Chen)(address . public@yoctocell.xyz)
20210918162853.25997-3-kyle@kyleam.com
* gnu/packages/version-control.scm (patatt): New variable.
---
gnu/packages/version-control.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index fe84601372..594a2c2003 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -111,6 +111,7 @@ (define-module (gnu packages version-control)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
+ #:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
@@ -2500,6 +2501,28 @@ (define-public grokmirror
based on a manifest file published by servers.")
(license license:gpl3+)))
+(define-public patatt
+ (package
+ (name "patatt")
+ (version "0.4.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
+ (base32 "1jj3c2rc5lzgsk3x2bq1295g7h59y9y8vi9a0gzqh3aqka00zqak"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
+ `(("python-pynacl" ,python-pynacl)))
+ (home-page "https://git.kernel.org/pub/scm/utils/patatt/patatt.git")
+ (synopsis "Tool for cryptographic patch attestation")
+ (description "This utility provides end-to-end cryptographic attestation
+of patches sent via mail. It does so by adapting the DKIM email signature
+standard to include cryptographic signatures via the X-Developer-Signature
+email header.")
+ (license license:expat-0)))
+
(define-public b4
(package
(name "b4")
--
2.33.0
K
K
Kyle Meyer wrote on 18 Sep 2021 18:28
[PATCH v4 3/3] gnu: b4: Update to 0.8.0.
(address . 48702@debbugs.gnu.org)(name . Xinglu Chen)(address . public@yoctocell.xyz)
20210918162853.25997-4-kyle@kyleam.com
* gnu/packages/version-control.scm (b4): Update to 0.8.0.
[propagated-inputs]: Add patatt.
[source]: Drop snippet for issue that is now fixed upstream.
---
gnu/packages/version-control.scm | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)

Toggle diff (38 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 594a2c2003..e8b52d1b19 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -2526,27 +2526,21 @@ (define-public patatt
(define-public b4
(package
(name "b4")
- (version "0.6.2")
+ (version "0.8.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "b4" version))
(sha256
- (base32 "1j904dy9cwxl85k2ngc498q5cdnqwsmw3jibjr1m55w8aqdck68z"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Fixes issue with dependency requirements being too strict. See upstream commit:
- ;; https://git.kernel.org/pub/scm/utils/b4/b4.git/commit/?id=31348a14afdb1d39e7faf9576eaddea1ced76e19
- (substitute* "setup.py"
- (("~=") ">="))
- #t))))
+ (base32 "115ysciq15sxc8fd9hf7p0f4wnd5xapcfkmq8g33y1c8nbdxclbx"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(inputs
`(("python-dkimpy" ,python-dkimpy)
("python-dnspython" ,python-dnspython)
("python-requests" ,python-requests)))
+ (propagated-inputs
+ `(("patatt" ,patatt)))
(home-page "https://git.kernel.org/pub/scm/utils/b4/b4.git")
(synopsis "Tool for working with patches in public-inbox archives")
(description
--
2.33.0
K
K
Kyle Meyer wrote on 18 Dec 2021 08:06
[PATCH v5 0/3] Add patatt and update b4
(address . 48702@debbugs.gnu.org)
20211218070648.278181-1-kyle@kyleam.com
Here's another reroll that

1) deals with conflicts that have popped up in guix/import/utils.scm

2) increases the patatt version to account for release that happened since v5
was sent

3) updates inputs according to `guix style'

Note that updating b4 to 0.8.0 resolves the b4 build failure reported in
bug#52553 (<87ilvo7h5t.fsf@posteo.org>).

---

This series updates b4 to the latest version. b4 now uses a separate tool for
patch attestation (added in patch 2), which in turn uses a license that's not
in guix/licenses.scm (added in patch 1).

[1/3] licenses: Add Expat No Attribution license.
[2/3] gnu: Add patatt.
[3/3] gnu: b4: Update to 0.8.0.

gnu/packages/version-control.scm | 36 +++++++++++++++++++++++---------
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 ++++++++-
3 files changed, 37 insertions(+), 11 deletions(-)

Range-diff against v4:
1: 5ce84815bc ! 1: 7b932e8ea4 licenses: Add Expat No Attribution license.
@@ Commit message
## guix/import/utils.scm ##
@@
- ;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
+ ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
@@ guix/import/utils.scm: (define (spdx-string->license str)
("MIT" 'license:expat)
+ ("MIT-0" 'license:expat-0)
("FTL" 'license:freetype)
+ ("Freetype" 'license:freetype)
("GFDL-1.1" 'license:fdl1.1+)
- ("GFDL-1.2" 'license:fdl1.2+)
## guix/licenses.scm ##
@@
2: 1cfd954f31 ! 2: 12b48f1bdb gnu: Add patatt.
@@ Commit message
* gnu/packages/version-control.scm (patatt): New variable.
## gnu/packages/version-control.scm ##
-@@ gnu/packages/version-control.scm: (define-module (gnu packages version-control)
- #:use-module (gnu packages python)
- #:use-module (gnu packages python-build)
- #:use-module (gnu packages python-check)
-+ #:use-module (gnu packages python-crypto)
- #:use-module (gnu packages python-web)
- #:use-module (gnu packages python-xyz)
- #:use-module (gnu packages readline)
@@ gnu/packages/version-control.scm: (define-public grokmirror
based on a manifest file published by servers.")
(license license:gpl3+)))
@@ gnu/packages/version-control.scm: (define-public grokmirror
+(define-public patatt
+ (package
+ (name "patatt")
-+ (version "0.4.8")
++ (version "0.4.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
-+ (base32 "1jj3c2rc5lzgsk3x2bq1295g7h59y9y8vi9a0gzqh3aqka00zqak"))))
++ (base32 "0fpbkmdlnz9s1lakw11jlrzpz4mb6f4dksdiir9g1ppq0g34sy58"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
-+ `(("python-pynacl" ,python-pynacl)))
++ (list python-pynacl))
+ (synopsis "Tool for cryptographic patch attestation")
+ (description "This utility provides end-to-end cryptographic attestation
3: 520fbecd62 ! 3: 93595c3c8f gnu: b4: Update to 0.8.0.
@@ gnu/packages/version-control.scm: (define-public patatt
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(inputs
- `(("python-dkimpy" ,python-dkimpy)
- ("python-dnspython" ,python-dnspython)
- ("python-requests" ,python-requests)))
+ (list python-dkimpy python-dnspython python-requests))
+ (propagated-inputs
-+ `(("patatt" ,patatt)))
++ (list patatt))
(synopsis "Tool for working with patches in public-inbox archives")
(description

base-commit: 3b2b42034c42ccb1dd8845bc03dd3a8053b54aca
--
2.34.0
K
K
Kyle Meyer wrote on 18 Dec 2021 08:06
[PATCH v5 2/3] gnu: Add patatt.
(address . 48702@debbugs.gnu.org)
20211218070648.278181-3-kyle@kyleam.com
* gnu/packages/version-control.scm (patatt): New variable.
---
gnu/packages/version-control.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 8044370dfb..3de7ed50a8 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -2537,6 +2537,28 @@ (define-public grokmirror
based on a manifest file published by servers.")
(license license:gpl3+)))
+(define-public patatt
+ (package
+ (name "patatt")
+ (version "0.4.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
+ (base32 "0fpbkmdlnz9s1lakw11jlrzpz4mb6f4dksdiir9g1ppq0g34sy58"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
+ (list python-pynacl))
+ (home-page "https://git.kernel.org/pub/scm/utils/patatt/patatt.git")
+ (synopsis "Tool for cryptographic patch attestation")
+ (description "This utility provides end-to-end cryptographic attestation
+of patches sent via mail. It does so by adapting the DKIM email signature
+standard to include cryptographic signatures via the X-Developer-Signature
+email header.")
+ (license license:expat-0)))
+
(define-public b4
(package
(name "b4")
--
2.34.0
K
K
Kyle Meyer wrote on 18 Dec 2021 08:06
[PATCH v5 3/3] gnu: b4: Update to 0.8.0.
(address . 48702@debbugs.gnu.org)
20211218070648.278181-4-kyle@kyleam.com
* gnu/packages/version-control.scm (b4): Update to 0.8.0.
[propagated-inputs]: Add patatt.
[source]: Drop snippet for issue that is now fixed upstream.
---
gnu/packages/version-control.scm | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)

Toggle diff (36 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 3de7ed50a8..c5d34b6cea 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -2562,25 +2562,19 @@ (define-public patatt
(define-public b4
(package
(name "b4")
- (version "0.6.2")
+ (version "0.8.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "b4" version))
(sha256
- (base32 "1j904dy9cwxl85k2ngc498q5cdnqwsmw3jibjr1m55w8aqdck68z"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Fixes issue with dependency requirements being too strict. See upstream commit:
- ;; https://git.kernel.org/pub/scm/utils/b4/b4.git/commit/?id=31348a14afdb1d39e7faf9576eaddea1ced76e19
- (substitute* "setup.py"
- (("~=") ">="))
- #t))))
+ (base32 "115ysciq15sxc8fd9hf7p0f4wnd5xapcfkmq8g33y1c8nbdxclbx"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(inputs
(list python-dkimpy python-dnspython python-requests))
+ (propagated-inputs
+ (list patatt))
(home-page "https://git.kernel.org/pub/scm/utils/b4/b4.git")
(synopsis "Tool for working with patches in public-inbox archives")
(description
--
2.34.0
K
K
Kyle Meyer wrote on 18 Dec 2021 08:06
[PATCH v5 1/3] licenses: Add Expat No Attribution license.
(address . 48702@debbugs.gnu.org)
20211218070648.278181-2-kyle@kyleam.com
* guix/licenses.scm (expat-0): New variable.
* guix/import/utils.scm (spdx-string->license): Add MIT-0.
---
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 +++++++++-
2 files changed, 11 insertions(+), 1 deletion(-)

Toggle diff (57 lines)
diff --git a/guix/import/utils.scm b/guix/import/utils.scm
index 1c3cfa3e0b..281258122e 100644
--- a/guix/import/utils.scm
+++ b/guix/import/utils.scm
@@ -10,6 +10,7 @@
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -165,6 +166,7 @@ (define (spdx-string->license str)
("CPL-1.0" 'license:cpl1.0)
("EPL-1.0" 'license:epl1.0)
("MIT" 'license:expat)
+ ("MIT-0" 'license:expat-0)
("FTL" 'license:freetype)
("Freetype" 'license:freetype)
("GFDL-1.1" 'license:fdl1.1+)
diff --git a/guix/licenses.scm b/guix/licenses.scm
index 82ca44f42e..3b820ae07e 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -19,6 +19,7 @@
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -57,7 +58,7 @@ (define-module (guix licenses)
epl1.0
epl2.0
eupl1.2
- expat
+ expat expat-0
freetype
freebsd-doc
giftware
@@ -315,6 +316,13 @@ (define expat
"http://directory.fsf.org/wiki/License:Expat"
"https://www.gnu.org/licenses/license-list.html#Expat"))
+(define expat-0
+ (license "Expat No Attribution"
+ ;; Note: There is a later formulation of the same license at
+ ;; <https://github.com/aws/mit-0>.
+ "https://romanrm.net/mit-zero"
+ "Expat license with the attribution paragraph removed."))
+
(define freetype
(license "Freetype"
"http://directory.fsf.org/wiki/License:Freetype"
--
2.34.0
K
K
Kyle Meyer wrote on 18 Dec 2021 21:20
Re: [PATCH v5 0/3] Add patatt and update b4
(name . Xinglu Chen)(address . public@yoctocell.xyz)
878rwhacm7.fsf@kyleam.com
Xinglu Chen writes:

Toggle quote (2 lines)
> Both packages build fine for me; b4 works as expected;

Thanks for testing.

Toggle quote (3 lines)
> I haven’t gotten around to setup patatt yet, but ‘patatt --help’ works
> fine.

I haven't tested the sender's side of things (e.g., running `patatt
sign'), but I've tried out the receiving end:

* move into a clone of the patatt repo in order to make uses of its
existing .keys/ subdirectory

* pull in a message from https://lore.kernel.orgfor one of these keys

One example:

Toggle snippet (30 lines)
$ tree --charset=ascii .keys/openpgp
.keys/openpgp
|-- chromium.org
| `-- keescook
| `-- default
`-- linuxfoundation.org
`-- konstantin
`-- default

4 directories, 2 files

$ b4 am 20211215232432.2069605-1-keescook@chromium.org
Looking up https://lore.kernel.org/r/20211215232432.2069605-1-keescook%40chromium.org
Grabbing thread from lore.kernel.org/all/20211215232432.2069605-1-keescook%40chromium.org/t.mbox.gz
Analyzing 3 messages in the thread
Checking attestation on all messages, may take a moment...
---
? [PATCH] iommu: Use correctly sized arguments for bit field
+ Acked-by: Yury Norov <yury.norov@gmail.com> (? DKIM/gmail.com)
---
? Signed: openpgp/keescook@chromium.org
? Signed: DKIM/chromium.org
---
Total patches: 1
---
Link: https://lore.kernel.org/r/20211215232432.2069605-1-keescook@chromium.org
Base: not specified
git am ./20211215_keescook_iommu_use_correctly_sized_arguments_for_bit_field.mbx

If the same `b4 am' command is invoked without those keys in place, I
instead see


? No key: openpgp/keescook@chromium.org
? Signed: DKIM/chromium.org

So, things seem to be wired up okay. (The `b4 --debug am' output for
the same command looks okay too.)

Toggle quote (3 lines)
> I also took the opportunity to test the ‘guix review’ command that
> I have started to work on. :-)

Neat, thanks for the sneak peek.
K
K
Kyle Meyer wrote on 23 May 2022 00:28
[PATCH v6 0/4] Add patatt and enable patch attestation for b4
(address . 48702@debbugs.gnu.org)
20220522222807.332757-1-kyle@kyleam.com
0780164f1f (gnu: b4: Update to 0.8.0, 2022-05-05) updated b4, so the version
bump from v5 is now stale. However, there are still two useful parts:

* the addition of patatt, which b4 uses to enable patch attestation
* the removal of a now unneeded workaround from b4's definition

Here's a reroll that puts these changes on top of the current master.

[1/4] licenses: Add Expat No Attribution license.
[2/4] gnu: Add patatt.
[3/4] gnu: b4: Drop now unneeded snippet.
[4/4] gnu: b4: Enable patch attestation.

gnu/packages/version-control.scm | 36 +++++++++++++++++++++++---------
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 ++++++++-
3 files changed, 37 insertions(+), 11 deletions(-)

Range-diff against v5:
1: 7b932e8ea4 ! 1: fea8928d10 licenses: Add Expat No Attribution license.
@@ Commit message
## guix/import/utils.scm ##
@@
- ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
-+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
+ ;;; Copyright © 2022 Alice Brenon <alice.brenon@ens-lyon.fr>
++;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
2: 12b48f1bdb ! 2: cddbbbd581 gnu: Add patatt.
@@ Commit message
* gnu/packages/version-control.scm (patatt): New variable.
## gnu/packages/version-control.scm ##
+@@
+ ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
+ ;;; Copyright © 2014, 2016, 2019, 2021 Eric Bavier <bavier@posteo.net>
+ ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
+-;;; Copyright © 2015, 2018, 2020, 2021 Kyle Meyer <kyle@kyleam.com>
++;;; Copyright © 2015, 2018, 2020, 2021, 2022 Kyle Meyer <kyle@kyleam.com>
+ ;;; Copyright © 2015, 2017, 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
+ ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
+ ;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
@@ gnu/packages/version-control.scm: (define-public grokmirror
based on a manifest file published by servers.")
(license license:gpl3+)))
3: 93595c3c8f < -: ---------- gnu: b4: Update to 0.8.0.
-: ---------- > 3: 418567f25c gnu: b4: Drop now unneeded snippet.
-: ---------- > 4: 9925690051 gnu: b4: Enable patch attestation.

base-commit: 4ba4cb1d49d70a00f7236f60bd92e5eccef573dd
--
2.36.1
K
K
Kyle Meyer wrote on 23 May 2022 00:28
[PATCH v6 3/4] gnu: b4: Drop now unneeded snippet.
(address . 48702@debbugs.gnu.org)
20220522222807.332757-4-kyle@kyleam.com
* gnu/packages/version-control.scm (b4) [source]: Drop snippet for issue that
is now fixed upstream.
---
gnu/packages/version-control.scm | 10 +---------
1 file changed, 1 insertion(+), 9 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 044cde460a..43ae1eec46 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -2608,15 +2608,7 @@ (define-public b4
(method url-fetch)
(uri (pypi-uri "b4" version))
(sha256
- (base32 "115ysciq15sxc8fd9hf7p0f4wnd5xapcfkmq8g33y1c8nbdxclbx"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Fixes issue with dependency requirements being too strict. See upstream commit:
- ;; https://git.kernel.org/pub/scm/utils/b4/b4.git/commit/?id=31348a14afdb1d39e7faf9576eaddea1ced76e19
- (substitute* "setup.py"
- (("~=") ">="))
- #t))))
+ (base32 "115ysciq15sxc8fd9hf7p0f4wnd5xapcfkmq8g33y1c8nbdxclbx"))))
(build-system python-build-system)
(arguments
(list #:tests? #f ;no tests
--
2.36.1
K
K
Kyle Meyer wrote on 23 May 2022 00:28
[PATCH v6 1/4] licenses: Add Expat No Attribution license.
(address . 48702@debbugs.gnu.org)
20220522222807.332757-2-kyle@kyleam.com
* guix/licenses.scm (expat-0): New variable.
* guix/import/utils.scm (spdx-string->license): Add MIT-0.
---
guix/import/utils.scm | 2 ++
guix/licenses.scm | 10 +++++++++-
2 files changed, 11 insertions(+), 1 deletion(-)

Toggle diff (57 lines)
diff --git a/guix/import/utils.scm b/guix/import/utils.scm
index 9cadbb3d5f..810de4434c 100644
--- a/guix/import/utils.scm
+++ b/guix/import/utils.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2022 Alice Brenon <alice.brenon@ens-lyon.fr>
+;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -167,6 +168,7 @@ (define (spdx-string->license str)
("CPL-1.0" 'license:cpl1.0)
("EPL-1.0" 'license:epl1.0)
("MIT" 'license:expat)
+ ("MIT-0" 'license:expat-0)
("FTL" 'license:freetype)
("Freetype" 'license:freetype)
("GFDL-1.1" 'license:fdl1.1+)
diff --git a/guix/licenses.scm b/guix/licenses.scm
index 82ca44f42e..3b820ae07e 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -19,6 +19,7 @@
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
+;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -57,7 +58,7 @@ (define-module (guix licenses)
epl1.0
epl2.0
eupl1.2
- expat
+ expat expat-0
freetype
freebsd-doc
giftware
@@ -315,6 +316,13 @@ (define expat
"http://directory.fsf.org/wiki/License:Expat"
"https://www.gnu.org/licenses/license-list.html#Expat"))
+(define expat-0
+ (license "Expat No Attribution"
+ ;; Note: There is a later formulation of the same license at
+ ;; <https://github.com/aws/mit-0>.
+ "https://romanrm.net/mit-zero"
+ "Expat license with the attribution paragraph removed."))
+
(define freetype
(license "Freetype"
"http://directory.fsf.org/wiki/License:Freetype"
--
2.36.1
K
K
Kyle Meyer wrote on 23 May 2022 00:28
[PATCH v6 2/4] gnu: Add patatt.
(address . 48702@debbugs.gnu.org)
20220522222807.332757-3-kyle@kyleam.com
* gnu/packages/version-control.scm (patatt): New variable.
---
gnu/packages/version-control.scm | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)

Toggle diff (44 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index db5b53147c..044cde460a 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -7,7 +7,7 @@
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2016, 2019, 2021 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2015, 2018, 2020, 2021 Kyle Meyer <kyle@kyleam.com>
+;;; Copyright © 2015, 2018, 2020, 2021, 2022 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2015, 2017, 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
@@ -2577,6 +2577,28 @@ (define-public grokmirror
based on a manifest file published by servers.")
(license license:gpl3+)))
+(define-public patatt
+ (package
+ (name "patatt")
+ (version "0.4.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "patatt" version))
+ (sha256
+ (base32 "0fpbkmdlnz9s1lakw11jlrzpz4mb6f4dksdiir9g1ppq0g34sy58"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; No tests.
+ (propagated-inputs
+ (list python-pynacl))
+ (home-page "https://git.kernel.org/pub/scm/utils/patatt/patatt.git")
+ (synopsis "Tool for cryptographic patch attestation")
+ (description "This utility provides end-to-end cryptographic attestation
+of patches sent via mail. It does so by adapting the DKIM email signature
+standard to include cryptographic signatures via the X-Developer-Signature
+email header.")
+ (license license:expat-0)))
+
(define-public b4
(package
(name "b4")
--
2.36.1
K
K
Kyle Meyer wrote on 23 May 2022 00:28
[PATCH v6 4/4] gnu: b4: Enable patch attestation.
(address . 48702@debbugs.gnu.org)
20220522222807.332757-5-kyle@kyleam.com
* gnu/packages/version-control.scm (b4) [propagated-inputs]: Add patatt.
---
gnu/packages/version-control.scm | 2 ++
1 file changed, 2 insertions(+)

Toggle diff (15 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 43ae1eec46..5badc28fc5 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -2620,6 +2620,8 @@ (define-public b4
(delete 'sanity-check))))
(inputs
(list python-dkimpy python-dnspython python-requests))
+ (propagated-inputs
+ (list patatt))
(home-page "https://git.kernel.org/pub/scm/utils/b4/b4.git")
(synopsis "Tool for working with patches in public-inbox archives")
(description
--
2.36.1
M
M
Maxime Devos wrote on 23 May 2022 11:25
cf530706d9c42bd385e8f2b1f10900eda6e5972e.camel@telenet.be
Kyle Meyer schreef op zo 22-05-2022 om 18:28 [-0400]:
Toggle quote (3 lines)
> +    (propagated-inputs
> +     (list patatt))

Preferably this wouldn't be propagated. Would adding it to 'inputs'
suffice?

Also, looks like 'git' is missing in the inputs. From b4/__init__.py:

def git_run_command(gitdir: Optional[str], args: List[str], stdin: Optional[bytes] = None,
logstderr: bool = False) -> Tuple[int, str]:
cmdargs = ['git', '--no-pager']


Maybe it needs a 'substitute*' to replace 'git' by the absolute file name
or some wrapping to add the 'git' binary to the $PATH?.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYotTHBccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7kaKAQDwNrgsQeZ7GBwQvbVPKJBrYLLw
+0n75xMOOka2DYVNegD/Sxkbxe/BWzv318ZkBflzYwAvXc+PWh/7Pqf1oUujYQA=
=giS5
-----END PGP SIGNATURE-----


L
L
Ludovic Courtès wrote on 23 May 2022 15:59
Re: [PATCH v6 0/4] Add patatt and enable patch attestation for b4
(name . Kyle Meyer)(address . kyle@kyleam.com)
87k0ac5oz2.fsf@gnu.org
Hello,

Kyle Meyer <kyle@kyleam.com> skribis:

Toggle quote (13 lines)
> 0780164f1f (gnu: b4: Update to 0.8.0, 2022-05-05) updated b4, so the version
> bump from v5 is now stale. However, there are still two useful parts:
>
> * the addition of patatt, which b4 uses to enable patch attestation
> * the removal of a now unneeded workaround from b4's definition
>
> Here's a reroll that puts these changes on top of the current master.
>
> [1/4] licenses: Add Expat No Attribution license.
> [2/4] gnu: Add patatt.
> [3/4] gnu: b4: Drop now unneeded snippet.
> [4/4] gnu: b4: Enable patch attestation.

Applied, thanks!

Maxime’s suggestions earlier today in this thread may be worth
considering for a subsequent patch, though.

Ludo’.
Closed
?