Kei Kebreau <kkebr...@posteo.net> writes: > Arun Isaac <arunis...@systemreboot.net> writes: > >> Please find attached an updated patchset. >> >> Changes are as follows: >> >> * Disabled parallel build. >> * Included a make-reproducible phase for openttd-opensfx. >> * Changed the license for openmsx from cc-sampling+ to gpl2. It was >> wrong earlier. >> * Changed python dependency to python2-minimal for both openttd-openmsx >> and openttd-opensfx. >> >>>From 8e1a146fde935cc1635c7a9f162e95c16871a8cf Mon Sep 17 00:00:00 2001 >> From: Arun Isaac <arunis...@systemreboot.net> >> Date: Wed, 13 Sep 2017 22:06:12 +0530 >> Subject: [PATCH 1/6] gnu: Add catcodec. >> >> * gnu/packages/game-development.scm (catcodec): New variable. >> --- >> gnu/packages/game-development.scm | 26 ++++++++++++++++++++++++++ >> 1 file changed, 26 insertions(+) >> >> diff --git a/gnu/packages/game-development.scm >> b/gnu/packages/game-development.scm >> index 5633456d4..9916a1cb3 100644 >> --- a/gnu/packages/game-development.scm >> +++ b/gnu/packages/game-development.scm >> @@ -11,6 +11,7 @@ >> ;;; Copyright © 2017 Tobias Geerinckx-Rice <m...@tobias.gr> >> ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis...@gmail.com> >> ;;; Copyright © 2017 Peter Mikkelsen <petermikkelse...@gmail.com> >> +;;; Copyright © 2017 Arun Isaac <arunis...@systemreboot.net> >> ;;; >> ;;; This file is part of GNU Guix. >> ;;; >> @@ -192,6 +193,31 @@ necessary. >> ;; The MD5 implementation contained in GRFID is under the zlib license. >> (license (list license:gpl2 license:gpl2+ license:zlib)))) >> >> +(define-public catcodec >> + (package >> + (name "catcodec") >> + (version "1.0.5") >> + (source >> + (origin >> + (method url-fetch) >> + (uri (string-append "https://binaries.openttd.org/extra/catcodec/" >> + version "/catcodec-" version "-source.tar.xz")) >> + (sha256 >> + (base32 >> + "1qg0c2i4p29sxj0q6qp2jynlrzm5pphz2xhcjqlxa69ycrnlxzs7")))) >> + (build-system gnu-build-system) >> + (arguments >> + `(#:tests? #f ; no tests >> + #:make-flags (list (string-append "prefix=" %output)) >> + #:phases (modify-phases %standard-phases >> + (delete 'configure)))) >> + (home-page "http://dev.openttdcoop.org/projects/catcodec") >> + (synopsis "Encode/decode OpenTTD sounds") >> + (description "catcodec encodes and decodes sounds for OpenTTD. These >> +sounds are not much more than some metadata (description and filename) and >> raw >> +PCM data.") >> + (license license:gpl2))) >> + >> (define-public gzochi >> (package >> (name "gzochi") >> -- >> 2.14.1 >> >>>From f5c1a501c9ba193178db40d514aa337807cdfefb Mon Sep 17 00:00:00 2001 >> From: Arun Isaac <arunis...@systemreboot.net> >> Date: Wed, 13 Sep 2017 22:21:56 +0530 >> Subject: [PATCH 2/6] licenses: Add CC-Sampling+ 1.0. >> >> * guix/licenses.scm (cc-sampling-plus-1.0): New variable. >> --- >> guix/licenses.scm | 6 ++++++ >> 1 file changed, 6 insertions(+) >> >> diff --git a/guix/licenses.scm b/guix/licenses.scm >> index b7dadd975..6de611da2 100644 >> --- a/guix/licenses.scm >> +++ b/guix/licenses.scm >> @@ -41,6 +41,7 @@ >> cc0 >> cc-by2.0 cc-by3.0 cc-by4.0 >> cc-by-sa2.0 cc-by-sa3.0 cc-by-sa4.0 >> + cc-sampling-plus-1.0 >> cddl1.0 >> cecill cecill-b cecill-c >> artistic2.0 clarified-artistic >> @@ -206,6 +207,11 @@ at URI, which may be a file:// URI pointing the >> package's tree." >> "http://creativecommons.org/licenses/by/2.0/" >> "Creative Commons Attribution 2.0 Generic")) >> >> +(define cc-sampling-plus-1.0 >> + (license "CC-Sampling+ 1.0" >> + "https://creativecommons.org/licenses/sampling+/1.0" >> + "Creative Commons Sampling Plus 1.0")) >> + >> (define cddl1.0 >> (license "CDDL 1.0" >> "http://directory.fsf.org/wiki/License:CDDLv1.0" >> -- >> 2.14.1 >> >>>From 3c5f0b4ecbe05f7957c324946ab108fce73dd875 Mon Sep 17 00:00:00 2001 >> From: Arun Isaac <arunis...@systemreboot.net> >> Date: Wed, 13 Sep 2017 22:35:02 +0530 >> Subject: [PATCH 3/6] gnu: Add openttd-opensfx. >> >> * gnu/packages/games.scm (openttd-opensfx): New variable. >> --- >> gnu/packages/games.scm | 38 ++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 38 insertions(+) >> >> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm >> index 7bfd05cc7..ed386fc84 100644 >> --- a/gnu/packages/games.scm >> +++ b/gnu/packages/games.scm >> @@ -2525,6 +2525,44 @@ OpenGFX provides you with... >> @end enumerate") >> (license license:gpl2))) >> >> +(define openttd-opensfx >> + (package >> + (name "openttd-opensfx") >> + (version "0.2.3") >> + (source >> + (origin >> + (method url-fetch) >> + (uri (string-append >> + "https://binaries.openttd.org/extra/opensfx/" >> + version "/opensfx-" version "-source.tar.gz")) >> + (sha256 >> + (base32 >> + "03jxgp02ks31hmsdh4xh0xcpkb70ds8jakc9pfc1y9vdrdavh4p5")))) >> + (build-system gnu-build-system) >> + (native-inputs >> + `(("catcodec" ,catcodec) >> + ("python" ,python2-minimal))) >> + (arguments >> + `(#:make-flags >> + (list (string-append "INSTALL_DIR=" %output >> + "/share/games/openttd/baseset/opensfx")) >> + #:phases >> + (modify-phases %standard-phases >> + (add-after 'unpack 'make-reproducible >> + (lambda _ >> + ;; Remove the time dependency of the installed tarball by >> setting >> + ;; the modification times if its members to 0. >> + (substitute* "scripts/Makefile.def" >> + (("-cf") " --mtime=@0 -cf")) >> + #t)) >> + (delete 'configure)))) >> + (home-page "http://dev.openttdcoop.org/projects/opensfx") >> + (synopsis "Base sounds for OpenTTD") >> + (description "OpenSFX is a set of free base sounds for OpenTTD which >> make >> +it possible to play OpenTTD without requiring the proprietary sound files >> from >> +the original Transport Tycoon Deluxe.") >> + (license license:cc-sampling-plus-1.0))) >> + >> (define-public openttd >> (package >> (inherit openttd-engine) >> -- >> 2.14.1 >> >>>From 041b20b236b936fea9813d65e2bc76c657f2f7a0 Mon Sep 17 00:00:00 2001 >> From: Arun Isaac <arunis...@systemreboot.net> >> Date: Thu, 14 Sep 2017 04:18:03 +0530 >> Subject: [PATCH 4/6] gnu: Add openttd-openmsx. >> >> * gnu/packages/games.scm (openttd-openmsx): New variable. >> --- >> gnu/packages/games.scm | 38 ++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 38 insertions(+) >> >> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm >> index ed386fc84..891c17ab1 100644 >> --- a/gnu/packages/games.scm >> +++ b/gnu/packages/games.scm >> @@ -2563,6 +2563,44 @@ it possible to play OpenTTD without requiring the >> proprietary sound files from >> the original Transport Tycoon Deluxe.") >> (license license:cc-sampling-plus-1.0))) >> >> +(define openttd-openmsx >> + (package >> + (name "openttd-openmsx") >> + (version "0.3.1") >> + (source >> + (origin >> + (method url-fetch) >> + (uri (string-append >> + "https://binaries.openttd.org/extra/openmsx/" >> + version "/openmsx-" version "-source.tar.gz")) >> + (sha256 >> + (base32 >> + "0nskq97a6fsv1v6d62zf3yb8whzhqnlh3lap3va3nzvj7csjgf7c")))) >> + (build-system gnu-build-system) >> + (native-inputs >> + `(("python" ,python2-minimal))) >> + (arguments >> + `(#:make-flags >> + (list (string-append "INSTALL_DIR=" %output >> + "/share/games/openttd/baseset")) >> + #:phases >> + (modify-phases %standard-phases >> + (delete 'configure) >> + (add-after 'install 'post-install >> + ;; Rename openmsx-version to openmsx >> + (lambda* (#:key outputs #:allow-other-keys) >> + (let ((install-directory (string-append (assoc-ref outputs >> "out") >> + >> "/share/games/openttd/baseset"))) >> + (rename-file (string-append install-directory "/openmsx-" >> ,version) >> + (string-append install-directory "/openmsx")) >> + #t)))))) >> + (home-page "http://dev.openttdcoop.org/projects/openmsx") >> + (synopsis "Music set for OpenTTD") >> + (description "OpenMSX is a music set for OpenTTD which makes it possible >> +to play OpenTTD without requiring the proprietary music from the original >> +Transport Tycoon Deluxe.") >> + (license license:gpl2))) >> + >> (define-public openttd >> (package >> (inherit openttd-engine) >> -- >> 2.14.1 >> >>>From 63ec3d03804e0dd093472d7e0a7a78be4e6ece5c Mon Sep 17 00:00:00 2001 >> From: Arun Isaac <arunis...@systemreboot.net> >> Date: Thu, 14 Sep 2017 04:19:26 +0530 >> Subject: [PATCH 5/6] gnu: openttd: Include openttd-openmsx and >> openttd-opensfx. >> >> * gnu/packages/games.scm (openttd-opengfx)[arguments]: Change installation >> directory from /share/openttd/baseset/opengfx to >> /share/games/openttd/baseset/opengfx. >> (openttd-engine)[arguments]: Support #:configure-flags keyword argument in >> 'configure' phase. >> (openttd)[inputs]: Add timidity++. >> [native-inputs]: Add openttd-openmsx and openttd-opensfx. >> [arguments]: Configure with timidity as MIDI player. Install data from >> openttd-openmsx and openttd-opensfx. >> --- >> gnu/packages/games.scm | 57 >> ++++++++++++++++++++++++++------------------------ >> 1 file changed, 30 insertions(+), 27 deletions(-) >> >> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm >> index 891c17ab1..022a3ca44 100644 >> --- a/gnu/packages/games.scm >> +++ b/gnu/packages/games.scm >> @@ -2427,17 +2427,19 @@ and a game metadata scraper.") >> ;; The build process fails if the configure script is passed the >> ;; option "--enable-fast-install". >> (replace 'configure >> - (lambda* (#:key inputs outputs #:allow-other-keys) >> + (lambda* (#:key inputs outputs (configure-flags '()) >> + #:allow-other-keys) >> (let ((out (assoc-ref outputs "out")) >> (lzo (assoc-ref inputs "lzo"))) >> (zero? >> - (system* "./configure" >> - (string-append "--prefix=" out) >> - ;; Provide the "lzo" path. >> - (string-append "--with-liblzo2=" >> - lzo "/lib/liblzo2.a") >> - ;; Put the binary in 'bin' instead of 'games'. >> - "--binary-dir=bin")))))))) >> + (apply system* "./configure" >> + (string-append "--prefix=" out) >> + ;; Provide the "lzo" path. >> + (string-append "--with-liblzo2=" >> + lzo "/lib/liblzo2.a") >> + ;; Put the binary in 'bin' instead of 'games'. >> + "--binary-dir=bin" >> + configure-flags)))))))) >> (native-inputs `(("pkg-config" ,pkg-config))) >> (inputs >> `(("allegro" ,allegro-4) >> @@ -2464,10 +2466,6 @@ engine. When you start it you will be prompted to >> download a graphics set.") >> ;; different terms. >> (license (list license:bsd-3 license:gpl2 license:lgpl2.1+ >> license:zlib)))) >> >> -;; TODO Add 'openttd-opengfx' and 'openttd-openmsx' packages and make >> -;; 'openttd' a wrapper around them. The engine is playable by itself, >> -;; but it asks a user to download graphics if it's not found. >> - >> (define openttd-opengfx >> (package >> (name "openttd-opengfx") >> @@ -2485,7 +2483,7 @@ engine. When you start it you will be prompted to >> download a graphics set.") >> '(#:make-flags (list "CC=gcc" >> (string-append "INSTALL_DIR=" >> (assoc-ref %outputs "out") >> - "/share/openttd/baseset")) >> + >> "/share/games/openttd/baseset/opengfx")) >> #:phases >> (modify-phases %standard-phases >> (replace 'configure >> @@ -2606,22 +2604,27 @@ Transport Tycoon Deluxe.") >> (inherit openttd-engine) >> (name "openttd") >> (arguments >> - (substitute-keyword-arguments (package-arguments openttd-engine) >> - ((#:phases phases) >> - `(modify-phases ,phases >> - (add-after 'install 'install-data >> - (lambda* (#:key inputs outputs #:allow-other-keys) >> - (let* >> - ((opengfx (assoc-ref inputs "opengfx")) >> - (out (assoc-ref outputs "out")) >> - (gfx-dir >> - (string-append out >> - >> "/share/games/openttd/baseset/opengfx"))) >> - (mkdir-p gfx-dir) >> - (copy-recursively opengfx gfx-dir)) >> - #t)))))) >> + `(#:configure-flags >> + (list (string-append "--with-midi=" (assoc-ref %build-inputs >> "timidity++") >> + "/bin/timidity")) >> + ,@(substitute-keyword-arguments (package-arguments openttd-engine) >> + ((#:phases phases) >> + `(modify-phases ,phases >> + (add-after 'install 'install-data >> + (lambda* (#:key inputs outputs #:allow-other-keys) >> + (for-each >> + (lambda (input) >> + (copy-recursively (assoc-ref inputs input) >> + (assoc-ref outputs "out"))) >> + (list "opengfx" "openmsx" "opensfx")) >> + #t))))))) >> + (inputs >> + `(("timidity++" ,timidity++) >> + ,@(package-inputs openttd-engine))) >> (native-inputs >> `(("opengfx" ,openttd-opengfx) >> + ("openmsx" ,openttd-openmsx) >> + ("opensfx" ,openttd-opensfx) >> ,@(package-native-inputs openttd-engine))))) >> >> (define-public pinball >> -- >> 2.14.1 >> >>>From 17f0628c11256f22c536b3723365fc9a1ccdafdd Mon Sep 17 00:00:00 2001 >> From: Arun Isaac <arunis...@systemreboot.net> >> Date: Tue, 19 Sep 2017 18:10:27 +0530 >> Subject: [PATCH 6/6] gnu: openttd-opengfx: Disable parallel build. >> >> * gnu/packages/games.scm (openttd-opengfx)[arguments]: Set #:parallel-build? >> to #f. >> --- >> gnu/packages/games.scm | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm >> index 022a3ca44..aef6f0121 100644 >> --- a/gnu/packages/games.scm >> +++ b/gnu/packages/games.scm >> @@ -2501,7 +2501,8 @@ engine. When you start it you will be prompted to >> download a graphics set.") >> ;; different software versions than upstream does, some of the >> md5sums >> ;; are different. However, the package is still reproducible, it's >> safe >> ;; to disable this test. >> - #:tests? #f)) >> + #:tests? #f >> + #:parallel-build? #f)) >> (native-inputs `(("dos2unix" ,dos2unix) >> ("gimp" ,gimp) >> ("grfcodec" ,grfcodec) > > LGTM. I'll commit as soon as we get a clear okay on the cc-sampling-plus > 1.0 license. I've cc'ed the guix-devel list in hopes of getting quicker > feedback.
I made time to evaluate the license situation using the Free System Distribution Guidelines, and everything seems fine. Your changes have been pushed to master. Thanks for your contributions!
signature.asc
Description: PGP signature