[PATCH] linux-libre: Add aarch64-linux.

  • Done
  • quality assurance status badge
Details
3 participants
  • Ludovic Courtès
  • Mark H Weaver
  • Vagrant Cascadian
Owner
unassigned
Submitted by
Vagrant Cascadian
Severity
normal

Debbugs page

Vagrant Cascadian wrote 7 years ago
(address . guix-patches@gnu.org)
87bmdivr91.fsf@aikidev.net
The attached patch adds support for aarch64-linux to linux-libre, based
on the configuration provided in Debian's linux-image-4.16.0-1-arm64
package.

Tested booting on pine64+ running Debian; GuixSD possibly soon to
follow...

live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEcDardHbDotegGFCHt4uC1IFLkbYFAlr5BUoACgkQt4uC1IFL
kba6wBAAtlD7KqRA/XshkoU6Wfp3R8sVKBQY7pwgdIJApvojAQ5/JGR1Yv4DhepK
ReDlPTrRQtawJu0Pv9I0Rbb/qfU6Rj91o+2wt05VrQGrWzAd+nea0xw6wuwFbKlI
9RHN5sOThUNSZNUD8G84A0lPcO6aLU71/tmuNy3DXArklkn2nxefRfDKeb4n0c6z
HZJQ/4MgmGd7d6iW70Z7PCbo4DRckuhKwY0gjPMrv8r4OLxYMqNogDLBetT2RSl2
VsQ0PSl3AL53+8U4JLg3McUHbX/HG7fhBdsXljNo570QEH6Cggj0nWbyDa0+xzRO
JiqxLfTuASzeTLzk06+etHQRCFAhzImJ2d72FeBSznxKLVH83teeSr2IsRDQUMSI
Vi+zX3+zuj5KSwsj0aWDzg33iMVOaJeIomCGqCjwtXVA00TvBjnlA2VDWE1VbFl6
GxqCOYVQy1cHKF8+lH7I+gZ+b/PBhBjOhR9jAH+ots7XdsIaK1MO2Y+uJFCdTtbY
3HnjcRKs6sMhxznN+rcUO2n2KXrmWwUWVixdo0CC++7us46s9TBd6hbMM5Ql8trO
k4tmEt/G//pw9/mfVNRPNbsz1fElbt2M1tpF7IYlQ0W6Z9ns1HJIgyqJ76NUislH
lti2dWR5DUYOv6NZiTTtXYj0LHiaHkSrStr/y4Y6QoI9O72FvII=
=ENJj
-----END PGP SIGNATURE-----

Ludovic Courtès wrote 7 years ago
(address . 31447@debbugs.gnu.org)
87lgci4q90.fsf@gnu.org
Hi Vagrant,

(Cc’ing Mark who takes care of the kernel.)

Vagrant Cascadian <vagrant@debian.org> skribis:

Toggle quote (7 lines)
> The attached patch adds support for aarch64-linux to linux-libre, based
> on the configuration provided in Debian's linux-image-4.16.0-1-arm64
> package.
>
> Tested booting on pine64+ running Debian; GuixSD possibly soon to
> follow...

Woohoo, nice!

Toggle quote (8 lines)
> From b9e48a787b6b151b5c7df6036eb75752d3c4db24 Mon Sep 17 00:00:00 2001
> From: Vagrant Cascadian <vagrant@debian.org>
> Date: Mon, 14 May 2018 03:20:17 +0000
> Subject: [PATCH] gnu: linux-libre: Enable build for aarch64-linux.
>
> * gnu/packages/linux.scm (%linux-compatible-systems): Add aarch64-linux.
> * gnu/packages/aux-files/linux-libre/4.16-arm64.conf: New file.

I think we should add the .conf file to gnu/local.mk, but apart from
that it LGTM.

Mark, WDYT?

Thanks,
Ludo’.
Mark H Weaver wrote 7 years ago
(name . Ludovic Courtès)(address . ludo@gnu.org)
87d0xu5dgu.fsf@netris.org
Hi!

ludo@gnu.org (Ludovic Courtès) writes:

