Hi Maxime, Maxime Devos skribis: > Seems like we are missing a general & documented & simple to use > 'lower-object-completely' (or maybe 'compile-object'?) procedure for > this ... And maybe also a ,build-object REPL command? How about the attached patch? Sample session: --8<---------------cut here---------------start------------->8--- scheme@(guile-user)> ,use(gnu packages base) scheme@(guile-user)> ,build coreutils $11 = "/gnu/store/y8933036ljrz4ah9zcph09nmvdmmv5sf-coreutils-8.32-debug" $12 = "/gnu/store/8fpk2cja3f07xls48jfnpgrzrljpqivr-coreutils-8.32" scheme@(guile-user)> ,lower coreutils $13 = # /gnu/store/y8933036ljrz4ah9zcph09nmvdmmv5sf-coreutils-8.32-debug /gnu/store/8fpk2cja3f07xls48jfnpgrzrljpqivr-coreutils-8.32 7f0ebaf821e0> scheme@(guile-user)> ,build (computed-file "foo" #~(begin (display "hi!\n")(mkdir #$output)(mkdir #$output:lib))) $14 = "/gnu/store/axij9bkg56xv3k1z0l20gd6b0swn14sy-foo-lib" $15 = "/gnu/store/h5s7k7m0fxk9n7q7729l3n4q7vyxnvpy-foo" scheme@(guile-user)> ,build (computed-file "foo" #~(begin (display "Goeden dag!\n")(mkdir #$output))) substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0% substitute: updating substitutes from 'https://guix.bordeaux.inria.fr'... 100.0% building /gnu/store/gplhka9g0bwv8b640zavw1z65y9zrvag-foo.drv... $16 = "/gnu/store/ynvga6gxwj68mmk8ddj3i9sjhavkqah1-foo" --8<---------------cut here---------------end--------------->8--- “lower” does what you would expect; “build” yields one value per output. If that works for you, I’ll update the manual accordingly, and we can always add more features (like build options) later on. Thoughts? Thanks, Ludo’.