Bug 228707 - Review Request: KoboDeluxe - 3'rd person scrolling 2D shooter
Review Request: KoboDeluxe - 3'rd person scrolling 2D shooter
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Mamoru TASAKA
Fedora Package Reviews List
:
Depends On:
Blocks: FE-ACCEPT
  Show dependency treegraph
 
Reported: 2007-02-14 11:21 EST by Hans de Goede
Modified: 2007-11-30 17:11 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2007-02-23 16:43:42 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
mtasaka: fedora‑review+
dennis: fedora‑cvs+


Attachments (Terms of Use)
Mock build log of KoboDeluxe-0.4-0.1.pre10.fc7 (38.54 KB, text/plain)
2007-02-16 11:24 EST, Mamoru TASAKA
no flags Details

  None (edit)
Description Hans de Goede 2007-02-14 11:21:54 EST
Spec URL: 
SRPM URL: 
Description:
Kobo Deluxe is a 3'rd person  scrolling 2D shooter with a simple
and responsive control system  - which you'll need to tackle the
tons of enemy ships that shoot at you,  chase you, circle around
you shooting,  or even  launch other ships at you,  while you're
trying to  destroy the  labyrinth  shaped  bases.  There  are 50
action packed  levels with  smoothly increasing  difficulty, and
different combinations of enemies that require different tactics
to be dealt with successfully.

---

Notice that Kobo Deluxe has an interesting highscore system, which requires a global writable dir. Its far from easy to modify the highscore code so that it can do its thing and then quickly drop any additional sgid rights. Thus I've choosen to run Kobo Deluxe sgid to its own gid kobodl, so that any holes in kobo cannot be used to create and feed corrupt highscore files to other sgid games highscore using games. The kobodl gid is created in %pre. Notice that the gid never gets removed, as some files with this gid may be left behind after uninstall.
Comment 1 Hans de Goede 2007-02-14 11:24:48 EST
OOPS, hit submit before giving the SPEC and SRPM urls, here they are:
Spec URL: http://people.atrpms.net/~hdegoede/KoboDeluxe.spec
SRPM URL: http://people.atrpms.net/~hdegoede/KoboDeluxe-0.4-0.1.pre10.fc7.src.rpm
Comment 2 Mamoru TASAKA 2007-02-16 11:24:49 EST
Created attachment 148205 [details]
Mock build log of  KoboDeluxe-0.4-0.1.pre10.fc7

Well, for 0.4-0.1.pre10:

* BuildRequires
  - mockbuild fails on FC7 i386. SDL_image-devel seems
    to be needed for BuildRequires.

* Encodings
  - Some documentations installed by this package have
    other Encodings than UTF-8. Please change them to
    UTF-8.
------------------------------------------------------
README		  ISO-8859-1
README.jp	  ISO-2022-JP
README.xkobo.jp   ISO-2022-JP
------------------------------------------------------

* Documentation
  - README.osx
    I don't think this is useful.

* Timestamps
  - This package contains many data files (especially
    under %{_datadir}/%{_name} ) and keeping
    timestamps on these files are recommended. 

    For this package, it is done by
-------------------------------------------------------
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
-------------------------------------------------------

* Setgid bits
  - Well, would you just explain why setgid bits is required
    for the binary?

? Alsa issue
  - Well I tried to enable alsa support, however it failed
    because this package is for some old alsa-lib support
    (around alsa-lib 0.5.9). Well, if it is preferred to
    make this package have alsa support, would you contact
    upstream?

* Functionality
  - Well, I tried this package on both FC5 and FC-devel.
    On FC-5, there is no problem, however, on FC-devel,
    it seems that kobodl hangs up completely.

    Well, as it hangs up after swithing to full screen mode,
    I don't know how to get a backtrace... Would you know
    any idea?
Comment 3 Hans de Goede 2007-02-19 10:58:54 EST
(In reply to comment #2)
> Created an attachment (id=148205) [edit]
> Mock build log of  KoboDeluxe-0.4-0.1.pre10.fc7
> 
> Well, for 0.4-0.1.pre10:
> 
> * BuildRequires
>   - mockbuild fails on FC7 i386. SDL_image-devel seems
>     to be needed for BuildRequires.
> 
Oops, fixed

> * Encodings
>   - Some documentations installed by this package have
>     other Encodings than UTF-8. Please change them to
>     UTF-8.
> ------------------------------------------------------
> README		  ISO-8859-1
> README.jp	  ISO-2022-JP
> README.xkobo.jp   ISO-2022-JP
> ------------------------------------------------------
> 
Strange rpmlint didn't complain about this, fixed.

> * Documentation
>   - README.osx
>     I don't think this is useful.
> 
Agreed, no longer installed

> * Timestamps
>   - This package contains many data files (especially
>     under %{_datadir}/%{_name} ) and keeping
>     timestamps on these files are recommended. 
> 
Fixed

> * Setgid bits
>   - Well, would you just explain why setgid bits is required
>     for the binary?
> 

Because it needs a shared (between users) writable dir to keep its highscore,
normally games like this are either patched to:
1) be sgid games, then first thing in main open the shared highscore-file in rw 
   mode (and keep it open until exit), then fully drop sgid games rights.