Toggle quote (13 lines)
>> From b9e48a787b6b151b5c7df6036eb75752d3c4db24 Mon Sep 17 00:00:00 2001
>> From: Vagrant Cascadian <vagrant@debian.org>
>> Date: Mon, 14 May 2018 03:20:17 +0000
>> Subject: [PATCH] gnu: linux-libre: Enable build for aarch64-linux.
>>
>> * gnu/packages/linux.scm (%linux-compatible-systems): Add aarch64-linux.
>> * gnu/packages/aux-files/linux-libre/4.16-arm64.conf: New file.
>
> I think we should add the .conf file to gnu/local.mk, but apart from
> that it LGTM.
>
> Mark, WDYT?

%linux-compatible-systems is also used as the 'supported-systems' field
of linux-libre-4.14, but there's no '4.14-arm64.conf' file added here.
We should either add that file, or else somehow arrange for
'aarch64-linux' to be omitted from linux-libre-4.14's
'supported-systems' field.

As Ludovic mentioned, the new .conf file needs to be added to
gnu/local.mk.

Otherwise, it looks good to me.

Thank you!
Mark
Vagrant Cascadian wrote 7 years ago
(address . 31447@debbugs.gnu.org)
87vabmsztc.fsf@aikidev.net
On 2018-05-17, Mark H Weaver wrote:
Toggle quote (21 lines)
> ludo@gnu.org (Ludovic Courtès) writes:
>
>>> From b9e48a787b6b151b5c7df6036eb75752d3c4db24 Mon Sep 17 00:00:00 2001
>>> From: Vagrant Cascadian <vagrant@debian.org>
>>> Date: Mon, 14 May 2018 03:20:17 +0000
>>> Subject: [PATCH] gnu: linux-libre: Enable build for aarch64-linux.
>>>
>>> * gnu/packages/linux.scm (%linux-compatible-systems): Add aarch64-linux.
>>> * gnu/packages/aux-files/linux-libre/4.16-arm64.conf: New file.
>>
>> I think we should add the .conf file to gnu/local.mk, but apart from
>> that it LGTM.
>>
>> Mark, WDYT?
>
> %linux-compatible-systems is also used as the 'supported-systems' field
> of linux-libre-4.14, but there's no '4.14-arm64.conf' file added here.
> We should either add that file, or else somehow arrange for
> 'aarch64-linux' to be omitted from linux-libre-4.14's
> 'supported-systems' field.

I briefly thought about weather to add support for older kernels, but
figured only adding a new architecture to the current version of
linux-libre would be simpler... guess that requires a little more
patching...


Toggle quote (3 lines)
> As Ludovic mentioned, the new .conf file needs to be added to
> gnu/local.mk.

I don't see any of the existing linux-libre/*.conf files added there;
maybe Ludovic meant Makefile.am ?


Toggle quote (2 lines)
> Otherwise, it looks good to me.

Since submitting, I did notice that the way .dtb files are installed, it
doesn't preserve the subdirectory structure. Unlike the "arm"
architecture, where .dtb files are all placed in a single directory, on
"arm64" there are sub-directories for each soc family:

allwinner/sun50i-a64-pine64-plus.dtb

It looks like the linux Makefile supports setting INSTALL_DTBS_PATH
variable, and both "arm" and "arm64" architectures have a "dtbs_install"
target, which may simply do "the right thing".

U-boot on arm64 platforms typically sets a variable "fdtfile" to load,
and so fails to boot without manual intervention. Could work around it
in the bootloader configuration, but I think it would be better to fix
in the linux-libre packages.


live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEcDardHbDotegGFCHt4uC1IFLkbYFAlr9/K8ACgkQt4uC1IFL
kbZQvw//VIhhuKQYRKhvDbeXbNzXfReqktey0436NtMjqMoGZSRGASHmN7kqjDoI
ql15LpSlqua2j3d8LBSq0JOYKB2oMi7R3jwDwbVQmgk5yRD5oEOuAPcfpFnXf7zy
h1tnUEtHibGa5+O+XYW4UCpoqMUCms1+jByDRNDBTs3fTvoCpdY922pF1IkxwxVT
TOQlxt07Zre+fDF2r+BUj0XYBOJRbr6CVLjM3ywwrvQDXyamtiww2OPspZIFuzOR
YfDYtXlLV0RlVqZ/CamEu5FNm2Gfp53P3FThE+NOUdKy8woLdhhNMbDalP8rBPw0
BXNBNawjRIeJ2UVj6FOkcs/ah30OuDwP5DlboWUayGY4Axio7EMVS+gZDdurAKLu
3gPTsI40MZxOMXN43fShUgbV+y6j5CPudoF8eEt7k1JXzwnaSlowwd/XLxlJchUs
18etdzePiDT0FZ7EdM6VsKE1XIou3mggug9hNTixnbzP4IVr2ET8rS9IhvdunkxY
h0qSolM6uFvO13ttxu9IlU8tu6pQVr1SN/+cou+hilNNUPekuL3cD0/2yFBpFryX
CzCko+hnNdp0Dnb1F2W12sCfGqE5xLw0uJ56goZ0DsjC3tHk6wJAsXsMLP1cCNKu
r/R4SxajWcZqlNVwaZdAzGrimVW/mpPe5Al0D0uvpTWv5bbVvSg=
=fHut
-----END PGP SIGNATURE-----

