Subject: Re: [PATCH] gnu: Add fheroes2

From: Leo Prikler <[email-masked]>
Date: Wed, 30 Jun 2021 12:48:11 +0200

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?