diff mbox

gnu: Add chromium-bsu.

Message ID 87h9cmtzgc.fsf@openmailbox.org
State New
Headers show

Commit Message

Kei Yamashita June 21, 2016, 1:59 p.m. UTC
This is a patch for another game that uses quesoglc as a
dependency. It is a simple and quick build, but I still prefer to get a
review in case of odd bugs.
From a71620d13bc3a8605f56bb11e8e3202687c379ba Mon Sep 17 00:00:00 2001
From: Kei Kebreau <kei@openmailbox.org>
Date: Tue, 21 Jun 2016 09:54:37 -0400
Subject: [PATCH] gnu: Add chromium-bsu.

* gnu/packages/games (chromium-bsu): New variable.
---
 gnu/packages/games.scm | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

Comments

Leo Famulari June 21, 2016, 9:44 p.m. UTC | #1
On Tue, Jun 21, 2016 at 09:59:31AM -0400, Kei Kebreau wrote:
> * gnu/packages/games (chromium-bsu): New variable.

> +    (arguments
> +     `(#:phases (modify-phases %standard-phases
> +                  (add-after 'set-paths 'set-sdl-paths
> +                             (lambda* (#:key inputs #:allow-other-keys)
> +                               (setenv "CPATH"
> +                                       (string-append (assoc-ref inputs "sdl-union")
> +                                                      "/include/SDL"))
> +                               #t)))))

If you move (modify-phases) underneath #:phases, then this will be
comfortably shorter than 80 characters :)

> +    (native-inputs `(("pkg-config" ,pkg-config)))
> +    (inputs `(("freeglut" ,freeglut)
> +              ("glu" ,glu)
> +              ("quesoglc" ,quesoglc)
> +              ("sdl-union" ,(sdl-union (list sdl sdl-image sdl-mixer)))))

The output doesn't refer to freeglut. I wonder if it should be
native, propagated, or if it's not needed, etc?

I ran the game on GuixSD, and it did work, although it was much slower
than on my Debian system. I don't know if that was merely a consequence
of the GuixSD system using much older hardware, or if it's related to
the missing reference to freeglut.
Alex Kost June 22, 2016, 8:24 a.m. UTC | #2
Leo Famulari (2016-06-22 00:44 +0300) wrote:

> On Tue, Jun 21, 2016 at 09:59:31AM -0400, Kei Kebreau wrote:
>> * gnu/packages/games (chromium-bsu): New variable.
>
>> +    (arguments
>> +     `(#:phases (modify-phases %standard-phases
>> +                  (add-after 'set-paths 'set-sdl-paths
>> +                             (lambda* (#:key inputs #:allow-other-keys)
>> +                               (setenv "CPATH"
>> +                                       (string-append (assoc-ref inputs "sdl-union")
>> +                                                      "/include/SDL"))
>> +                               #t)))))
>
> If you move (modify-phases) underneath #:phases, then this will be
> comfortably shorter than 80 characters :)

I agree with Leo, I would also reformat it like this:

  (arguments
   `(#:phases
     (modify-phases %standard-phases
       (add-after 'set-paths 'set-sdl-paths
         (lambda* (#:key inputs #:allow-other-keys)
           (setenv "CPATH"
                   (string-append (assoc-ref inputs "sdl-union")
                                  "/include/SDL"))
           #t)))))
diff mbox

Patch

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 4141d5e..6d0a017 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -2447,3 +2447,40 @@  tactics.")
                    license:expat
                    license:gpl2+
                    license:lgpl2.1+))))
+
+(define-public chromium-bsu
+  (package
+    (name "chromium-bsu")
+    (version "0.9.15.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/" name
+                                  "/Chromium B.S.U. source code/"
+                                  name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "01c4mki0rpz6wrqbf18fj4vd7axln5v0xqm80cyksbv63g04s6w6"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-after 'set-paths 'set-sdl-paths
+                             (lambda* (#:key inputs #:allow-other-keys)
+                               (setenv "CPATH"
+                                       (string-append (assoc-ref inputs "sdl-union")
+                                                      "/include/SDL"))
+                               #t)))))
+    (native-inputs `(("pkg-config" ,pkg-config)))
+    (inputs `(("freeglut" ,freeglut)
+              ("glu" ,glu)
+              ("quesoglc" ,quesoglc)
+              ("sdl-union" ,(sdl-union (list sdl sdl-image sdl-mixer)))))
+    (home-page "http://chromium-bsu.sourceforge.net/")
+    (synopsis "Fast-paced, arcade-style, top-scrolling space shooter")
+    (description
+     "In this game you are the captain of the cargo ship Chromium B.S.U. and
+are responsible for delivering supplies to the troops on the front line.  Your
+ship has a small fleet of robotic fighters which you control from the relative
+safety of the Chromium vessel.")
+    ;; Clarified Artistic License for everything but sound, which is covered
+    ;; by the Expat License.
+    (license (list license:clarified-artistic license:expat))))