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

RFH: game-data-packager quality (11th hour)



Hi folks,

Short summary: the culmination of a fair bit of work on the doom
packages rests on game-data-packager (recently renamed from
game-package, recently renamed from doom-package) getting into Lenny.

I was wondering if people could please build game-data-packager and take
a look at it and decide if they think it is suitable for Lenny.

Example invocation:

	game-data-packager -n -d /tmp doom <some-file>

Which will give you a doom-wad_17_all.deb in /tmp, containing
<some-file> at ./usr/share/games/game-data-packager/doom.wad.

Defining 'DEBUG' in the environment will give you diagnostic output.

game-data-packager currently only supports doom and doom2. quake3 is in
the works but almost certainly won't be ready for lenny.

My biggest complaint is the following:

 * doom-engines (prboom) depend on doom-wad, provided for by the
   generated files here or freedoom.
 * freedoom now depends on a doom-engine, because it contains a .desktop
   file. The .debs generated by game-data-packager also do now.

Therefore you need a "smart" way to install the generated .deb, since
dpkg -i won't resolve the dependency. After a discussion on this list a
while ago, we settled on using 'gdebi', a user-space tool that takes as
.deb and installs it, resolving dependencies.

The idea would be you'd use gdebi (or game-data-packager would, which it
does if you don't pass -n) to install the generated .deb, it would
satisfy the dependency (prboom), and all would be happy.

Unfortunately, gdebi does not take into account the .deb you pass it
when satisfying Depends: in packages that are pulled in: #490870. So, in
this situation, it thinks

 * aah, doom-wad*deb needs a doom-engine, only provided by prboom
 * lets install prboom
 * prboom needs a doom-wad
 * freedoom (or freedm, or doom-wad-shareware) provides that
 * let's install freedoom

The ideal solution I think, is for another tool to be developed (and I
intend to develop it), which will maintain a local package repository
and let you inject and remove packages from it, very easily... then,
game-data-packager would just inject the generated .deb into this local
repository, and you could go launch synaptic or aptitude or whatever and
choose the precise packages that you want to install.

There's no way I'll get this done and ready and tested in time for the
lenny freeze, however, so we're stuck with the gdebi approach for now :(

if game-data-packager does not go into Lenny, then generated .debs will
not carry .desktop files, but freedoom will, so you'll get freedoom in
menus but not commercial doom games. I intend to upload a prboom after
game-data-packager goes in that removes the prboom .desktop file (which
would pick whichever of freedoom/doom/doom2 was in /usr/share/games/doom
which depends on alternatives settings)


-- 
Jon Dowland


Reply to: