guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] gnu: Add openttd


From: Alex Kost
Subject: Re: [PATCH] gnu: Add openttd
Date: Tue, 12 Apr 2016 20:26:25 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Albin (2016-04-12 17:55 +0300) wrote:

> Thank you Leo for taking the time to inspect and install the package.
>
> Den 2016-04-12 kl. 03:09, skrev Leo Famulari:
>> On Tue, Apr 12, 2016 at 12:41:58AM +0200, Albin wrote:
>>> +                 ;; GNU's not Unix so let's modify the exit dialog.
>>> +                 (substitute* (find-files "src/lang/" "\\.txt")
>>> +                   ((":Unix") ":GNU"))))))
>> 
>> I don't think this is necessary.
>
> Maybe not.  I just wanted to exercise my freedom a little.  The above
> snippet lets you see this dialog box:
>
> "Are you sure you want to exit OpenTTD and return to GNU" ...instead of
> "...Unix", which I thought would make the Guix users happy.
>
> It works for 54 language versions, but not Arabic, Esperanto, Hebrew and
> Urdu where "Unix" is called something else.
>
> I'm not going to insist on keeping it, but remember that the "Words to
> avoid" article (https://www.gnu.org/philosophy/words-to-avoid.html)
> states: "To call the whole system 'Linux' is both unfair and confusing."
> Isn't it likewise wrong to call "GNU" "Unix"?

I don't have a preference if it will be "GNU" or "Unix" but this is a
cool hack (I admire how much time you devoted to your first package!)

[...]
>> I see this option in `./configure --help`:
>> 
>> --with-liblzo2[=liblzo2.a]     enables liblzo2 support
>
> Nice!
>
>> Does it work to provide the path to that option? Our lzo package does
>> build a static library, if that is what OpenTTD requires.
>
> Yes, I could make it work by first installing 'lzo' and then add
> `--with-liblzo2=/gnu/store/[...]/liblzo2.a` to the package definition.
> What is the proper way to do this?

Here it is (don't forget to uncomment "lzo" input):

           (lambda* (#:key inputs outputs #:allow-other-keys)
             (let ((out (assoc-ref outputs "out"))
                   (lzo (assoc-ref inputs "lzo")))
               (zero?
                (system* "./configure"
                         (string-append "--prefix=" out)
                         (string-append "--with-liblzo2="
                                        lzo "/lib/liblzo2.a")
                         ;; Put the binary in `bin' instead of `games'.
                         "--binary-dir=bin"))))

>>> +    ;; The software contains an in-game downloader from which the user
>>> +    ;; may find non-functional data licensed under different terms.
>> 
>> I don't know the significance of this. Hopefully somebody else will
>> comment on this subject.
>> 
>> Upon starting the program, I was prompted to download something related
>> to graphics. I agreed, and the game seemed to download OpenGFX [0] and
>> launch correctly, although it also warned me about needed to download
>> some sound files.
>
> Yes, it's not ideal that you are immediately prompted to download and
> install something like this.  As you said, the package that gets
> installed when you agree is OpenGFX (8 MiB).  It has the same license as
> the game itself, i.e. GPLv2, just like the other available graphics sets
> "NightGFX" (3.4 MiB) and "zBase" (273 MiB).
>
> The music files that you can download are:
>
> * Modern Motion (music): CC-BY-NC-ND 3.0
> * OpenMSX: GPLv2
> * Scott Joplin Anthology: public domain
> * Traditional Winter Holiday Music: public domain
>
> For sound effects only one package is currently available:
>
> * OpenSFX: CC Sampling Plus 1.0
>
>
> I can understand that packages that restrict commercial redistribution
> may not be included in Guix, but the FSDG doesn't discuss the particular
> case of packages that *recommend* non-free, non-functional data where
> only non-commercial redistribution is permitted.
>
> How does other free distros deal with this?  The Arch project
> distributes openttd, openttd-opengfx and openttd-opensfx as separate
> packages (where the package manager recommends the latter two upon
> installation of openttd).  Parabola does the same, but removes
> openttd-opensfx from their repository.  You can still download the sound
> effects afterwards however.
>
> Do you think we should follow Parabola in this case or take a different
> approach?

We have 'freedink' package that is combined of 'freedink-engine' and
'freedink-data'.  I think it would be good to have something similar for
'openttd'.

-- 
Alex



reply via email to

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