guix-patches
[Top][All Lists]
Advanced

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

[bug#54476] [PATCH] gnu: games: Add robotfindskitten.


From: Roman Riabenko
Subject: [bug#54476] [PATCH] gnu: games: Add robotfindskitten.
Date: Thu, 24 Mar 2022 17:38:12 +0200
User-agent: Evolution 3.42.1

Hi Liliana

(Copying the mailing list.)

Thank you for helping to improve this!

У пн, 2022-03-21 у 07:59 +0100, Liliana Marie Prikler пише:
> Hi Roman,
> 
> Am Sonntag, dem 20.03.2022 um 16:28 +0200 schrieb Roman Riabenko:
> 
> > +    ;; Despite what guix lint says, version 2.8284271.702 is newer
> > then
> > +    ;; 1600003_201b. See ChangeLog for version history.
> > +    (version "2.8284271.702")
> > +    ;; The git version is the same as in the release tarball, but
> > it
> > bundles
> > +    ;; convenient .desktop files, which were requested for Debian.
> > +    (source (origin
> > +              (method git-fetch)
> > +              (uri (git-reference
> > +                    (url
> > +                    
> > "https://github.com/robotfindskitten/robotfindskitten";)
> > +                    (commit
> > "1cae36621f9c19d19a40eacf63789913d4ef5d5c")))
> > +              (file-name (git-file-name name version))
> > +              (sha256
> > +               (base32
> > +               
> > "0ps3xrl1yh0h7jhl3bwhx5xw2hvhzync03y08i66rzw098r530qq"))))
> Looking at the git repository, those are *not* the same.  Use git-
> version or use the tag as commit, but don't mix conventions.

I thought the commit log is misleading. Before submitting the patch, I
checked the code and data files, but now that I checked documentation
too, I see that the release, including packages in Debian and Fedora,
do not have the latest fixes to documentation.

It bugged me as cruel towards users to package the release version with
wrong documentation, but, at a more thorough inspection, the
inconsistency in documentation can be figured out after all. If the
authors and maintainers did not deem it worth a release, I do not feel
confident to. After all, I cannot rule out that, theoretically, someone
may even rely on "man robotfindskitten" output for something.

The checkout of the git tag which corresponds to the release version
number is, strictly speaking, somewhat different from the release
tarball. Among other things, it has "contrib" directory with PalmOS
port code. Debian also has the same tarball for original source.
Considering all that, I'd rather go with the tarball than git.

> > +                  (replace 'bootstrap
> > +                    (lambda _
> > +                      (invoke "autoreconf" "-ifv"))) ;per
> > README.md
> The existing bootstrap should already correctly invoke autoreconf if
> no
> bootstrap script exists.

I recall having some issue without this modification, but I cannot
reproduce it now. Removing.

> > +                  (add-after 'unpack 'fix-install-path
> > +                    (lambda _
> > +                      ;; It is configured to install executable to
> > /games or
> > +                      ;; /usr/local/games per Filesystem Hierarchy
> > Standard.
> > +                      ;; We change that to get it in $PATH.
> > +                      (substitute* "src/Makefile.am"
> > +                        (("\\$\\(prefix\\)/games")
> > "$(prefix)/bin"))
> We could change this by using #:make-flags instead, I believe.

Thank you for the hint. I didn't expect it to be that simple.

> > +                      ;; When built with guix, all characters are
> > displayed in
> > +                      ;; the background colour pair. If it is not
> > set manually,
> > +                      ;; this is not happening, so we get back
> > colour into the
> > +                      ;; game. The background is redrawn anyway.
> > See
> > man bkgd.
> > +                      (substitute* "src/robotfindskitten.c"
> > +                        (("\\(void\\) bkgd \\( \\(chtype\\)
> > COLOR_PAIR\\(WHITE\\) \\);")
> > +                         "")))))
> This should probably go into a "patch-source" phase.

I moved this part to a source origin snippet.

> > +    (synopsis "Zen Simulation of robot finding kitten")
> > +    (description
> > +     "In this simulation, you play the part of robot.  Your task
> > is
> > to
> > +complete the simulation by finding kitten, as is your destiny, and
> > indeed your
> > +wont.  You (robot) are represented by the # character, and you
> > move
> > around with
> > +the arrow keys touching things.  If the thing you touch is kitten,
> > you get a
> > +cute little animation (which was cuter in the DOS version) and the
> > simulation
> > +ends.  Otherwise, you get a brief description of what it is you
> > touched.")
> Both synopsis and description could use some love.  Plain copypasta
> with grammatical errors is not good optics.

My first impression was that it needs some improvement. But I was
quickly discouraged and here is why.

The problem I have with it is that it apparently attempts to pretend to
be something more, not even a game at all, but the Zen Simulation. The
authors invite the audience to a make-believe and this starts with the
synopsis and description and continues in the game and in its
documentation. The story begins with such synopsis and description in
other distributions and package managers too. I really feel as
intruding into the game against the authors intentions by attempting to
modify those.

As to the grammar and spelling, I am embarrassed of my ignorance and
fond of learning something new, which is one of the reasons that I like
this game. When I saw the word "wont", I couldn't imagine that it is a
valid English word, until I verified it with a dictionary. The words
"robot" and "kitten" are consistently used without an article
(including in-game texts and documentation) treating them specially as
characters of the story. The same goes for both words of "Zen
Simulation" being capitalised.

So I leave it as is for now.

I attach a different patch as my new offer.

Roman

Attachment: 0001-gnu-games-Add-robotfindskitten.patch
Description: Text Data


reply via email to

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