Hartmut Goebel <h.goe...@crazy-compilers.com> writes: > Am 17.09.2016 um 15:24 schrieb 宋文武: >> + (let* ((out (assoc-ref %outputs "out")) >> + (bindir (string-append out "/bin")) >> + (prog (string-append bindir "/mrrescue")) >> + (source (assoc-ref %build-inputs "source")) >> + (guile (string-append (assoc-ref %build-inputs "guile") >> + "/bin/guile")) >> + (love (string-append (assoc-ref %build-inputs "love") >> + "/bin/love"))) >> + (mkdir-p bindir) >> + (with-output-to-file prog >> + (lambda () >> + (format #t "#!~a --no-auto-compile~%!#~%" guile) >> + (write `(execl ,love "mrrescue" ,source)) >> + (newline))) > > This looks like you are creating a starter-script which is pointing to > the source. This will not work, since the source will not be installed > when installing the package.
Yes, but it works. The source is referenced by the script, so it will be downloaded into the store. > > You want to > > - copy the source file into (string-append out "/share/" ,name) > > - create a starter script > > I also suggest using a shell-script as starter (instead of a guile > wrapper), since this is more natural for me. OK, both are fine to me.