summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorAttila Lendvai <attila@lendvai.name>2022-04-19 20:09:55 +0200
committerLudovic Courtès <ludo@gnu.org>2022-04-20 23:46:43 +0200
commit8852f911ff506dd50b714274ba0e2143f0285f78 (patch)
tree3dc95d468f3b14a82c65884d499496942ed7fafd /gnu
parent8540c2d86ca535ceb188c838cf1885de6f65c94f (diff)
downloadguix-patches-8852f911ff506dd50b714274ba0e2143f0285f78.tar
guix-patches-8852f911ff506dd50b714274ba0e2143f0285f78.tar.gz
git-download: Set locale to deal with Unicode in git metadata.
Without this the git-fetch GEXP is run in an environment that uses ASCII character encoding when strings are crossing the Guile - C boundary. It means that e.g. tag names that have Unicode chars in them will cause problems, e.g. when walking and deleting the .git directory. An example in the wild: https://github.com/klauspost/pgzip/tags Fixes <https://issues.guix.gnu.org/54893>. * guix/git-download.scm (git-fetch): Call 'setenv' and 'setlocale' to set it to en_US.utf8. * gnu/packages/commencement.scm (glibc-utf8-locales-final): Make public. Add 'properties' field. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/commencement.scm4
1 files changed, 3 insertions, 1 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index e8b47fbeab..1fed8bcd6e 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -3613,7 +3613,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(with-boot4 (hidden-package
(package-with-bootstrap-guile guile-3.0/fixed))))
-(define glibc-utf8-locales-final
+(define-public glibc-utf8-locales-final
;; Now that we have GUILE-FINAL, build the UTF-8 locales. They are needed
;; by the build processes afterwards so their 'scm_to_locale_string' works
;; with the full range of Unicode codepoints (remember
@@ -3621,6 +3621,8 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
;; function.)
(package
(inherit glibc-utf8-locales)
+ (properties `((hidden? . #t)
+ ,@(package-properties glibc-utf8-locales)))
(native-inputs
`(("glibc" ,glibc-final)
("gzip" ,(with-boot4 gzip))))))