Hooray, I've managed to run Next Browser on GuixSD! The main issue is with cffi: it does not find the libraries installed by Guix. Andy's CFFI package does not seem to cut it. I've asked on the CFFI mailing list and received the following suggestion: https://mailman.common-lisp.net/pipermail/cffi-devel/2018-May/003051.html Now to the question of packaging CFFI for Guix: which road shall we follow? - Package CFFI as-is and tweak `cffi:*foreign-library-directories*` when packaging packages that depend on it. - Package a patched version of CFFI to lookup a specific library folder... But I'm not sure which one. The problem with the first solution is that I'm not sure we can apply it with the way ASDF works with common lisp system like Next. Here follow Next's Makefile: --8<---------------cut here---------------start------------->8--- LISP?=sbcl build-gtk: $(LISP) \ --load next.asd \ --eval '(ql:quickload :next/gtk)' \ --eval '(asdf:make :next/gtk)' \ --eval '(quit)' --8<---------------cut here---------------end--------------->8--- We could patch it to --8<---------------cut here---------------start------------->8--- LISP?=sbcl build-gtk: $(LISP) \ --eval '(ql:quickload :cffi)' \ --eval '(push (format nil "~a/.guix-profile/lib/" (uiop:getenv "HOME")) cffi:*foreign-library-directories*)' \ ## Rest is as usual. --load next.asd \ --eval '(ql:quickload :next/gtk)' \ --eval '(asdf:make :next/gtk)' \ --eval '(quit)' --8<---------------cut here---------------end--------------->8--- Or maybe just set `LISP=sbcl --eval '(ql:quickload :cffi...)`. Suggestions? -- Pierre Neidhardt