Mark H Weaver wrote 7 years ago
(name . Vagrant Cascadian)(address . vagrant@debian.org)
874lj560jg.fsf@netris.org
Vagrant Cascadian <vagrant@debian.org> writes:

Toggle quote (7 lines)
> On 2018-05-17, Mark H Weaver wrote:
>> As Ludovic mentioned, the new .conf file needs to be added to
>> gnu/local.mk.
>
> I don't see any of the existing linux-libre/*.conf files added there;
> maybe Ludovic meant Makefile.am ?

Indeed, they go in Makefile.am, not gnu/local.mk.

Thanks,
Mark
Vagrant Cascadian wrote 7 years ago
(address . 31447@debbugs.gnu.org)
87lgcgtx2z.fsf@aikidev.net
Updated patch attached, addressing most of the issues raised, comments
in-line below.


On 2018-05-17, Vagrant Cascadian wrote:
Toggle quote (8 lines)
> On 2018-05-17, Mark H Weaver wrote:
>> ludo@gnu.org (Ludovic Courtès) writes:
>> %linux-compatible-systems is also used as the 'supported-systems' field
>> of linux-libre-4.14, but there's no '4.14-arm64.conf' file added here.
>> We should either add that file, or else somehow arrange for
>> 'aarch64-linux' to be omitted from linux-libre-4.14's
>> 'supported-systems' field.

I adjusted linux-libre-4.14 to only support the previous set of
architectures.


Toggle quote (6 lines)
>> As Ludovic mentioned, the new .conf file needs to be added to
>> gnu/local.mk.
>
> I don't see any of the existing linux-libre/*.conf files added there;
> maybe Ludovic meant Makefile.am ?

Added to AUX_FILES in Makefile.am.


Toggle quote (13 lines)
>> Otherwise, it looks good to me.
>
> Since submitting, I did notice that the way .dtb files are installed, it
> doesn't preserve the subdirectory structure. Unlike the "arm"
> architecture, where .dtb files are all placed in a single directory, on
> "arm64" there are sub-directories for each soc family:
>
> allwinner/sun50i-a64-pine64-plus.dtb
>
> It looks like the linux Makefile supports setting INSTALL_DTBS_PATH
> variable, and both "arm" and "arm64" architectures have a "dtbs_install"
> target, which may simply do "the right thing".

Haven't looked into this yet.

Platforms using UEFI/EFI may not use the .dtb files anyways, so perhaps
it is worth merging this as is, and fixing up the .dtb locations in a
later patch.


Thanks for the review!


live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEcDardHbDotegGFCHt4uC1IFLkbYFAlr/VEUACgkQt4uC1IFL
kbZUJg/8CFI3Ck76YKD8cHP0jXBpE4wW0dakNFI8yLvWz5fMh5q2MHla/oPC7xsG
PkuMXSsxnVsJ5n3R9mDxK/HMIc92HMSEYFjVWi/q4zLOz9XcxNhfTzKooq7mSEV1
bbZPHeBqotJPab5cK2YUweTLbPl97HIYritYaVHl/TTokx25Khsg3xYC1J8/1yD+
YVpfmlMGQzYilAwOfjvzwqk7e5vKbjrNglZkEsELVd2q83T3YMk6qKI38MCz6xGI
EoAmHNaceS/az/W4WFiG0i4YrVydilliYC3Ji/gZL0YD3rqwgU8J79EzsmL4Gmpr
TOgLmhtiCKRpSkEjAo3MajeWDF2iIau7C6czzoBU+7VY3xmDsYPhkiX9YK++bPj+
1jx7A0j80g6u8OyhViTKXHuCTNbqymNzLX9fCCOVUbXRhKgvuYj6PcrJu9zKqB+7
yz3VRduG6qfpV4jqYl0AeLyKJhxANBCPcsmiS/t2Qs81xyiYPJ9o2kIGba2Nay/1
ja6PLsK3eRvhIQrJQUmGV0MqDkQ260agpp7kvhW1JirwNyfNW66ZnFxpmJXH1LRx
/sLDl+U24qobd1Cj+MceMjF1fcxJFDT62a7kcpb4IK4mCUnp6emoNGStGNhiu8Me
chZH1m75/gqVlF2m/pPRzyuodf6JfUeKAjdC09l3ClNGjFXuPdQ=
=bAaS
-----END PGP SIGNATURE-----

