Post by Robert QuallsPost by Jerome LeclancheIt's a bit analogous to windows' "My Games" / "Saved Games" folder.
Wine in fact needs it (currently its always using "<My Documents aka
$HOME>/my games"), though it can do without. Steam is in the same
situation (Steam on Windows saves to My Games and Steam's online
service).
I guess fighting what wine has chosen is probably pointless, but I'm
not super crazy about all these directories at the top level of home.
What's worse than "my games" is that some developers just put their
individual folders at the top level, even for wine. For example Mass
Effect 2 just creates ~/Bioware. Naturally, none of these get removed
when the games are uninstalled, so if you want a clean home, you end
up playing musical game save folders to hang on to the saves.
The polluting of $HOME by Wine apps is a side effect of "My Documents"
being $HOME by default. It can be changed in winecfg (Desktop
Integration tab).
Post by Robert QuallsPost by Jerome LeclancheSo there's also the option of defaulting it in
~/.local/share/gamesaves or ~/.local/games or something and not have
it localized by xdg-user-dirs, which is more unixy/linuxy and in which
case it wouldn't be managed by xdg-user-dirs at all. This comes down
to "Does game save data need to be user-facing?".
Although something like ~/.local/share/gamesaves is more descriptive,
these directories also have configuration files in them. Some even
seem to have content packs. On the one hand, I don't think the user
needs to "see" game saves, since these take up little space and can be
managed by the games themselves. But the user might want to tinker
with configuration manually, in which case putting that stuff in a
non-obvious place / under a non-obvious name might be bad. I guess I
like ~/.local/share/games because it's consistent. Right now my
~/.local/share is cluttered with native game config folders, so they
could go in there.
Config and save data is very different of course. I'm not suggesting
putting *all* the program data from a game in XDG_GAMES_DIR. Programs
still should adhere to the current xdg standards; only game data
should go in that folder.
Graphics settings and resolution is config and goes in ~/.config.
Saves, scores, etc and what have you is game data and would currently
go in ~/.local/share, and is what I'm suggesting moving to
$XDG_GAMES_DIR.
From a games dev point of view, what the application needs is:
- A place for the game's binaries (this is handled by the package manager)
- A place for the game's data files (this is either handled by the
package manager of the game itself. At the user level it usually goes
in ~/.local/share)
- Game configuration (~/.config)
- Logs (usually end up in ~/.local/share), caches (~/.cache)
- Addons/customizations (~/.local/share)
And for the game-specific data:
- World data
- Saves, scores, progression, achievements, ...
- Screenshots (arguable)
Post by Robert QuallsThen again, if developers refuse to use anything other than "my
games," putting a "proper" folder somewhere else would just cause more
confusion. And then there's having both a wine and native version
installed simultaneously, overwriting each other's stuff through some
subtle inconsistency...
As far as Wine goes, it's developers using the Windows "games" API. If
Wine decided to integrate with the aforementioned xdg variable, those
issues would go away immediately.
To be clear: Wine apps (almost) never touch anything in $HOME, as it's
only accessible as the Z: drive (unless sandboxed). All of the files
go in $WINEPREFIX, which happens to have a few symlinks to $HOME by
default (such as My Documents).
Post by Robert QuallsRobert Qualls.
Post by Jerome LeclancheThoughts on recognizing and managing $XDG_GAMES_DIR, and possibly
translating it in xdg-user-dirs?
(http://www.freedesktop.org/wiki/Software/xdg-user-dirs/)
It's a bit analogous to windows' "My Games" / "Saved Games" folder.
Wine in fact needs it (currently its always using "<My Documents aka
$HOME>/my games"), though it can do without. Steam is in the same
situation (Steam on Windows saves to My Games and Steam's online
service).
On Windows, the folder contains saves, scores, player data etc for
specifically games applications.
This has been on the back of my mind for a little while now. There's
the obvious answer of using ~/.local/share for game saves (in fact
thats pretty much what that is for), but there's also obvious
advantages to having saved games in their own folders.
So there's also the option of defaulting it in
~/.local/share/gamesaves or ~/.local/games or something and not have
it localized by xdg-user-dirs, which is more unixy/linuxy and in which
case it wouldn't be managed by xdg-user-dirs at all. This comes down
to "Does game save data need to be user-facing?".
Thoughts?
J. Leclanche
_______________________________________________
xdg mailing list
http://lists.freedesktop.org/mailman/listinfo/xdg
_______________________________________________
xdg mailing list
http://lists.freedesktop.org/mailman/listinfo/xdg