Subject: Re: [PATCH] gnu: Add fheroes2

From: Andrew Tropin <[email-masked]>
Date: Wed, 30 Jun 2021 14:22:33 +0300

Leo Prikler <[email-masked]> writes:

> Am Mittwoch, den 30.06.2021, 13:20 +0300 schrieb Andrew Tropin:
>> Leo Prikler <[email-masked]> writes:
>> 
>> > Am Mittwoch, den 30.06.2021, 08:49 +0300 schrieb Andrew Tropin:
>> > > * gnu/packages/games.scm (fheroes2): New variable.
>> > > ---
>> > >  There are no tests in the project, so they are disabled.
>> > #:tests? #f should always be documented inside the code
>> > >  gnu/packages/games.scm | 30 ++++++++++++++++++++++++++++++
>> > >  1 file changed, 30 insertions(+)
>> > > 
>> > > diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
>> > > index 83cb738b9c..7a87123df3 100644
>> > > --- a/gnu/packages/games.scm
>> > > +++ b/gnu/packages/games.scm
>> > > @@ -12511,3 +12511,33 @@ wreckage.  You're stranded on a desert
>> > > island and have to survive.  In order to
>> > >  do so you need to explore the island, find food, build a shelter
>> > > and
>> > > try to
>> > >  get attention, so you get found.")
>> > >        (license license:cc-by4.0))))
>> > > +
>> > > +(define-public fheroes2
>> > > +  (package
>> > > +    (name "fheroes2")
>> > > +    (version "0.9.4")
>> > > +    (build-system cmake-build-system)
>> > > +    (arguments
>> > > +     `(#:tests? #f
>> > Add a comment here along the lines of "no tests" or "no check
>> > target".
>> > > +       #:make-flags '("FHEROES2_STRICT_COMPILATION=1"
>> > > +                      "RELEASE=1")))
>> > > +    (native-inputs
>> > > +     `(("gettext" ,gettext-minimal)))
>> > > +    (inputs
>> > > +     `(("zlib" ,zlib)
>> > > +       ("libpng" ,libpng)
>> > > +       ("sdl" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-
>> > > ttf)))))
>> > > +    (source (origin
>> > > +              (method git-fetch)
>> > > +              (uri (git-reference
>> > > +                    (url "https://github.com/ihhub/fheroes2")
>> > > +                    (commit version)))
>> > > +              (file-name (git-file-name name version))
>> > > +              (sha256
>> > > +               (base32
>> > > +                "0a3xi3k7ngp0byhmg7wq22l1hix3jwr68prk2y6frqhzbfs
>> > > krvy
>> > > g"))))
>> > > +    (home-page "https://ihhub.github.io/fheroes2/")
>> > > +    (synopsis "Turn-based strategy game engine")
>> > > +    (description "Free implementation of Heroes of Might and
>> > > Magic
>> > > II (aka
>> > > +HOMM2) game engine.")
>> > > +    (license license:gpl2)))
>> > The description is a bit lacking in information.  Is this engine
>> > usable?  If so, how?  We ought not to steer users towards non-free
>> > software.
>> 
>> Yep, it's usable.  It requires game resources (assets like music,
>> maps,
>> sprites), the assets from original game is not distributed with it
>> because of legal reasons I suppose, but AFAIK nothing stops people
>> from
>> creating their own set of assets to use with this game engine.  Also,
>> taking only assets from original game and using them with this engine
>> will help people not to use unfree software.
>> 
>> Added comment, updated description.
> Without a package providing those assets, this is still pretty much
> "here, go seek out this nonfree software thingy for assets".  This is
> not to say, that we can never ever ship fheroes2, but I'd personally
> hold back on it until we can package some fheroes2-data to make it
> useful without requiring people seek out these assets.
>
> This is just my own opinion however, and it's certainly not reflected
> all over guix source.  For instance, both oshu and stepmania require
> beatmaps and stepfiles respectively to be useful and ship without them
> while most of what you'll find online will be somewhat dubious in terms
> of copyright.  However, both also offer the tools to create those using
> your own (hopefully GPL-compatible) album collection, so it's not a big
> problem.  I don't think fheroes2 has that low of an entry barrier to
> full playability, does it?

Y, probably it's not easy to find free assets.  Still can be useful for
people, who already have a CD with the original game, but do not want to
use unfree software or even for people, who would buy it to get resource
from it.

Feels kinda on the edge:
On the one hand it can nudge someone to buy or obtain a bundle with
unfree software inside to extract resources from it.  On the other hand
it helps not to use unfree software.

I think it's more towards steering people from unfree to free software,
but I can be wrong.

Anyway, I trust your expertise on this topic and will accept your
descision to hold it back if you think it's necessary to have
fheroes2-data created/packaged first.