Vagrant Cascadian wrote 7 years ago
(address . 31447@debbugs.gnu.org)
871se7te3f.fsf@aikidev.net
On 2018-05-18, Vagrant Cascadian wrote:
Toggle quote (12 lines)
> On 2018-05-17, Vagrant Cascadian wrote:
>> Since submitting, I did notice that the way .dtb files are installed, it
>> doesn't preserve the subdirectory structure. Unlike the "arm"
>> architecture, where .dtb files are all placed in a single directory, on
>> "arm64" there are sub-directories for each soc family:
>>
>> allwinner/sun50i-a64-pine64-plus.dtb
>>
>> It looks like the linux Makefile supports setting INSTALL_DTBS_PATH
>> variable, and both "arm" and "arm64" architectures have a "dtbs_install"
>> target, which may simply do "the right thing".

Attached is a patch which does that. Did test builds of linux-libre on
x86_64-linux (no dtb files), aarch64-linux (dtb files in subdirs) and
armhf-linux (dtb files in one big huge directory); all of these variants
appear to be doing the right thing.

The patch basically follows the previous behavior by checking for the
presence of .dtb files, but rather than installing them manually,
invokes "make dtbs_install".

I did try to restrict dtb installation based on architecture (only arm,
arm64 and mips linux architectures currently implement the dtbs_install
Makefile target), which would seem a little cleaner to me. My attempt
was essentially:

(if (string=? (getenv "ARCH") (or "arm" "arm64" "mips"))
(invoke "make" "dtbs_install" ... )
)

Which somehow matched on all architectures... and so failed to build on
on x86_64.

Since the compile cycles were so long to test if it worked or not, I've
set it aside for now and decided to submit what I had working.

So, with the previous updated patch and the following patch, it should
be ready to go. Please feel free to squash them or merge them
separately; whatever makes the most sense. Or give more review and
feedback, of course. :)

live well,
vagrant
From 4e5ea2e07282b3c3125fc1922e729085a2e2706f Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Sat, 19 May 2018 21:08:41 +0000
Subject: [PATCH 2/2] gnu: linux-libre: Use "make dtbs_install" to install
device tree files.

* gnu/packages/linux.scm (make-linux-libre):
Use "make dtbs_install" to install device tree files.
---
gnu/packages/linux.scm | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)

