宋文武 <iyzs...@gmail.com> 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? > + (sha256 > + (base32 > + "0jwzbwkgp1l5ia6c7s760gmdirbsncp6nfqp7vqdqsfb63la9gl2")))) > + (build-system trivial-build-system) > + (arguments > + '(#:modules ((guix build utils)) > + #:builder > + (begin > + (use-modules (guix build utils)) > + (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))) > + (chmod prog #o755) > + #t)))) Is the “.love” file the source archive? In the repository I only see “.lua” files. Shouldn’t we compile them from source? ~~ Ricardo