GNU bug report logs - #35057
[PATCH] Add flare

Previous Next

Package: guix-patches;

Reported by: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>

Date: Sat, 30 Mar 2019 22:56:01 UTC

Severity: normal

Tags: patch

Done: iyzsong <at> member.fsf.org (宋文武)

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 35057 in the body.
You can then email your comments to 35057 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#35057; Package guix-patches. (Sat, 30 Mar 2019 22:56:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 30 Mar 2019 22:56:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: guix-patches <at> gnu.org
Subject: [PATCH] Add flare
Date: Sat, 30 Mar 2019 23:55:08 +0100
[Message part 1 (text/plain, inline)]
Hello,

The following patch adds both flare-game and flare-engine.

Feedback welcome.

Regards,

-- 
Nicolas Goaziou
[0001-gnu-Add-flare.patch (text/x-diff, inline)]
From 9e005eac3c415c3871d200e82caf6d546be15f5e Mon Sep 17 00:00:00 2001
From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Date: Sat, 30 Mar 2019 23:50:25 +0100
Subject: [PATCH] gnu: Add flare.

* gnu/packages/games.scm (flare-engine):
(flare-game): New variables.
---
 gnu/packages/games.scm | 92 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 92 insertions(+)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 169ca28459..8207b92dc9 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -6657,3 +6657,95 @@ to either exploit valuable resources from the earth by building a mine or
 fight each other on an arena-like map.")
     ;; Software as a whole is licensed under ISC, artwork under CC-BY.
     (license (list license:isc license:cc-by3.0))))
+
+(define-public flare-engine
+  (package
+    (name "flare-engine")
+    (version "1.09.01")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/flareteam/flare-engine.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1117nxir0zwz4pipx7sxj64p68ig6gbz94lkkjbgrk44lhs0hz8p"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f                      ;no test
+       #:configure-flags '("-DBINDIR=bin" "-DDATADIR=share/flare")))
+    (inputs
+     `(("hicolor-icon-theme" ,hicolor-icon-theme)
+       ("python" ,python-wrapper)
+       ("sdl" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))))
+    (home-page "http://www.flarerpg.org/")
+    (synopsis "Action Roleplaying Engine")
+    (description "Flare (Free Libre Action Roleplaying Engine) is a simple
+game engine built to handle a very specific kind of game: single-player 2D
+action RPGs.")
+    (license license:gpl3+)))
+
+(define-public flare-game
+  (package
+    (name "flare-game")
+    (version "1.09.01")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/flareteam/flare-game.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1hn2cchqsbvvgzqc6zvblnl3qrr6sp5rqxpsrcvdmbjm7b37x37b"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f                      ;no test
+       #:configure-flags '("-DDATADIR=share/flare")
+       #:phases
+       (modify-phases %standard-phases
+         ;; Flare expects the mods to be located in the same folder.
+         ;; Yet, "default" mod is in the engine, whereas the others
+         ;; are in the current package.  Merge everything here with
+         ;; a symlink.
+         (add-after 'install 'add-default-mod
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (mods (string-append out "/share/flare/mods")))
+               (with-directory-excursion mods
+                 (symlink (string-append (assoc-ref inputs "flare-engine")
+                                         "/share/flare/mods/default")
+                          "default")))
+             #t))
+         (add-after 'install 'install-executable
+           ;; The package only provides assets for the game, the
+           ;; executable coming from "flare-engine".  Since more than
+           ;; one game may use the engine, we create a new executable,
+           ;; "flare-game", which launches the engine with appropriate
+           ;; parameters.
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bash (string-append (assoc-ref inputs "bash")
+                                         "/bin/bash"))
+                    (flare (string-append (assoc-ref inputs "flare-engine")
+                                          "/bin/flare"))
+                    (script (string-append out "/bin/flare-game")))
+               (mkdir-p (dirname script))
+               (call-with-output-file script
+                 (lambda (port)
+                   (format port
+                           "#!~a
+exec ~a --data-path=~a/share/flare --mods=empyrean_campaign~%"
+                           bash
+                           flare
+                           out)))
+               (chmod script #o755))
+             #t)))))
+    (inputs
+     `(("flare-engine" ,flare-engine)))
+    (home-page "http://www.flarerpg.org/")
+    (synopsis "Fantasy action RPG using the FLARE engine")
+    (description "Flare is a single-player 2D action RPG with
+fast-paced action and a dark fantasy style.")
+    (license license:cc-by-sa3.0)))
-- 
2.21.0


Reply sent to iyzsong <at> member.fsf.org (宋文武):
You have taken responsibility. (Sun, 31 Mar 2019 02:38:01 GMT) Full text and rfc822 format available.

Notification sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
bug acknowledged by developer. (Sun, 31 Mar 2019 02:38:01 GMT) Full text and rfc822 format available.

Message #10 received at 35057-done <at> debbugs.gnu.org (full text, mbox):

From: iyzsong <at> member.fsf.org (宋文武)
To: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Cc: 35057-done <at> debbugs.gnu.org
Subject: Re: [bug#35057] [PATCH] Add flare
Date: Sun, 31 Mar 2019 10:37:46 +0800
Nicolas Goaziou <mail <at> nicolasgoaziou.fr> writes:

> Hello,
>
> The following patch adds both flare-game and flare-engine.
>
> Feedback welcome.
>

Cool, pushed, thank you!




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 28 Apr 2019 11:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.