maint: Run ‘etc/upgrade-manifest.scm’ in a UTF-8 locale.

* etc/upgrade-manifest.scm: Add calls to ‘setlocale’ to force a UTF-8
locale.

Change-Id: Ia567a1e08124d9eab7fb32f3363681a8f37431b1
This commit is contained in:
Ludovic Courtès 2024-12-02 11:52:31 +01:00
parent 2756c660fb
commit fb41002935
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -124,5 +124,14 @@ (define joint-security-upgrades
(name (string-append (package-name package) "-full-upgrade"))))
(dependents store security-packages 2))))))
;; Install a UTF-8 locale so that file names in Git checkouts are interpreted
;; as UTF-8 (the libgit2 source tree contains non-ASCII file names, for
;; instance). XXX: This works around the fact that 'cuirass register' and
;; thus 'cuirass evaluate' may not be running with a UTF-8 locale.
(unless (string-suffix? ".UTF-8" (setlocale LC_ALL))
(or (false-if-exception (setlocale LC_ALL "C.UTF-8"))
(false-if-exception (setlocale LC_ALL "en_US.UTF-8"))
(format (current-error-port) "warning: failed to install UTF-8 locale~%")))
(concatenate-manifests
(list individual-security-upgrades joint-security-upgrades))