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

Re: file dependencies and packages and [blocker] bugs



seth vidal wrote:
On Fri, 2008-02-29 at 20:03 +0100, Hans de Goede wrote:

Okay, these are mine (which I already knew without looking at the report, as I very deliberately added the filedeps):

/usr/share/fonts/bitstream-vera/Vera.ttf
xblast-0:2.10.4-5.fc9.i386
chess-0:1.0-12.fc9.i386

/usr/share/fonts/dejavu/DejaVuSans-BoldOblique.ttf
sdljava-demo-0:0.9.1-9.fc9.i386

/usr/share/fonts/dejavu/DejaVuSans-Bold.ttf
sdljava-demo-0:0.9.1-9.fc9.i386

/usr/share/fonts/dejavu/DejaVuSans-Oblique.ttf
sdljava-demo-0:0.9.1-9.fc9.i386

/usr/share/fonts/dejavu/DejaVuSans.ttf
sdljava-demo-0:0.9.1-9.fc9.i386


The problem with these packages is that the application in question (== game-ish app, using its own fontrending) opens these fonts by filename. not true any known font configuration mechanism.

Combine this with the fact that fonts change both location and name regulary, and a simple dep on the font providing package wont't do. With these (not pretty) file deps I actually get broken deps reports send to me when this happens. Don't believe me? This is from the sdljava-demo changelog:


Define 'regularly' for the fonts changing locations? Also - If they are
changing so often why don't we talk to the font maintainers and get that
to stop moving around?


regulary as in this has happened several times in the short lifetime of Fedora (so in the last 4 years)



On the postive site, very few people have either of these installed, so I guess the best solution here is to notfix. But I'm open for other ways of catching filename changes in another package without using file deps.

It makes things like repoclosure take longer to run b/c it has to go get
the filelists to resolve it all out.

Don't you think we should be able to do something to make this situation
better or even rarer?


Erm, no not really, these apps need a certain file to be in a certain place, isn't that what filedeps are for?

Maybe some more backgroundinfo on these apps:
1) They originally both ship with copies of Arial (!= free) in there tarbals,
which get installed into the apps own data dir under /usr/share/app.
2) I've ripped these out of the src-tarbal (and the resulting package) and replaced them with symlinks to the same style fonts from vera / dejavu.

Notice that these are currently the only 2 packages with this problem, because many games still ship with private copies (which really should be replaced with symlinks), for example when I execute the following find under /usr/share, I get (non interesting results removed): [hans localhost share]$ find -name "vera*" -o -name "Vera*" -o -name "Deja*" -o -name "deja*" -o -name "Free*.ttf"
./brutalchess/fonts/VeraMono.ttf
./hedgewars/Data/Fonts/DejaVuSans.ttf
./childsplay/Data/VeraSeBd.ttf
./blobAndConquer/data/fonts/vera.ttf
./tvtime/FreeMonoBold.ttf
./tuxpaint/fonts/FreeSans.ttf
./tuxpaint/fonts/FreeSansBoldOblique.ttf
./tuxpaint/fonts/FreeMonoOblique.ttf
./tuxpaint/fonts/FreeMono.ttf
./tuxpaint/fonts/FreeMonoBold.ttf
./tuxpaint/fonts/FreeSansOblique.ttf
./tuxpaint/fonts/FreeMonoBoldOblique.ttf
./tuxpaint/fonts/FreeSerif.ttf
./tuxpaint/fonts/FreeSerifBold.ttf
./tuxpaint/fonts/FreeSansBold.ttf
./tuxpaint/fonts/FreeSerifBoldItalic.ttf
./tuxpaint/fonts/FreeSerifItalic.ttf
./doc/jack-audio-connection-kit-devel-0.109.2/reference/latex/FreeSans.ttf
./doc/liblo-devel-0.24/latex/FreeSans.ttf
./doc/physfs-devel-1.0.1/latex/FreeSans.ttf

And this is on my recently reinstalled system (with thus little games installed, atleast for me).

I really believe all these packages should be fixed to stop shipping a private copy of these fonts. The way todo this is to symlink to the installed official versions, as the packages will actually look for for example /usr/share/blobAndConquer/data/fonts/vera.ttf and then do their own rendering (as overlay to a rendered game scene).

And I'm afraid I see no way to _cleanly_ drag in the needed fonts without using a file requires.

Regards,

Hans


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