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.

Reply via email to