[PATCH] Add The Ur-Quan Masters

  • Done
  • quality assurance status badge
Details
4 participants
  • Adam Van Ymeren
  • Adonay Felipe Nogueira
  • Ludovic Courtès
  • Marius Bakke
Owner
unassigned
Submitted by
Adam Van Ymeren
Severity
normal
A
A
Adam Van Ymeren wrote on 4 Aug 2017 15:33
(address . guix-patches@gnu.org)
877eyja24v.fsf@vany.ca
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
M
M
Marius Bakke wrote on 7 Aug 2017 23:42
87poc7awd3.fsf@fastmail.com
Adam Van Ymeren <adam@vany.ca> writes:

Toggle quote (8 lines)
> 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.

Hello Adam, and welcome! Nice work for a first package. :-)

Unfortunately CC BY-NC-SA can not be included in Guix since it disallows
commercial redistribution. Do you know if there are any freely
redistributable data files available?

See 'hyperrogue' and 'git' for a couple of examples of having multiple
"origins".

Toggle quote (4 lines)
> 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.

The patch looks good to me. Now we just need some data files :-)
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlmI3qgACgkQoqBt8qM6
VPpWgwgAu/zjrlskvkWxuv+cPIurzlksHI1wd4oZCdBW1t/kRbiwlRcjBTCLUZFT
1vjWBadXo9ionOAbVxrdd9qqkDUTDGZsbN0xdbuXj/i5RZ43INICEI7PRXtjurVF
pMvC8Ti6V3LWxc9G0qmZTVEb50/kqTMoHh/2HzIUJYP7nlFxblW0mPl7z1Tc+n4M
IRhK4L2BbNxKYRd5Cc+MXegiV/qx/TxuUNwrdexdeEuCgba50tcyfzKubEhpnEei
Sn1hJCTNMhmjkupoVCRQ2mOiyW1LYPOqxGFHOjCmtZ82lGGPkPE8gRIE9yCbbMWG
LMw1D8GZHeCO8agf1B5xBFh6FCm2Dw==
=PE4m
-----END PGP SIGNATURE-----

A
A
Adam Van Ymeren wrote on 8 Aug 2017 20:07
(name . Marius Bakke)(address . mbakke@fastmail.com)(address . 27950@debbugs.gnu.org)
87zibahr1i.fsf@vany.ca
Marius Bakke <mbakke@fastmail.com> writes:

Toggle quote (2 lines)
> Hello Adam, and welcome! Nice work for a first package. :-)

Thanks!

Toggle quote (5 lines)
>
> Unfortunately CC BY-NC-SA can not be included in Guix since it disallows
> commercial redistribution. Do you know if there are any freely
> redistributable data files available?

Crap, I hadn't actually checked the license of the content until I was
basically done with the engine. I see debian has packaged the content
into their "non-free" repository.

There does not appear to be any free data files, and the developers
appear to have been fairly insistant on choosing the non-commercial
creative commons license which is disappointing.

Oh well, it's probably not worth including this package unless we can
get free data files. Due to the age of the game, perhaps the developers
could be persuaded into changing the license. I mights send the an
email to ask.
L
L
Ludovic Courtès wrote on 4 Sep 2017 15:13
(name . Marius Bakke)(address . mbakke@fastmail.com)
87fuc238tn.fsf@gnu.org
Hello,

Marius Bakke <mbakke@fastmail.com> skribis:

Toggle quote (16 lines)
> Adam Van Ymeren <adam@vany.ca> writes:
>
>> 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.
>
> Hello Adam, and welcome! Nice work for a first package. :-)
>
> Unfortunately CC BY-NC-SA can not be included in Guix since it disallows
> commercial redistribution. Do you know if there are any freely
> redistributable data files available?

Note that the GNU FSDG are more liberal than Debian’s guidelines when it
comes to “non-functional data” such as game artwork:


That said, the “NC” bit can probably cause practical problems, such as
if someone sells a GuixSD DVD, or if a company runs ‘guix publish’ and
happens to redistribute the thing.

Regardless, thanks for your work, Adam!

Ludo’.
A
A
Adonay Felipe Nogueira wrote on 6 Sep 2017 19:31
(address . guix-patches@gnu.org)
87tw0fenst.fsf@hyperbola.info
Yes, the "NC" part is problematic, see:

Note that, at least for non-functional data: the GNU FSDG is more
"strict" towards system distributions than the free/libre software
philosophy is to software in general.

For the first, the work must allow freedom 2 entirely. For the latter,
only the "share" part of freedom 2.

ludo@gnu.org (Ludovic Courtès) writes:

Toggle quote (20 lines)
> Hello,
>
>
> Note that the GNU FSDG are more liberal than Debian’s guidelines when it
> comes to “non-functional data” such as game artwork:
>
> https://www.gnu.org/distros/free-system-distribution-guidelines.html
>
> That said, the “NC” bit can probably cause practical problems, such as
> if someone sells a GuixSD DVD, or if a company runs ‘guix publish’ and
> happens to redistribute the thing.
>
> Regardless, thanks for your work, Adam!
>
> Ludo’.
>
>
>
>

--
- Palestrante e consultor sobre /software/ livre (não confundir com
gratis).
- "WhatsApp"? Ele não é livre. Por favor, use o GNU Ring ou o Tox.
- Arquivos comuns aceitos (apenas sem DRM): Corel Draw, Microsoft
Office, MP3, MP4, WMA, WMV.
- Arquivos comuns aceitos e enviados: CSV, GNU Dia, GNU Emacs Org, GNU
GIMP, Inkscape SVG, JPG, LibreOffice (padrão ODF), OGG, OPUS, PDF
(apenas sem DRM), PNG, TXT, WEBM.
L
L
Ludovic Courtès wrote on 4 Oct 2017 16:49
control message for bug #27950
(address . control@debbugs.gnu.org)
874lrf6k95.fsf@gnu.org
tags 27950 wontfix
close 27950
?