2) use a per user highscore file under $HOME instead

Due to the design of the highscore system of KoboDeluxe neither one of these 2
solutions is easy doable, thus we go to the third seldom used solution sgid to a 
unique sgid, as is done also for example with several games in the bsdgames package.


   

> ? Alsa issue
>   - Well I tried to enable alsa support, however it failed
>     because this package is for some old alsa-lib support
>     (around alsa-lib 0.5.9). Well, if it is preferred to
>     make this package have alsa support, would you contact
>     upstream?
> 

This is not really a problem as without any configure switches it uses SDL for
sound, which by default uses also while also allowing for the use of esd, arts
and oss through environment settings.


> * Functionality
>   - Well, I tried this package on both FC5 and FC-devel.
>     On FC-5, there is no problem, however, on FC-devel,
>     it seems that kobodl hangs up completely.
> 
>     Well, as it hangs up after swithing to full screen mode,
>     I don't know how to get a backtrace... Would you know
>     any idea?

Found it (nasty bug) strange enough it doesn't show up on 64 bit machines,
fixed now (see -audio.patch).

New version here:
Spec URL: http://people.atrpms.net/~hdegoede/KoboDeluxe.spec
SRPM URL: http://people.atrpms.net/~hdegoede/KoboDeluxe-0.4-0.2.pre10.fc7.src.rpm

Comment 4 Mamoru TASAKA 2007-02-19 11:46:17 EST
Well, mockbuild for -0.2.pre10 just finished and 
this time this game causes no problem on my 
FC-devel i386 system. I will recheck this now.

By the way..
Does this game try to create some files under
%{_var}/games/kobo-deluxe (e.g. some score files)? 
If so, there is a possibility that this directory is
not deleted when trying to uninstall this package.
Comment 5 Mamoru TASAKA 2007-02-19 12:27:22 EST
Well, for -0.2.pre10:

* Documentation
  - Perhaps README.xkobo is missing
  - One more non-UTF8 document found (note: this is not detected
    by rpmlint)
    ChangeLog    ISO-8859-1

= Yes, kobosfx.h seems to be needed.

Other things except my concern on comment 4 is okay.
Comment 6 Hans de Goede 2007-02-21 07:26:49 EST
(In reply to comment #4)
> By the way..
> Does this game try to create some files under
> %{_var}/games/kobo-deluxe (e.g. some score files)? 
> If so, there is a possibility that this directory is
> not deleted when trying to uninstall this package.

Yes it does create files there and yes the dir will be left around after
uninstall which is why the group isn't deleted on uninstall either.

I could write a %postun which detect if this is a true uninstall or just an
upgrade and on a true uninstall does rm -fr on the dir and then removes the group.

(In reply to comment #5)
> Well, for -0.2.pre10:
> 
> * Documentation
>   - Perhaps README.xkobo is missing
Your right

>   - One more non-UTF8 document found (note: this is not detected
>     by rpmlint)
>     ChangeLog    ISO-8859-1
> 

Ok, I'll fix this and the README.xkobo as soon as its clear what todo with the
left-over highscore files.
Comment 7 Mamoru TASAKA 2007-02-21 07:38:13 EST
Well, according to your message it seems usual that
the game specific directories under %{_var}/games are
not deleted, and I don't disagree to leave the directories
undeleted.
Comment 8 Hans de Goede 2007-02-21 07:56:23 EST
OK, New version here with the 2 issues mentioned in comment 5 fixed:
Spec URL: http://people.atrpms.net/~hdegoede/KoboDeluxe.spec
SRPM URL: http://people.atrpms.net/~hdegoede/KoboDeluxe-0.4-0.3.pre10.fc7.src.rpm

This should be the last iteration.
Comment 9 Mamoru TASAKA 2007-02-21 10:47:05 EST
(In reply to comment #8)
> This should be the last iteration.
Actually!!

-------------------------------------------
  This package (KoboDeluxe) is APPROVED by me
-------------------------------------------

  Well, the process of importing new packages changed.
  So pleace recheck from step 8 of
  http://fedoraproject.org/wiki/Extras/NewPackageProcess .
Comment 10 Hans de Goede 2007-02-22 03:09:27 EST
New Package CVS Request
=======================
Package Name:       KoboDeluxe
Short Description:  3'rd person scrolling 2D shooter
Owners:             j.w.r.degoede@hhs.nl
Branches:           FC-6 devel
InitialCC:          <empty>
Comment 11 Dennis Gilmore 2007-02-23 07:52:21 EST
branched
Comment 12 Hans de Goede 2007-02-23 16:43:42 EST
Imported and build, closing. Thanks for the review!

Note You need to log in before you can comment on or make changes to this bug.