diff mbox

gnu: Add chromium-bsu.

Message ID 871t3qm3oy.fsf@openmailbox.org
State New
Headers show

Commit Message

Kei Yamashita June 22, 2016, 1:07 a.m. UTC
Leo Famulari <leo@famulari.name> writes:

> 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.

The freeglut library is not needed. I mistakenly left out pkg-config in
an earlier build and added it because Chromium B.S.U. complained of a
missing glut library. A corrected patch is attached. (Also, I noticed no
speed difference between the two builds.)
From c1075872bba7ea3150c13ab7983ffd6b48bae4ad Mon Sep 17 00:00:00 2001
From: Kei Kebreau <kei@openmailbox.org>
Date: Tue, 21 Jun 2016 20:52:24 -0400
Subject: [PATCH] gnu: Add chromium-bsu.

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

Patch

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 4141d5e..9ec8e8e 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -2447,3 +2447,39 @@  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 `(("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))))