GNU bug report logs -
#39970
guix commands broken on Azerbaijani 'az_AZ' and Turkish 'tr_TR' locales
Previous Next
Full log
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
After running
export LC_ALL=tr_TR.utf8
many important Guix commands like 'guix environment', 'guix install'
and 'guix pull' fail.
$ guix environment --ad-hoc hello
Backtrace:
1 (primitive-load "/home/florian/.config/guix/current/bin…")
In guix/ui.scm:
1826:12 0 (run-guix-command _ . _)
guix/ui.scm:1826:12: In procedure run-guix-command:
In procedure string-length: Wrong type argument in position 1 (expecting string): #f
Running guix via ./pre-inst-env gives a more useful backtrace. The
reason is that in guix/store.scm
(use-modules (ice-9 regex))
(regexp-exec (make-regexp "^/gnu/store/([0-9a-df-np-sv-z]{32})-([^/]+)$")
"/gnu/store/bv9py3f2dsa5iw0aijqjv9zxwprcy1nb-fontconfig-2.13.1.drv")
evaluates to #f in Turkish, possibly because of the presence of
dotless i (ı) in the range.
The attached patch fixes the issue by including i explicitly, but I
believe enumerating all of [0-9abcdfghijklmnpqrsvwxyz] explicitly
might be more future-proof.
Shall I push the patch modified to list all letters in
[0-9abcdfghijklmnpqrsvwxyz] explicitly? Numbers too? I suppose there
is no downside to listing all without ranges.
I wonder what else is affected; the installer maybe? I have not
tested yet.
Regards,
Florian
[0001-store-Fix-many-guix-commands-failing-on-some-locales.patch (text/plain, attachment)]
This bug report was last modified 4 years and 40 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.