Toggle diff (20 lines)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index fe4704601..d8c75dd8c 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -366,8 +366,11 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
(for-each (lambda (file) (install-file file out))
(find-files "." "^(\\.config|bzImage|zImage|Image|vmlinuz|System\\.map)$"))
;; Install device tree files
- (for-each (lambda (file) (install-file file dtbdir))
- (find-files "." "\\.dtb$"))
+ (unless (null? (find-files "." "\\.dtb$"))
+ (mkdir-p dtbdir)
+ (invoke "make"
+ (string-append "INSTALL_DTBS_PATH=" dtbdir)
+ "dtbs_install"))
;; Install kernel modules
(mkdir-p moddir)
(invoke "make"
--
2.11.0
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEcDardHbDotegGFCHt4uC1IFLkbYFAlsAtGQACgkQt4uC1IFL
kbYQqQ/+LkSktnw1NEAPScTV/ZCpXccmuaA7+Zey3Zdael4j9gD3cupaobUxZh4Q
d/geQPYFvzLKqJuGQHDRkZzPRDSja2yy7oh1Bd82GKIcwqiX7qdwP6zzvD5ix40K
+UZzMHt/bPtvP98matSas98LBrj57BqaMiExBGBBOAW3KHfTfab0yXd82YXzwQUk
9Usck+ive1mXiKpoWnWmCLdUAm7oOWqqHRMaT/SExsvBSofiNnbD1CVrovUBFD+w
2rwBWt1IWTMS+BNjmowfEN90Gk/jhKWrXjVRF++Iab3c1b6d6y9dD8ac9Ad3rwSy
Z/xa37cEB8NL6wD/66Ffu5GnvDTxssqCcYcZVDafPvfIKSD5gIdR3YBO2NHlWp2g
XoIs0HLsjpfN1HP2UvS8CjQIjE6O3Gsbtxf1U6FoBPWoU0WoP1Ay3AUPE2R6uDjl
p4UoMBfcraVcnaicNXqlE0jXN2kLzvKAdZsR5ym+1XFy79P8cuDMsSatAjc35HjV
fItdnz8DvajIWpy8WeLtGtnxNIexP0aO09ktKBqnM1UAi6MUao9fjFEgKpgJllFA
P4KzvJYbVkGkNmpTTqQMFHa0gRxa2zVI9e3dyPXRsU5DksmW3EI4N/A1qJCpTD9o
WuxvIvByz/VlSwvoeNSQumwh6WQdqErpg2AqlPJnzO6KgO+b7iM=
=rYNE
-----END PGP SIGNATURE-----

Ludovic Courtès wrote 7 years ago
(name . Vagrant Cascadian)(address . vagrant@debian.org)
87zi0u565h.fsf@gnu.org
Heya,

Vagrant Cascadian <vagrant@debian.org> skribis:

Toggle quote (31 lines)
> On 2018-05-18, Vagrant Cascadian wrote:
>> On 2018-05-17, Vagrant Cascadian wrote:
>>> Since submitting, I did notice that the way .dtb files are installed, it
>>> doesn't preserve the subdirectory structure. Unlike the "arm"
>>> architecture, where .dtb files are all placed in a single directory, on
>>> "arm64" there are sub-directories for each soc family:
>>>
>>> allwinner/sun50i-a64-pine64-plus.dtb
>>>
>>> It looks like the linux Makefile supports setting INSTALL_DTBS_PATH
>>> variable, and both "arm" and "arm64" architectures have a "dtbs_install"
>>> target, which may simply do "the right thing".
>
> Attached is a patch which does that. Did test builds of linux-libre on
> x86_64-linux (no dtb files), aarch64-linux (dtb files in subdirs) and
> armhf-linux (dtb files in one big huge directory); all of these variants
> appear to be doing the right thing.
>
> The patch basically follows the previous behavior by checking for the
> presence of .dtb files, but rather than installing them manually,
> invokes "make dtbs_install".
>
> I did try to restrict dtb installation based on architecture (only arm,
> arm64 and mips linux architectures currently implement the dtbs_install
> Makefile target), which would seem a little cleaner to me. My attempt
> was essentially:
>
> (if (string=? (getenv "ARCH") (or "arm" "arm64" "mips"))
> (invoke "make" "dtbs_install" ... )
> )

You could do:

(when (member (getenv "ARCH") '("arm" "arm64" "mips"))
…)

But I think what you did is even nicer (no need to hardwire the list of
architectures.)

Toggle quote (9 lines)
> From 4e5ea2e07282b3c3125fc1922e729085a2e2706f Mon Sep 17 00:00:00 2001
> From: Vagrant Cascadian <vagrant@debian.org>
> Date: Sat, 19 May 2018 21:08:41 +0000
> Subject: [PATCH 2/2] gnu: linux-libre: Use "make dtbs_install" to install
> device tree files.
>
> * gnu/packages/linux.scm (make-linux-libre):
> Use "make dtbs_install" to install device tree files.

I adjusted the indentation and committed. Thank you!

Ludo’.
Ludovic Courtès wrote 7 years ago
(name . Vagrant Cascadian)(address . vagrant@debian.org)
87vabi5641.fsf@gnu.org
Vagrant Cascadian <vagrant@debian.org> skribis:

Toggle quote (10 lines)
> From a6e51d91d2d64b5f8521f74e2e0987cdd8f62816 Mon Sep 17 00:00:00 2001
> From: Vagrant Cascadian <vagrant@debian.org>
> Date: Fri, 18 May 2018 15:18:29 -0700
> Subject: [PATCH] gnu: linux-libre: Enable build for aarch64-linux.
>
> * gnu/packages/linux.scm (%linux-compatible-systems): Add aarch64-linux.
> (linux-libre-4.14): Limit to x86_64-linux, i686-linux and armhf-linux.
> * gnu/packages/aux-files/linux-libre/4.16-arm64.conf: New file.
> * Makefile.am (AUX_FILES): Add 4.16-arm64.conf.

Applied, thank you!

Ludo’.
Closed
Vagrant Cascadian wrote 7 years ago
(name . Ludovic Courtès)(address . ludo@gnu.org)
87r2m6rmk7.fsf@aikidev.net
On 2018-05-20, Ludovic Courtès wrote:
Toggle quote (15 lines)
> Vagrant Cascadian <vagrant@debian.org> skribis:
>> I did try to restrict dtb installation based on architecture (only arm,
>> arm64 and mips linux architectures currently implement the dtbs_install
>> Makefile target), which would seem a little cleaner to me. My attempt
>> was essentially:
>>
>> (if (string=? (getenv "ARCH") (or "arm" "arm64" "mips"))
>> (invoke "make" "dtbs_install" ... )
>> )
>
> You could do:
>
> (when (member (getenv "ARCH") '("arm" "arm64" "mips"))
> …)

Thanks for the suggestion.


Toggle quote (3 lines)
> But I think what you did is even nicer (no need to hardwire the list of
> architectures.)

My only concern was the risk of an architecture which generates .dtb
files, but for some reason doesn't have the dtbs_install target. Maybe
that's too hypothetical at this point, and it can be dealt with if it
ever comes up. :)


Toggle quote (11 lines)
>> From 4e5ea2e07282b3c3125fc1922e729085a2e2706f Mon Sep 17 00:00:00 2001
>> From: Vagrant Cascadian <vagrant@debian.org>
>> Date: Sat, 19 May 2018 21:08:41 +0000
>> Subject: [PATCH 2/2] gnu: linux-libre: Use "make dtbs_install" to install
>> device tree files.
>>
>> * gnu/packages/linux.scm (make-linux-libre):
>> Use "make dtbs_install" to install device tree files.
>
> I adjusted the indentation and committed. Thank you!

Great!


live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEcDardHbDotegGFCHt4uC1IFLkbYFAlsB9ggACgkQt4uC1IFL
kbaWMQ/8DjmrGNU+w++GVh2a3PQ6qS2F/XPZaRHwy0jx4Vgg7sWP5+DDpr6kkCx7
FR/Z/aSiFLRog7vEea/lh/JkuMdATXNyxcPIW/l1c64C++4GNdyD06GrhzLaZ+9F
xaP8d6U9UReYhvPxqWZsKPYJ7OJBnKgF0XMAkc1dUexJ43AVn58rOcJCr7Ly/mnN
63Y9R0vyCzqep2m5jHdhV5R8IBQjpFka7SSPcNy9ZSQzTXRI5UA6mfeDGYn8I44p
KLyJliF1iUWZ7dc6xdtnFXMebc5oetjxPpDP2AIXAiBTiR4VgZ1xfo67JVkz+yzj
dB3jwd7G9xahlIXPqzHq594kqB1z/LmPju4LGUcWuTX9Q2FloK/PIulOA9VgTp7k
1HGVcp7WAINp8b80M41Kb3nmpF57HKIdujxnYc7+lpQvELuDqcHWyh75lEDI0hxY
a7y2VLvE1+y1N47Ie6zOPObi8e5vJkNSzf1A1DbGnB8wMMqJogBHkVmU8oEbrEfj
aTcmtG9Y2srgDO8RWf2crtez+1V3RcP/6PjUlFnk0feNg2tD1Mpk0+Mcw2zruEHe
+JLSdee822ay4NCNpGjkLzxKibtkEY7d9gyAyd9OFO6Em1yqPoUZyhvSzBp/4xW5
P7ZCYluGszfDWloUiWaYM/VeduvKJVcwqxssWR/ovzFYyfyjSOU=
=LAwt
-----END PGP SIGNATURE-----

?
Your comment

This issue is archived.

To comment on this conversation send an email to 31447@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 31447
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help