Bug#783030: vcmi: lookup path is does not follow Filesystem Hierarchy Standard
Alexandre Detiste
alexandre.detiste at gmail.com
Sun May 3 08:47:30 UTC 2015
Le dimanche 3 mai 2015, 02:11:30 Johannes Schauer a écrit :
> I forwarded the suggestion to at least add the lookup path
> /usr/share/games/vcmi to the existing lookup paths.
Thanks! I'm now subcribed and monitoring those there too.
> I also filed a bug about changing the default path to store data files but I
> doubt they will accept it because the XDG is very explicit about how /usr/share
> is to be handled: http://bugs.vcmi.eu/view.php?id=2190
vcmbuilder does this:
| if [[ -z "$dest_dir" ]]
| then
| if [[ -z "$XDG_DATA_HOME" ]]
| then
| dest_dir="$HOME/.local/share/vcmi"
| else
| dest_dir="$XDG_DATA_HOME/vcmi"
| fi
| fi
It never tries to write in /usr by default.
>Where do you see that vcmibuilder has to be run with root and --dest
>/usr/share/vcmi?
It has to if somewant want a system-wide installation;
but it's not the default.
> > - gootool: unofficial .deb
>
> Don't make it part of your argument if it's not in Debian proper.
It came up on my list, so it needed an explanation;
most of these unofficial .debs are half broken and
make dpkg/reprepro/lintian complain a lot anyway.
I guess what Debian really needs is a specific section
for localy generated/localy installable packages.
Where "local" can either mean: 1 computer / 1 household / 1 company.
Then aptitude, equivs-control, vrms, "my version of games.sh",
could be patched to support this "local/<stuff>" section
in a specific way and make it differ from (free)/contrib/non-free.
Simon McVittie came to the same conclusion for the
packages generated by G-D-P:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=783817
> I tweaked your script a bit to give an overview of all packages in Debian and
> not only those that happen to be installed locally.
Wow, that's impressive what can be done with these QA tools :-)
> And if one adds a couple of more exceptions to your initial script (see
> attached) then one can find 198 packages in the games section which do not ship
> their data files in /usr/share/games.
I've added /usr/share/gnome/help too, still running.
> So while one might read the FHS as suggesting that games are strongly suggested
> to put their static data in a subdirectory in /usr/share/games, in practice in
> Debian this does not happen in 17% of the cases which is not an insignificant
> portion.
Some things are not really games, but more "educational", like tuxtype, childsplay,
mathwar, ... some might think the same from chess games...
While I really don't want to go mass-filling bugs for this; an extra
reason to consider is that budget-minded people can usually set-up a nice
PC with / on a cheap SSD (the 32 or 64Gb ones) and /var & /home
on a cheap-but-slow HDD. Now if more and more games are installed
in /usr/share/games, this would fill the SSD;
and maybe /usr/share/games would need it's own partition too.
So the only game I would review in detail on this list is gemrb:
"Open-source engine to run Baldur's Gate, Icewind Dale and Planescape: Torment",
that needs huge datasets to work.
> > > 4. Deviating from upstream in where static game data is stored would not be
> > > good
> >
> > If this game is patched in Debian to merely _add_ an extra lookup location;
> > this couldn't hurt.
>
> Only that for example people on platform A would say "just edit this file in
> /usr/share/vcmi" and a person on Debian would say "what?? I don't have that
> file!". For ease of usability it is great if all distributions store the data
> at the same location. This is why the FHS is useful and this is why it is a big
> deal to let Debian deviate from the other distributions which just leave the
> vanilla upstream choice for the default location in place.
Upstream explicitely expects that this directory can be patched:
http://wiki.vcmi.eu/index.php?title=Installation_on_Linux
|"Launch vcmiclient to determine data directory (output may differ)"
|$vcmiclient -v
|Starting...
|VCMI 0.91
| data directory: /usr/share/vcmi
| library directory: /usr/lib/vcmi
| binary directory: /usr/games
I guess this Wiki could point to G-D-P, but I don't want to feel
intrusive and won't add it myself.
> > A patch for Doom3 engine to look in a engine-agnostic folder.
> > http://anonscm.debian.org/cgit/pkg-games/dhewm3.git/tree/debian/patches/01-changedatadir.patch
>
> The second patch has nothing to do with storing data in /usr/share/games
> instead of /usr/share.
Indeed, just to point this can be patched to make the game fit better in Debian.
> > Most upstreams agrees when the gains are clearfully explained.
>
> "gains" as in plural? What would be another gain for upstream besides following
> FHS recommendations (and a XDG violation)?
Some other gain: their game don't get patched a little differently on each distro
> (and a XDG violation)?
This would really need to get explained there :-)
Arx Libertatis (yet another engine) does it right,
it searches for "games/arx" & "arx" at each XDG_DATA_DIR location.
http://wiki.arx-libertatis.org/Data_directories#Data_directory
> I'd like to document how the user would use g-d-p for vcmi in the vcmi
> README.Debian. Could you write a small blurp of what command to run that I can
> put in that file or point me to an existing writeup for another game?
While it is advertised, vcmibuilder can't read iso files;
here is a patch; reword it as you like.
> I'd also like to try this out myself.
It's in sid now.
The "unknown" list of Popcon says there are already 2 users ! :-)
Cheers,
-------------- next part --------------
A non-text attachment was scrubbed...
Name: readme.patch
Type: text/x-patch
Size: 726 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-games-devel/attachments/20150503/d9fa6f17/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.alioth.debian.org/pipermail/pkg-games-devel/attachments/20150503/d9fa6f17/attachment.sig>
More information about the Pkg-games-devel
mailing list