Pierre Neidhardt writes: >> guix package -I local > glibc-utf8-locales 2.26.105-g0890d5379c out /gnu/store/3k6hl20c3b7big8ngrsl6mj9k8xav99d-glibc-utf8-locales-2.26.105-g0890d5379c > >> guix package -I emacs > emacs 25.3 out /gnu/store/y335nx4r08m6kg0yrna7spfwr4s05n36-emacs-25.3 > > How do I check which glibc Emacs is using? > I can think of `ldd emacs` but... Where is ldd? :p "ldd" is in "glibc" :-) You can also use `guix gc -R /gnu/store/...-emacs-25.3 | grep glibc`. > A more general question: How do I find to which non-installed package a > filename belongs? Guix does not currently know anything about the files inside each package, I typically do a web search... > If Emacs happens to be using glibc 2.25, how could such a sitution occur > in the first place? Why is glibc 2.25 needed at all? This situation can occur when you've installed emacs built against glibc 2.25 (which was the glibc in Guix until ~February), and then later updated "glibc-utf8-locales" to 2.26 which has incompatible locale data. Updating emacs would fix it in that case, since it would be built against the new glibc. On GuixSD, you can use the 'locale-libc' operating-system parameter to install locale data for multiple glibc versions to ease transition between glibc updates.