Ludovic Courtès writes: > Hello! > > Christopher Baines skribis: > >> * gnu/packages/package-management.scm (nar-herder): New variable. > > [...] > >> + (add-before 'build 'set-GUILE_AUTO_COMPILE >> + (lambda _ >> + ;; To avoid warnings relating to 'guild'. >> + (setenv "GUILE_AUTO_COMPILE" "0") >> + #t)) > > You can omit trailing #t’s. > >> + (add-after 'install 'wrap-executable >> + (lambda* (#:key inputs outputs target #:allow-other-keys) >> + (let* ((out (assoc-ref outputs "out")) >> + (bin (string-append out "/bin")) >> + (guile (assoc-ref inputs "guile")) >> + (version (target-guile-effective-version)) >> + (scm (string-append out "/share/guile/site/" version)) >> + (go (string-append out "/lib/guile/" version "/site-ccache"))) >> + (for-each >> + (lambda (file) >> + (simple-format (current-error-port) "wrapping: ~A\n" file) >> + (let ((guile-inputs (list >> + "guile-json" >> + "guile-gcrypt" >> + "guix" >> + "guile-lib" >> + "guile-sqlite3" >> + "gnutls" >> + "guile-fibers"))) >> + (wrap-program file >> + `("GUILE_LOAD_PATH" ":" prefix >> + (,scm ,(string-join >> + (map (lambda (input) >> + (simple-format >> + #f "~A/share/guile/site/~A" >> + (assoc-ref inputs input) >> + version)) >> + guile-inputs) >> + ":"))) >> + `("GUILE_LOAD_COMPILED_PATH" ":" prefix >> + (,go ,(string-join >> + (map (lambda (input) >> + (simple-format >> + #f "~A/lib/guile/~A/site-ccache" >> + (assoc-ref inputs input) >> + version)) >> + guile-inputs) >> + ":")))))) > > I’d use ‘string-append’ rather than ‘format’. > > (It’d be nice to have a streamlined solution to wrap those Guile > executables…) > >> + (license license:gpl3+)))) > > I believe it’s ‘agpl3+’ (though GPLv3+ would make it easier to share > code with Guix; something worth considering). > > Otherwise LGTM, thanks! Thanks for taking a look! I've pushed as 6f76678cb7575072395198c343a9fecc52839513 with the changes you mentioned above. Thanks, Chris