Dear Guix, some time ago I packaged Freexl for Guix https://git.savannah.gnu.org/cgit/guix.git/commit/?id=623fb4d1629adfa97e3fe412d394ca0490742f29 I would like to write a guile module to wrap Freexl and then use my module to import data from a bunch of .xls[x] files into a postgresql db II would like my guile module to be packaged in Guix of course The problem is that I can't make a proper package of a guile module containing also some C code 😕 I took a look at Paroneayea's guile-gcrypt and I don't understand very much of all that m4 macros kung fu I think amz3 is having similarly a hard time in packaging his guile based wrap around the Wiredtiger C API Just to give you an example, in this excerpt (from guile-gcrypt configure.ac ) dnl Prepare a version of $datadir that does not contain references to dnl shell variables. (Borrowed from Sly, which borrowed from Guix...) guile_gcrypt_prefix="`eval echo $prefix | sed -e"s|NONE|/usr/local|g"`" guile_gcrypt_datadir="`eval eval echo $datadir | sed -e "s|NONE|$guile_gcrypt_prefix|g"`" AC_SUBST([guile_gcrypt_datadir]) What does "Prepare a version of $datadir that does not contain references to shell variables." mean ? I don't even understand the problem being stated here And then I think we are substituting "/usr//local" withh NONE in the prefix But why ? Of course all the remaining configure.ac is obscure to me and the same goes for Makefile.am and the contents of the "m4" folder It would be useful to have a tutorial about how to do that Or even some hints about what certain things mean, in there Maybe using a different build system would be easier ? Maybe WAF or Meson or any other ? My (limited) experience is limited to Leiningen and Boot, on this As for the read-o-fobia in the subect: please, don't suggest me to read the autotools manual. Please 😕