summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorKei Kebreau <kkebreau@posteo.net>2019-03-26 21:42:53 -0400
committerKei Kebreau <kkebreau@posteo.net>2019-04-21 10:36:19 -0400
commitf9fee46ffbf392af22f732b83be7d4b31109e052 (patch)
tree0c1bd0c3fbc1aed2a8bc27fa9b3ac2183838ddcd /gnu
parentd61dcb1b47285e2951c39ffab3a685910febb7ac (diff)
downloadguix-f9fee46ffbf392af22f732b83be7d4b31109e052.tar.gz
gnu: Add alex4.
* gnu/packages/games.scm (alex4): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/games.scm50
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index d22d8ba7a4..378bbc2eec 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -237,6 +237,56 @@ enemy, ally, weapon and mission types.  Features include simulated 4D texturing,
 mouse and joystick control, and original music.")
     (license license:gpl2)))
 
+(define-public alex4
+  (package
+    (name "alex4")
+    (version "1.2-alpha")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/carstene1ns/alex4/archive/"
+                           version ".tar.gz"))
+       (sha256
+        (base32 "0jj1g3v1a6lyfwp5g2ly0n9z65ryqck8jxvzr01kaqjj3lsfkrhg"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no check target
+       #:make-flags
+       (list "-Csrc"
+             "CC=gcc"
+             "CFLAGS=-D_FILE_OFFSET_BITS=64"
+             (string-append "DATADIR=" (assoc-ref %outputs "out")
+                            "/share/" ,name)
+             (string-append "PREFIX=" (assoc-ref %outputs "out")))
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda _
+             (substitute* '("src/main.c"
+                            "src/shooter.c")
+               (("fcos") "fixcos")
+               (("fmul") "fixmul")
+               (("fsin") "fixsin"))
+             #t))
+         (add-after 'install 'install-data
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((share (string-append (assoc-ref outputs "out")
+                                         "/share/" ,name)))
+               (install-file "alex4.ini" share)
+               #t))))))
+    (inputs
+     `(("allegro" ,allegro-4)
+       ("dumb" ,dumb-allegro4)))
+    (home-page "http://allegator.sourceforge.net/")
+    (synopsis "Retro platform game")
+    (description
+     "Guide Alex the Allegator through the jungle in order to save his
+girlfriend Lola from evil humans who want to make a pair of shoes out of her.
+Plenty of classic platforming in four nice colors guaranteed!
+
+The game includes a built-in editor so you can design and share your own maps.")
+    (license license:gpl2+)))
+
 (define-public armagetron-advanced
   (package
     (name "armagetron-advanced")