guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bug#28453] [PATCH 5/5] gnu: openttd-opengfx: Change installation di


From: Kei Kebreau
Subject: Re: [bug#28453] [PATCH 5/5] gnu: openttd-opengfx: Change installation directory.
Date: Fri, 22 Sep 2017 08:07:00 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)

Kei Kebreau <address@hidden> writes:

> Arun Isaac <address@hidden> 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 <address@hidden>
>> 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 <address@hidden>
>>  ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <address@hidden>
>>  ;;; Copyright © 2017 Peter Mikkelsen <address@hidden>
>> +;;; Copyright © 2017 Arun Isaac <address@hidden>
>>  ;;;
>>  ;;; 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 <address@hidden>
>> 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 <address@hidden>
>> 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") " address@hidden -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 <address@hidden>
>> 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 <address@hidden>
>> 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 <address@hidden>
>> 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!

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]