> There's two issues here: > > One, you can't use a gexp in FILES. This will work fine: > > (files (list (string-append "share/" name "-" version))) "name" and "version" come directly from the package definition? How do I know where to use gexp's and where not? > Two, this: > > '(string-append "share/" name "-" version) > > does *not* evaluate to what you think it does; in fact, it becomes this: > > (list 'string-append "share/" 'name "-" 'version) > > a list of strings and symbols, because it's quoted. If you want to use > an expression within a quoted form, you can use quasiquote: > > `(,(string-append …)) > > LIST works fine most of the time, though. Thanks I knew about quasiquote, but as mentioned above when do I have to use quasiquote and when do I use gexp's? Using one or the other makes the package description more readable IMO. And why does it look like that in the error message it was actually able to evaluate #$name to a string (cfdemcoupling; the package name) but still fails with an error...? Thanks again and best regards, -- Reza Housseini This message is signed with my GnuPG key: C0F3 0812 9AF2 80F4 0830 C2C1 C375 C6AF 0512 5C52