summary refs log tree commit diff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-02-22 11:36:02 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-02-23 06:29:09 -0500
commit5e7b0a7735d9956ee8b8c3763e4ce05e2855606f (patch)
treed158ce9110b48b70578901bccd8c5ed5bd0b2e92
parent31735e0ccfbc61905eb8558c14747bfcaea9b50f (diff)
downloadguix-5e7b0a7735d9956ee8b8c3763e4ce05e2855606f.tar.gz
pack: Add UTF-8 locales to RPM pack builder.
It's necessary as 'generate-header' call ends up calling 'find-files', which
could fail to read file names containing non-ascii characters, as spotted in
the wild:

   building /gnu/store/...-jami-rpm-pack.rpm.drv...
   find-files: ./gnu/store/...-nss-certs-3.81/etc/ssl/certs/NetLock_Arany_=Class_Gold=_F??tan??s??tv??ny.pem:
   No such file or directory

* guix/scripts/pack.scm (rpm-archive): Expand set-utf8-locale helper in the
builder gexp.
-rw-r--r--guix/scripts/pack.scm3
1 files changed, 3 insertions, 0 deletions
diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm
index 701e41ff1a..51a7b8f185 100644
--- a/guix/scripts/pack.scm
+++ b/guix/scripts/pack.scm
@@ -945,6 +945,9 @@ PREUN-FILE and POSTUN-FILE can be provided via EXTRA-OPTIONS."
                          (rnrs bytevectors)
                          (srfi srfi-1))
 
+            ;; Make sure non-ASCII file names are properly handled.
+            #+(set-utf8-locale profile)
+
             (define machine-type
               (and=> (or #$target %host-type)
                      (lambda (triplet)