Hello, Mark H Weaver <[email protected]> skribis:
> Pierre Neidhardt <[email protected]> writes: > >>> : > Store file names are always ASCII so problems arise when they are stored >>> : > as UTF-16 or UTF-32/UCS-4. >>> : >>> : I understand that most programs stick to ASCII filenames, but what about >>> the odd >>> : one using non-English, special characters? >>> >>> That’s a separate debate. :-) Essentially this restriction on store >>> file names has always been there in Guix (and Nix before that). If we >>> were to change it, that would raise compatibility issues. >> >> But what happens if we attempt to store "á" in the store? > > Indeed. Although we might restrict the immediate entries within > /gnu/store to ASCII characters, file names deeper within those > directories may have non-ASCII characters. More generally, store > references may occur within larger strings which might include non-ASCII > characters. Right. For example ‘nss-certs’ contains non-ASCII, UTF-8-encoded file names. For “top-level” store file names, the restriction is enforced by ‘checkStoreName’ in libstore/store-api.cc. Ludo’.
