(address . guix-patches@gnu.org)
This is my first package so obviously comments are welcome. This
package only contains the engine. The data files are distributed as a
few separate archives. According to their wiki the data files are
available under a free(ish) license (CC BY-NC-SA 2.5). A few separate
packages will have to be made for those I guess? I'm not sure how to
include multiple source files in a single package, if this is even
supported.
UQM uses a pretty custom looking build system so I had to replace all
phases of the build, but it appears to work now. After installation the
games starts and the dies complaining about missing data files.
---
gnu/packages/games.scm | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)
Toggle diff (63 lines)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 2dec9a395..08f99cf61 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -4579,3 +4579,56 @@ computer-hosted roleplaying games. This is the last version released by
Crowther & Woods, its original authors, in 1995. It has been known as
\"adventure 2.5\" and \"430-point adventure\".")
(license license:bsd-2))))
+
+(define-public uqm
+ (package
+ (name "uqm")
+ (version "0.7.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/sc2/UQM/0.7/"
+ name "-" version "-source.tgz"))
+ (sha256
+ (base32
+ "08dj7fsvflxx69an6vpf3wx050mk0ycmdv401yffrrqbgxgmqsd3"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-source-shebangs 'patch-build-config
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "build/unix/build.config"
+ (("/usr/local/games") (assoc-ref outputs "out")))))
+ (add-after 'set-paths 'set-sdl-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CPATH"
+ (string-append (assoc-ref inputs "sdl-union")
+ "/include/SDL"))))
+ (replace 'configure
+ (lambda _
+ (setenv "SH" (which "sh"))
+ (zero? (system* "sh" "build.sh" "uqm" "config"))))
+ (replace 'build
+ (lambda _
+ (zero? (system* "sh" "build.sh" "uqm"))))
+ (replace 'install
+ (lambda _
+ (zero? (system* "sh" "build.sh" "uqm" "install")))))))
+ (inputs
+ `(("sdl-union" ,(sdl-union (list sdl sdl-image sdl-mixer)))
+ ("glu" ,glu)
+ ("libvorbis" ,libvorbis)
+ ("libogg" ,libogg)
+ ("libmikmod" ,libmikmod)))
+ (native-inputs
+ `(("mesa" ,mesa)
+ ("pkg-config" ,pkg-config)))
+ (home-page "http://sc2.sourceforge.net/")
+ (synopsis "Port of Star Control II for modern systems")
+ (description
+ "The Ur-Quan Masters, sometimes referred to as UQM, is a port of Star
+Control II for modern personal computers and operating systems from the
+original 3DO source code released to the fan community by Toys For Bob in
+August 2002.")
+ (license license:gpl2+)))
--
2.13.3