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

[Bug 185211] Review Request: prboom - GPL doom game engine



Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.

Summary: Review Request: prboom - GPL doom game engine


https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=185211





------- Additional Comments From j w r degoede hhs nl  2006-03-12 07:24 EST -------
Argh, I accidently hit backspace without the textinput having focus and firefox
interpreted this as go back one page and now my review is gone. GRRRRR.

Anyways trying again:

MUST
====
* Source tarball matches upstream
* Package (and .spec) named properly
* License file included
* Spec file readable, in Am. English
* Compiles and builds on FC-5 x86_64, but with warning see MUST-FIX
* No locale files
* No excessive BR: or Requires:
* Not relocatable
* buildroot cleaned up in %install and %clean
* No duplicate files
* permissions ok
* Macro usage consistent
* Contains code, not content
* No headers, api docs, and .so library
* No .la archives
* No desktop file needed


MUST-FIX
========
* Building gives a number of "integer <-> pointer of different size cast"
  warnings these are _BAD_ on x86_64. I'll attach a patch fixing these.
  One of these is a real bu, the others were ok.
* %{_datadir}/prboom is not owned by the package
* why the %dir %{_datadir}/games/doom ?


About provide / req doom-game/-engine and Desktop files
=======================================================
I've been thinking about this and initially I came up with the following:
-generic doom engines and doom data provide doom-engine resp doom-data
-generic doom engines are set up using the alternatives system and can be called
 as just doom through alternatives
-doom-data packages include the .desktop file and icons, the .desktop
 file invokes "doom" with cmdlines arguments to use their wad. This way if 
 people install multiple versions of the data (free-doom, heretic-shareware, 
 doom-shareware) they get menu entries for each.

Special cases:
-certain doom-data packages will not work with all doom-engines. This is
 true for free-doom which requires prdoom. These will require the correct
 engine instead of the generic doom-engine. And these provide specific 
 engine-data. So free-doom would provide prboom-data
-In order for the special doom-data-packages to be sufficient for the 
 requirements of their needed engines, engines which have doom-data-packages
 which only work with them will require engine-data instead of doom-data
 thus prboom will require prboom-data
-Generic doom-data packages such as doom-shareware will thus not only need to
 provide the generic doom-data but also specific engine-data for engines which
 have a specific require, so that they will meet this require too.
-The .desktop file in an engine specific doom-data-package will not use the
 doom "alternative" but instead call the needed engine directly.


But this is /becomes a mess so I suggest instead:
-doom-engines provide dataname-engine for all datasets they support
-doom-engines require enginename-data
-doom-data provide enginename-data for all engines they are known to work
 with
-doom-data requires dataname-engine
-doom-data packages include the .desktop file and icons, the .desktop
 file invokes "dataname" wich is a wrappercript provided by the engine
 with the correct cmdline arguments to use the relevant wad. If it is possible
 that there are multiple providers of dataname-engine then the alternatives
 system will be used.
 
 This way (desktop-file in data package) if people install multiple versions of
 the data (free-doom, heretic-shareware,  doom-shareware) they get menu entries
 for each.
-datafiles packages are named as the game and will show up in comps for easy
 user selection (the reqs will drag in an engine). so the free-doom data 
 package will be called just free-doom, doom-shareware-package will be called 
 doom19-shareware, etc.

I hope this makes sense and you think its a good idea :)

-- 
Configure bugmail: https://bugzilla.redhat.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.


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