Re: [PATCH] gnu: Add Mr. Rescue.
Hartmut Goebelwrites: > 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.
Re: [PATCH] gnu: Add Mr. Rescue.
Ricardo Wurmuswrites: > 宋文武 writes: > >> * gnu/packages/games.scm (mrrescue): New variable. >> --- >> gnu/packages/games.scm | 48 >> 1 file changed, 48 insertions(+) >> >> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm >> index d386e2c..8d321fc 100644 >> --- a/gnu/packages/games.scm >> +++ b/gnu/packages/games.scm >> @@ -2856,3 +2856,51 @@ programmers may also add their own favorite >> language.") >> application that locks the keyboard and mouse and instead displays bright >> colors, pictures, and sounds.") >> (license license:gpl3+))) >> + >> +(define-public mrrescue >> + (package >> +(name "mrrescue") >> +(version "1.02e") >> +(source (origin >> + (method url-fetch) >> + (uri (string-append >> +"https://github.com/SimonLarsen/mrrescue/releases/; >> +"download/" version "/" name version ".love")) >> + (file-name (string-append name "-" version ".love")) > > What is this file? Are these sources or is this a binary image? > >> [...] > > Is the “.love” file the source archive? In the repository I only see > “.lua” files. Shouldn’t we compile them from source? It's both the love2d package format and source archive [1], which is just a zip file of the project directory. [1] https://love2d.org/wiki/Game_Distribution
Re: [PATCH] gnu: Add Mr. Rescue.
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. 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. -- Regards Hartmut Goebel | Hartmut Goebel | h.goe...@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible |