Hello, FWIW, there was a similar issue with Guile-DSV:   https://github.com/artyom-poptsov/guile-dsv/issues/10 The difference is that Guile-DSV API allows to set the Guile-SMC logging driver and its options. I've added the same functionality to the Guile-INI API: https://github.com/artyom-poptsov/guile-ini/commit/82ff585070e656f66f874293327fa541382f95ed Please check if it works for you. Thanks, - avp On 11.10.2023 01:33, Fabio Natali wrote: > Fabio Natali wrote: >> I've been struggling with the following g-expression that makes use of >> the guile-ini library. > Quick update, this works well: > > #+begin_src scheme :noeval > (use-modules (gnu packages guile-xyz) > (guix gexp)) > > (define foo > (computed-file > "foo" > (with-imported-modules '((guix build utils)) > (with-extensions (list guile-ini guile-smc guile-lib) > #~(begin > (use-modules (guix build utils) > (ice-9 pretty-print) > (ini) > (smc core log)) > (mkdir-p "/tmp") > (smc-log-init! "file" `((file . "/tmp/test"))) > (call-with-output-file #$output > (lambda (output) > (pretty-print > (call-with-input-file #$(local-file "/tmp/config.ini") > ini->scm) > output)))))))) > > foo > #+end_src > > Now, that was just a stripped down version of what I need to do though! > > The real gexp uses =(open-pipe* OPEN_READ command ...)= instead, where > =command= is a script that calls guile-ini (and therefore guile-smc, and > therefore the logger). I can't use =smc-log-init!= the same way > then... I'll keep you posted if something comes to mind. > > Cheers, F. >