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.