Table of Contents
Software That Doesn't Support XDG
And ways around that
XDG user directories are cool. Dumping your trash in my home directory is not!
Software
Audacity
A fork called Tenacity now supports XDG directories.
Update: Fixed: https://github.com/audacity/audacity/pull/3088
Cargo
Rust package manager.
- Issue: rust-lang/cargo/issues/1734
There are the environment vars CARGO_HOME
and RUSTUP_HOME
, as a work-round.
Firefox
Foobar2000
Godot
~/.godot
is the default, but can be fixed in the software preferences.
Hunspell
Sticks it's custom dictionary/ies as a dotfile in home. EG: .hunspell_en_AU
.
Itch
Well this is weird. There's a .ych
, which seems to be the actual Electron launcher?, and then everything else is in .config/itch
, like game syou download and everything. WEIRD AS HELL.
- Issue: itchio/itch/issues/2356 (newer, 'wontfix')
- Issue: itchio/itch/issues/1184
LMMS
MPV
Dev hates XDG. Defaults to ~/.mpv
, but if you move that to ~/.config/mpv
she'll be right. No support for ~/.local
or ~/.cache
Neverball
NPM
- Issue: npm/npm/issues/6675
- Workround in issue: npm/npm/issues/6675#issuecomment-251049832
PCManFM
Generally it works right, but thumbnails are in ~/.thumbnails
instead of XDG_CACHE_HOME/thumbnails
Quod Libet
I have everything in ~/.config/quodlibet
, but that includes stuff that isn't config stuff like playlists.
- Issue: quodlibet/quodlibet/issues/2202 (current)
RPG in a Box
SoulseekQT
They don't have an issue tracker, just a Google forum thing :/
Steam
- Interesting workaround, but not ideal: ValveSoftware/steam-for-linux/issues/1890#issuecomment-394128930
Syncterm
Defaults to ~/.syncterm
, but can edit in config.
Thunderbird
Vim
You can set an environment variable to load your config from wherever you want.
export VIMINIT=“:source ~/.config/vim/vimrc”
Weechat
- Issue: weechat/weechat/issues/1285
You can set an environment variable to load your config from wherever you want.
export WEECHAT_HOME=“~/.config/weechat”
Wine
Wine keeps it's profiles in ~/.wine
by default.
You can change this with an environment variable, say: export WINEPREFIX=~/.local/share/wine
See Also
- https://soc.me/standards/defending-home - Wild solution where user makes their home directory read-only.