XDG 基本目录
本文总结了 XDG 基本目录规范 的 #规范 部分,并追踪了软件在 #支持 部分的支持情况。
规范
请阅读完整规范。本节将尝试剖析其试图达成的目标的本质。
只有 XDG_RUNTIME_DIR
通过 pam_systemd(8) 默认设置。 用户需要根据规范显式定义其他变量。 更改它可能会导致 pipewire 和 chromium 上的屏幕共享出现问题。
有关定义变量的信息,请参阅 环境变量#全局。
用户目录
XDG_CONFIG_HOME
- 应写入用户特定配置的位置(类似于
/etc
)。 - 应默认为
$HOME/.config
。
- 应写入用户特定配置的位置(类似于
XDG_CACHE_HOME
- 应写入用户特定的非必要(缓存)数据的位置(类似于
/var/cache
)。 - 应默认为
$HOME/.cache
。
- 应写入用户特定的非必要(缓存)数据的位置(类似于
XDG_DATA_HOME
- 应写入用户特定数据文件的位置(类似于
/usr/share
)。 - 应默认为
$HOME/.local/share
。
- 应写入用户特定数据文件的位置(类似于
XDG_STATE_HOME
- 应写入用户特定状态文件的位置(类似于
/var/lib
)。 - 应默认为
$HOME/.local/state
。
- 应写入用户特定状态文件的位置(类似于
XDG_RUNTIME_DIR
- 用于非必要的用户特定数据文件,例如套接字、命名管道等。
- 不需要具有默认值;如果未设置或未提供等效项,则应发出警告。
- 必须由用户拥有,访问模式为
0700
。 - 文件系统完全符合操作系统标准。
- 必须位于本地文件系统上。
- 可能会定期清理。
- 每 6 小时修改一次,如果需要持久性,则设置粘滞位。
- 只能在用户登录期间存在。
- 不应存储大文件,因为它可能作为 tmpfs 挂载。
- pam_systemd 将其设置为
/run/user/$UID
。
系统目录
XDG_DATA_DIRS
- 以
:
分隔的目录列表(类似于PATH
)。 - 应默认为
/usr/local/share:/usr/share
。
- 以
XDG_CONFIG_DIRS
- 以
:
分隔的目录列表(类似于PATH
)。 - 应默认为
/etc/xdg
。
- 以
支持
本节旨在编录越来越多的使用 2003 年引入的 XDG 基本目录规范 的软件。 此处旨在通过列出常见的点文件及其支持状态来证明此规范的可行性。 对于那些当前不支持基本目录规范的软件,将演示变通方法来模拟它。
变通方法将仅限于不涉及修补源代码、执行存储在环境变量中的代码或编译时选项的任何内容。 这样做的理由是配置应在系统之间可移植,而编译时选项会阻止这种情况。
希望这将提供有关某些类型的点文件到底是什么以及它们来自何处的信息来源。
贡献
贡献时,请确保使用正确的部分。
任何东西都不应需要代码评估、补丁或编译时选项来获得支持,任何需要这些的都必须被视为硬编码。 此外,如果过程容易出错或困难,也应将其归类为硬编码。
- 第一列应该是内部文章的链接、Template:Pkg 或 Template:AUR。
- 第二列用于项目拥有的任何旧文件和目录(每行一个),这样做是为了让人们即使在不再读取它们的情况下也能找到它们。
- 在第三列中,尝试查找项目切换到 XDG 基本目录的提交或版本,或任何公开讨论,并将它们包含在接下来的两列中(每行两个)。
- 最后一列应包含任何适当的变通方法或解决方案。 请验证您的解决方案是否正确且功能正常。
已支持
应用程序 | 旧路径 | 开始支持版本 | 讨论 | 注释 |
---|---|---|---|---|
act | ~/.actrc
|
1656 | [1] | XDG_CONFIG_HOME/act/actrc
如果存在 |
aerc | fff1664 | XDG_CONFIG_HOME/aerc/aerc.conf
| ||
ALSA | ~/.asoundrc
|
577df36 | [2] | XDG_CONFIG_HOME/alsa/asoundrc
|
anacondaAUR | ~/.conda/.condarc , ~/.conda/condarc , ~/.conda/condarc.d/ , ~/.condarc |
4.11.0 | [3] [4] | |
Android Studio | ~/.AndroidStudioX.X
|
Android Studio 4.1 |
XDG_CONFIG_HOME/Google/AndroidStudioX.X XDG_DATA_HOME/Google/AndroidStudioX.X XDG_CACHE_HOME/Google/AndroidStudioX.X Google 的位置概述 未提及 XDG - 路径可能是硬编码而不是使用正确的变量,尽管这不太可能,因为 Android Studio 基于的 Intellij IDEA 也正确地实现了它 | |
Anki | ~/Anki , ~/Documents/Anki |
[5] [6] [7] | 如果不存在旧位置,则默认使用 $XDG_DATA_HOME/Anki2 作为默认位置,可以使用 anki -b <anki_dir> 更改 | |
antimicrox | ~/.antimicro , ~/.antimicrox |
edba864 | [8] | |
apvlvAUR | ~/.apvlvrc
|
[9] | [10] | 现在如果 XDG_CONFIG_HOME/apvlv/apvlvrc 存在,则使用它。 |
aria2 | ~/.aria2
|
8bc1d37 | [11] |
XDG_CONFIG_HOME/aria2/ XDG_CACHE_HOME/aria2/ |
atuin | ~/.config/atuin ~/.local/share/atuin |
156893d |
XDG_CONFIG_HOME/atuin/config.toml XDG_DATA_HOME/atuin/history.db | |
asunderAUR | ~/.asunder ~/.asunder_album_artist ~/.asunder_album_genre ~/.asunder_album_title |
2.9.0[死链 2021-05-17 ⓘ] | [12][死链 2021-05-17 ⓘ] | ~/.asunder 使用 XDG_CONFIG_HOME/asunder/asunder ,其他 3 个文件使用 XDG_CACHE_HOME/asunder/asunder_album_... 。 迁移后旧路径不会被删除,必须手动删除。 |
audacity | ~/.audacity-data/
|
3.2.0 | [13] | 如果旧位置不存在,则使用新位置XDG_CONFIG_HOME/audacity XDG_DATA_HOME/audacity |
btop | b5e709d | XDG_CONFIG_HOME/btop
| ||
binwalk | ~/.binwalk
|
2051757 | [14] | XDG_CONFIG_HOME/binwalk
|
bitwarden-cli | ~/.config/Bitwarden CLI
|
1.7.1 | [15] |
XDG_CONFIG_HOME/Bitwarden CLI XDG_DATA_HOME/audacity
当前包含一个包含所有保管库数据的 |
Blender | ~/.blender
|
4293f47 | [16] | |
borgmatic | ~/.borgmatic/
|
1.9.0 | [17] | |
byobu | ~/.byobu
|
4.17 | [18] |
如果旧路径存在,或者如果未设置 |
cabal | ~/.cabal/
|
9f7dc55 v3.10.1.0 | [19] | |
calcurse | ~/.calcurse
|
04162d | [20] [21] |
XDG_CONFIG_HOME/calcurse XDG_DATA_HOME/calcurse 如果旧路径 |
calibre | ||||
ccache | ~/.ccache
|
4.0 | [22] |
XDG_CACHE_HOME/ccache XDG_CONFIG_HOME/ccache/ccache.conf |
catfish | ~/.config/catfish
|
af65ed25 | [23] | |
clangd | ~/.clangd
|
fdf7dcc[死链 2022-09-23 ⓘ] | [24] | XDG_CONFIG_HOME/clangd/config.yml
项目特定的配置可以在 |
clifmAUR | ~/.config/clifm/
|
9d6e482 | XDG_CONFIG_HOME/clifm/
| |
Composer | ~/.composer
|
1.0.0-beta1 | [25] | |
crossnote | ~/.mume
|
d714a82 | [26] | $XDG_CONFIG_HOME/mume
如果旧路径存在,则它将优先。 |
ctags (universal-ctags) | ~/.ctagsrc, .ctags.d
|
68da03a | Issue 89 | 在启动时,Universal-ctags 加载文件扩展名为 `.ctags` 的文件,位于: $XDG_CONFIG_HOME/ctags 请参阅 Ctags 选项文件。 |
cURL | ~/.curlrc
|
7.73.0 | [27] | XDG_CONFIG_HOME/.curlrc
|
CUPS | ~/.cups/
|
23b1be6 | [28] |
libcups 在 v3 中添加了 XDG 支持(仍在 beta 测试中)。 官方存储库中的版本仍然硬编码为 |
dconf | ||||
Dolphin 模拟器 | ~/.dolphin-emu
|
a498c68 | [29] | |
dr14_t.meter-gitAUR | 7e777ca | [30] | XDG_CONFIG_HOME/dr14tmeter/
| |
dunst | 78b6e2b | [31] | XDG_CONFIG_HOME/dunst/
| |
Emacs | ~/.emacs ~/.emacs.d/init.el |
[32] | XDG_CONFIG_HOME/emacs/init.el
旧路径优先于 XDG 路径。 Emacs 永远不会创建 | |
fish | ||||
fltk | ~/.fltk/
|
7308bcd | [33] [34] | 仅在 1.4.0 版本中支持,该版本尚未发布(截至 2022 年 7 月 9 日) |
fontconfig | ~/.fontconfig ~/.fonts |
8c255fb, [35] | 配置位于 XDG_CONFIG_HOME/fontconfig/fonts.conf 或 XDG_CONFIG_HOME/fontconfig/conf.d/ 中,字体存储在 XDG_DATA_HOME/fonts/ 中 | |
fontforge | ~/.FontForge ~/.PfaEdit |
e4c2cc7 | ||
freecad | ~/.FreeCAD
|
e7e2994ba | [38] | 默认为XDG_CONFIG_HOME/FreeCAD XDG_DATA_HOME/FreeCAD XDG_CACHE_HOME/FreeCAD 旧路径可以使用 |
freerdp | ~/.freerdp
|
edf6e72 | ||
Gajim | ~/.gajim
|
3e777ea | [39] | |
gconfAUR | ~/.gconf
|
fc28caa | [40] | |
GDB | ~/.gdbinit , ~/.gdb_history |
11.1 | XDG_CONFIG_HOME/gdb/gdbinit , export GDBHISTFILE="$XDG_DATA_HOME"/gdb/history | |
ghidra | ~/.ghidra/
|
3b0aac9 | [41] | |
GIMP | ~/.gimp-x.y ~/.thumbnails |
|||
Git | ~/.gitconfig , ~/.gitignore , ~/.gitattributes , ~/.git-credentials , ~/.gitk |
0d94427, dc79687, 684e40f | Git 配置, Git 属性, Git 凭证, gitk | XDG_CONFIG_HOME/git/config , XDG_CONFIG_HOME/git/ignore , XDG_CONFIG_HOME/git/attributes , XDG_CONFIG_HOME/git/credentials , XDG_CONFIG_HOME/git/gitk |
gops | 71c4255 | |||
gnuplot | ~/.gnuplot_history
|
a5562b1 | ||
goobookAUR | ~/.goobookrc
|
3.5 | [45] | XDG_CONFIG_HOME/goobookrc
|
Godot Engine | ~/.godot
|
73049d1 | [46] | |
GStreamer | ~/.gstreamer-0.10
|
4e36f93 | [47] | |
GTK 3 | ||||
Haskell#Stack | ~/.stack
|
2.9.3 | [48] | 默认为旧版。 使用 export STACK_XDG=1 使其符合规范。旧方法 |
helm | ~/.helm
|
3.0.0 | ||
htop | ~/.htoprc
|
93233a6 | XDG_CONFIG_HOME/htop/htoprc
| |
httpie | ~/.httpie
|
5af0874 | [50] | |
hunspell | ~/.hunspell_default.
|
[51] | ||
i3 | ~/.i3
|
7c130fb | ||
i3blocks, i3blocks-gitAUR | [52] | |||
i3status | ~/.i3status.conf
|
c3f7fc4 | ||
i3status-rust | ||||
IdeaVim | ~/.ideavimrc
|
0.54.1-EAP | [53] | XDG_CONFIG_HOME/ideavim/ideavimrc
|
imagemagick | ||||
iotop-c | ~/.config/iotop
|
[54] | [55] | |
Inkscape | ~/.inkscape
|
0.47 | [56] | |
ipython | ~/.ipython
|
8.0.0 | [57] | 检查 $XDG_CONFIG_HOME/ipython (如果 XDG_CONFIG_HOME 未设置,则检查 ~/.config/ipython )是否存在,否则使用 ~/.ipython 。 |
iwd / iwctl | ~/.iwctl_history
|
d3e00d7f | ||
intellij-idea-community-edition / intellij-idea-ultimate-editionAUR | ~/.IntelliJIdeaXXXX.X
|
2020.1 | [58] |
XDG_CONFIG_HOME/JetBrains/IntelliJIdeaXXXX.X XDG_DATA_HOME/JetBrains/IntelliJIdeaXXXX.X XDG_CACHE_HOME/JetBrains/IntelliJIdeaXXXX.X |
josm | ~/.josm
|
11162 | [59] | |
jupyter | ~/.jupyter
|
在 5.0 中选择加入,在 6.0 中选择退出,在 7.0 中强制执行(更新日志) | XDG_CONFIG_HOME/jupyter
| |
Kakoune | ||||
keynavAUR | ~/.keynavrc
|
XDG_CONFIG_HOME/keynav/keynavrc
| ||
less | ~/.lesskey , ~/.lesshst |
590
在 598 中完全支持 |
[60] | 环境变量 XDG_CONFIG_HOME 和 XDG_DATA_HOME 必须在 590 版本中设置。 在 598 版本中,不再需要这样做。
|
latexmk(在 texlive-binextra 中) | ~/.latexmkrc
|
| ||
lftp | ~/.lftp
|
21dc400 | [61] | |
lgogdownloaderAUR | ~/.gogdownloader
|
d430af6 | [62] | |
luarocks | ~/.luarocks
|
cd16cdd | [63] |
XDG_CONFIG_HOME/luarocks XDG_CACHE_HOME/luarocks 如果旧路径 |
mangohud | 65b90fc | [64] | XDG_CONFIG_HOME/MangoHud
| |
mc | ~/.mc
|
[65] | ||
Mercurial | ~/.hgrc
|
XDG_CONFIG_HOME/hg/hgrc .
| ||
mesa | 87ab26b | XDG_CACHE_HOME/mesa
| ||
milkytracker | ~/.milkytracker_config
|
eb487c5 | [66] | |
mlterm | ~/.mlterm/
|
71df071 | [67] | XDG_CONFIG_HOME/mlterm/
|
nmcli | ~/.nmcli-history
|
1.52.0 | [68] [69] [70] | XDG_CACHE_HOME/nmcli-history
|
mozc | ~/.mozc
|
91cc1e1 | [71] | |
mpd | ~/.mpdconf
|
87b7328 | ||
mpv | ~/.mpv
|
cb250d4 | [72] | |
msmtp | ~/.msmtprc
|
af2f409 v1.6.7+ |
XDG_CONFIG_HOME/msmtp/config .
| |
mutt | ~/.mutt
|
b17cd67 | [73] | |
mypaint | ~/.mypaint
|
cf723b7 | ||
nano | ~/.nano/ ~/.nanorc |
c16e79b | [74] | |
ncmpcpp | ~/.ncmpcpp ~/.lyrics |
应设置 ncmpcpp_directory 以避免在 ~/.ncmpcpp 中出现 error.log 文件。 并且可以将 lyrics_directory 设置为 ~/.cache/ncmpcpp-lyrics 以避免 ~/.lyrics 。 | ||
Neovim | ~/.nvim ~/.nvimlog ~/.nviminfo |
1ca5646bb | ||
Nestopia UE | ~/.nestopia/
|
610c008 1.51.0 | [80] | |
newsboat | ~/.newsboat
|
3c57824 | [81] | 需要创建这两个目录 [82]
|
node-gyp | ~/.node-gyp
|
2b5ce52a | [83] | |
np2kai-gitAUR | ~/.config/np2kai ~/.config/xnp2kai |
56a1cc2 | [84] | |
notmuch | ~/.notmuch-config
|
[85] | mkdir -p $XDG_CONFIG_HOME/notmuch/default; mv ~/.notmuch-config $XDG_CONFIG_HOME/notmuch/default/config
| |
NSS | ~/.pki
|
3.42 (da45424) | [86] | 请参阅 Chromium 了解现有问题。 |
nteract-binAUR | 4593e72 | [87] [88] | 无法识别 ipython/jupyter 的解决方法 | |
ocaml-utopAUR | ~/.utop-history
|
2.13.0 | [89] | XDG_STATE_HOME/utop/utop-history
|
OfflineIMAP | ~/.offlineimaprc
|
5150de5 | [90] | XDG_CONFIG_HOME/offlineimap/config
|
openal | ~/.alsoftrc
|
3c90ed9 | XDG_CONFIG_HOME/alsoft.conf
| |
opentyrianAUR | ~/.opentyrian
|
39559c3 | [91] | |
oscAUR | ~/.oscrc ~/.osc_cookiejar |
6bc2d3f | github.com/openSUSE/osc/pull/940 |
如果旧路径存在,则旧路径优先 |
pam-u2f | ~/.config/Yubico/u2f_keys
|
ad52dd8 | [92] | XDG_CONFIG_HOME/Yubico/u2f_keys
|
pandoc-cli | ~/.pandoc/
|
0bed0ab | [93] | |
PCManFM | ~/.thumbnails
|
1.3.2 | ||
pcsx2AUR | ~/.pcsx2
|
[94] [95] | ||
pdfsamAUR | ~/.openjfx
|
export _JAVA_OPTIONS=-Djavafx.cachedir="$XDG_CACHE_HOME"/openjfx
| ||
Pry | ~/.pryrc ~/.pry_history |
[96] | ||
python-autoimportAUR | ~/.config/autoimport/config.toml
|
1.2.0 | [97] | XDG_CONFIG_HOME/autoimport/config.toml
|
python-black | ~/.config/black
|
21.4b0 | [98] | XDG_CONFIG_HOME/black , XDG_CACHE_HOME/black/<version>/ |
python-pylint | ~/.pylint.d
|
2.10 | [99][死链 2024-10-12 ⓘ] | 以前是 export PYLINTHOME="$XDG_CACHE_HOME"/pylint ,全局配置仍然需要:export PYLINTRC="$XDG_CONFIG_HOME"/pylint/pylintrc |
python-pip | ~/.pip
|
6.0 | [100] | |
python-pipx | ~/.local/pipx
|
c3d8de9 | [101] | 为了兼容性,如果 ~/.local/pipx 存在,pipx 将恢复为 ~/.local/pipx 。 使用 python-platformdirs 实现 |
python-poetry | ~/.poetry
|
[102] | [103] | |
powershellAUR | 6.0 | |||
ppsspp | ~/.ppsspp
|
132fe47 | [104] | |
procps-ng | ~/.toprc
|
af53e17 | ||
pacman | ~/.makepkg.conf
|
80eca94 | [107] | |
panda3dAUR | ~/.panda3d
|
2b537d2 | ||
pnpm | ~/.pnpm-store
|
[108] [109] | [110] | |
poezioAUR | ||||
PulseAudio | ~/.pulse ~/.pulse-cookie |
[111] | Steam 可能仍然会创建 ~/.pulse-cookie 。 将 cookie-file = ~/.config/pulse/cookie 添加到 /etc/pulse/client.conf 以摆脱它。 | |
pyroomAUR | ||||
quodlibet | ~/.quodlibet
|
3.10.0 | [112] | |
qutebrowser | ||||
qtile | [113] | 一些可选的栏小部件可以在不兼容的路径中创建文件和目录,但大多数情况下这些仍然是可配置的。 | ||
rclone | ~/.rclone.conf
|
9d36258 | [114] | |
retroarch | ||||
ripgrep-all | ~/.cache/rga
|
963524b v0.10.3 | [115] [116] [117] | |
rrAUR | ~/.rr
|
02e7d41 | [118] | |
RSpec | ~/.rspec
|
5e395e2 | [119] | |
rTorrent | ~/.rtorrent.rc
|
6a8d332 | ||
RuboCop | ~/.rubocop.yml
|
6fe5956 | [120] | |
Ruby#RubyGems | ~/.gem
|
3.0.0 (5c6269c) | [121] |
XDG_CONFIG_HOME/gem/gemrc XDG_CONFIG_HOME/irb XDG_DATA_HOME/gem XDG_DATA_HOME/rdoc |
sandboxd | ~/.sandboxrc
|
[122] | [123] | XDG_CONFIG_HOME/sandboxd/sandboxrc
|
scribus | ~/.scribus
|
1.5.3 | ||
scummvm | ~/.scummvmrc ~/.scummvm/ |
7d014be | [124] | 需要手动迁移数据。
|
sdcv | ~/.stardict/ ~/.sdcv_history |
958ec35 | [125] | |
shellcheck | ~/.shellcheckrc
|
581bcc3 | XDG_CONFIG_HOME/shellcheckrc
请参阅 Shellcheck RC 文件 以获取更多信息。 | |
snes9x | ~/.snes9x
|
93b5f11 | [126] | 默认情况下,配置文件留空,目的是让用户随意填写(通过图形界面或手动方式)。 |
spectrwm | ~/.spectrwm
|
a30bbb | [127] | |
sublime-text-devAUR | build 4105 | 在 4105 版本之前,缓存位于 XDG_CONFIG_HOME/sublime-text-3/Cache 。 | ||
surfraw | ~/.surfraw.conf ~/.surfraw.bookmarks |
|||
sway | ~/.sway/config
|
614393c | [128] | XDG_CONFIG_HOME/sway/config
|
sxhkd | ||||
systemd | ||||
teeworlds | ~/.teeworlds
|
[129] | ||
termite | ||||
tig | ~/.tigrc , ~/.tig_history |
2.2 | [130] | ~/.local/share/tig 目录必须存在,否则写入 ~/.tig_history 。 |
TigerVNC | ~/.vnc
|
1.14.0 | [131] | |
主题 (桌面) | ~/.icons/ , ~/.themes/ |
[132] | XDG_DATA_HOME/icons
对于 Qt 程序、GTK 或 Wayland 上的 Qt 程序要使用 | |
tmux | ~/.tmux.conf
|
3.1 | [133] | 3.1 版本引入了 ~/.config/tmux/tmux.conf ,并且在 3.2 版本中添加了 XDG_CONFIG_HOME/tmux/tmux.conf |
tmuxp | ~/.tmuxp
|
1.5.0 | [134] | 在 1.5.2 版本中修复 |
tmuxinatorAUR | ~/.tmuxinator
|
2636923 | [135] | |
Transmission | ~/.transmission
|
b71a298 | ||
util-linux | 570b321 | |||
yapf | a0b51d2 | [136] | $XDG_CONFIG_HOME/yapf/style
| |
Uzbl | c6fd63a | [137] | ||
vale | ~/.vale.ini
|
3.0.0 | ||
vim | ~/.vim , ~/.vimrc , ~/.viminfo |
c9df1fb | [138] | XDG_CONFIG_HOME/vim/vimrc
有关更多详细信息,请参阅 :h xdg-base-dir。 可以使用 |
vimb | ||||
VirtualBox | ~/.VirtualBox
|
4.3 | [139] | |
vis | ~/.vis
|
[140] | ||
VLC | ~/.vlcrc
|
16f32e1 | [141] | |
warsow | ~/.warsow-2.x
|
98ece3f | [142] | |
WeeChat | ~/.weechat
|
[143] | [144] [145][死链接 2023-05-06 ⓘ] |
XDG_CONFIG_HOME/weechat XDG_CACHE_HOME/weechat XDG_DATA_HOME/weechat |
Wireshark | ~/.wireshark
|
b0b53fa[死链接 2022-09-23 ⓘ] | ||
wxWidgets | [146] | |||
XKB | ~/.xkb
|
|||
Xsettingsd | ~/.xsettingsd
|
b4999f5 | ||
xmobar | ~/.xmobarrc
|
7b0d6bf[死链接 2024-07-30 ⓘ] | [147][死链接 2024-07-30 ⓘ] | XDG_CONFIG_HOME/xmobar/xmobarrc
|
xmonad | ~/.xmonad/
|
40fc10b | 所有这些目录都必须存在,否则它会放弃并回退到 ~/.xmonad/ 。XDG_CACHE_HOME/xmonad XDG_CONFIG_HOME/xmonad XDG_DATA_HOME/xmonad 或者,它始终遵循 | |
xonsh | ~/.xonshrc
|
[151] | $XDG_CONFIG_HOME/xonsh/rc.xsh
| |
xournalpp | ~/.xournalpp
|
20db937f | [152] | |
xsel | ~/.xsel.log
|
ee7b481 | [154] | |
Zim | e42b8b0 |
$XDG_CONFIG_HOME/zim/preferences.conf $XDG_CONFIG_HOME/zim/notebooks.list | ||
zoxide | ~/.zo
|
0.3.0 | [155] | |
zutils | ~/.zutilsrc
|
1.12 |
$XDG_CONFIG_HOME/zutils.conf |
部分支持
应用程序 | 旧路径 | 开始支持版本 | 讨论 | 注释 |
---|---|---|---|---|
abookAUR | ~/.abook
|
abook --config "$XDG_CONFIG_HOME"/abook/abookrc --datafile "$XDG_DATA_HOME"/abook/addressbook
| ||
ack | ~/.ackrc
|
[156] | export ACKRC="$XDG_CONFIG_HOME/ack/ackrc"
| |
Ansible | ~/.ansible
|
2.14 | [157] [158] [159] | export ANSIBLE_HOME="${XDG_CONFIG_HOME}/ansible" export ANSIBLE_CONFIG="${XDG_CONFIG_HOME}/ansible.cfg" export ANSIBLE_GALAXY_CACHE_DIR="${XDG_CACHE_HOME}/ansible/galaxy_cache"[160] 可以通过在适当的 |
asdf-vmAUR | ~/.asdfrc , ~/.asdf/ |
[163] | export ASDF_CONFIG_FILE="${XDG_CONFIG_HOME}/asdf/asdfrc" , export ASDF_DATA_DIR="${XDG_DATA_HOME}/asdf" | |
aspell | ~/.aspell.conf
|
[164] | 非常不完整。 以下代码重新定位了 en 字典,但为了简洁起见,此处未指定其他可能的字典。 export ASPELL_CONF="per-conf $XDG_CONFIG_HOME/aspell/aspell.conf; personal $XDG_DATA_HOME/aspell/en.pws; repl $XDG_DATA_HOME/aspell/en.prepl" | |
aws-cli | ~/.aws
|
1.7.45 | [165] | export AWS_SHARED_CREDENTIALS_FILE="$XDG_CONFIG_HOME"/aws/credentials , export AWS_CONFIG_FILE="$XDG_CONFIG_HOME"/aws/config |
bash-completion | ~/.bash_completion
|
export BASH_COMPLETION_USER_FILE="$XDG_CONFIG_HOME"/bash-completion/bash_completion
| ||
bashdbAUR | ~/.bashdbinit, ~/.bashdb_hist
|
如 [166] 中所述,您可以指定一个文件来从中运行命令。 因此,将初始化文件移动到 XDG_CONFIG_HOME/bashdb/bashdbinit 并创建一个别名 alias bashdb='bashdb -x ${XDG_CONFIG_HOME:-$HOME/.config}/bashdb/bashdbinit' 。 不幸的是,历史记录文件是硬编码的 [167]。 | ||
bazaar | ~/.bazaar , ~/.bzr.log |
2.3.0 | [168] | 上游错误讨论指出,如果 ~/.config/bazaar 存在,bazaar 将使用它。 日志文件 ~/.bzr.log 仍可能被写入。 |
bogofilter-db | ~/.bogofilter
|
0.7.5 | [169] | export BOGOFILTER_DIR="$XDG_DATA_HOME"/bogofilter
|
btpd-gitAUR | ~/.btpd/
|
[170] | btpd -d "$XDG_DATA_HOME"/.btpd
| |
bunAUR | ~/.bun/
|
[171] | 当显式设置 $XDG_CONFIG_HOME 、$XDG_CACHE_HOME 和/或 $XDG_DATA_HOME 时,Bun 将优先使用它们。 作为替代方案,可以使用 export BUN_INSTALL="$XDG_DATA_HOME"/bun 来设置 bun 的目录主位置。 | |
calc | ~/.calc_history
|
export CALCHISTFILE="$XDG_CACHE_HOME"/calc_history | ||
Rust#Cargo | ~/.cargo
|
[172] [173] [174] [175] | export CARGO_HOME="$XDG_DATA_HOME"/cargo
| |
cataclysm-dda | ~/.cataclysm-dda
|
0.D-1 | [176] | 由于需要编译时选项,因此部分支持 |
cd-bookmark | ~/.cdbookmark
|
[177] | export CD_BOOKMARK_FILE=$XDG_CONFIG_HOME/cd-bookmark/bookmarks
或使用具有原生 XDG 支持的分支:[178] | |
cgdb | ~/.cgdb
|
[在主分支上,但尚未发布] | [179] [180] | 设置 export CGDB_DIR=$XDG_CONFIG_HOME/cgdb 并将配置文件移动到 XDG_CONFIG_HOME/cgdb/cgdbrc |
chez-schemeAUR | ~/.chezscheme_history
|
petite --eehistory "$XDG_DATA_HOME"/chezscheme/history
| ||
chktex 在 texlive-binextra 中 | ~/.chktexrc
|
将配置文件移动到 $XDG_CONFIG_HOME/chktex/.chktexrc (注意前导点)并 export CHKTEXRC=$XDG_CONFIG_HOME/chktex | ||
Chromium | ~/.chromium , ~/.pki |
23057 | [181] [182] [183] | 故意(根据这些来源)破坏 ~/.config ,将数百兆字节的缓存数据写入其中。 完全不受支持。Chromium 创建 .pki 是因为即使 NSS 本身现在允许使用 XDG 规范,也没有正确设置 NSS。 这导致其下游也无法正常工作(Qt WebEngine 尤其影响许多情况,例如 KMail 等)。 |
cinelerra | ~/.bcast5
|
[184] | export CIN_CONFIG="$XDG_CONFIG_HOME"/bcast5
| |
conky | ~/.conkyrc
|
00481ee | [185] | conky --config="$XDG_CONFIG_HOME"/conky/conkyrc
|
claws-mail | ~/.claws-mail
|
[186] | claws-mail --alternate-config-dir "$XDG_DATA_HOME"/claws-mail
| |
coreutils | ~/.dircolors
|
eval $(dircolors "$XDG_CONFIG_HOME"/dircolors)
| ||
crawl | ~/.crawl
|
需要尾部斜杠
| ||
clusterssh | ~/.clusterssh/
|
alias cssh="cssh --config-file '$XDG_CONFIG_HOME/clusterssh/config'"
$XDG_CONFIG_HOME/clusterssh/config extra_cluster_file=$HOME/.config/clusterssh/clusters extra_tag_file=$HOME/.config/clusterssh/tags 尽管如此,clusterssh 仍将创建 | ||
CUDA | ~/.nv
|
export CUDA_CACHE_PATH="$XDG_CACHE_HOME"/nv
| ||
dict | ~/.dictrc
|
dict -c "$XDG_CONFIG_HOME"/dict/dictrc
| ||
discord | ${XDG_CONFIG_HOME}/discord
|
截至 0.0.27 版本 未记录,但正在积极使用: 来源: | ||
Docker | ~/.docker
|
export DOCKER_CONFIG="$XDG_CONFIG_HOME"/docker
| ||
docker-machine | ~/.docker/machine
|
export MACHINE_STORAGE_PATH="$XDG_DATA_HOME"/docker-machine
| ||
DOSBox | ~/.dosbox/dosbox-0.74-2.conf
|
[187] | dosbox -conf "$XDG_CONFIG_HOME"/dosbox/dosbox.conf
| |
dub | ~/.dub
|
v1.30.0-beta.1 | Dub 使用 ~/.dub 目录来存储用户设置和缓存下载的软件包。 该目录只能整体移动,使用 export DUB_HOME="path/to/new/dub" 。 | |
Electrum Bitcoin Wallet | ~/.electrum
|
c121230 | export ELECTRUMDIR="$XDG_DATA_HOME/electrum"
| |
ELinks | ~/.elinks
|
export ELINKS_CONFDIR="$XDG_CONFIG_HOME"/elinks
| ||
elixir | ~/.mix , ~/.hex |
afaf889 | [188] [189] | Elixir 未完全遵循 XDG 规范,仅当 MIX_XDG 变量设置为特定值时才使用 XDG,否则默认使用旧版路径。
|
Elm | ~/.elm
|
export ELM_HOME="$XDG_CONFIG_HOME"/elm
| ||
factorioAUR | ~/.factorio/
|
[190] [191] | Factorio 支持使用配置文件手动指定数据路径:[192]__Game_Install_directory/config-path.cfg use-system-read-write-data-directories=true __Game_Install_directory/config/config.ini [path] read-data=__PATH__executable__/../../data write-data=.local/share/factorio | |
fceux | ~/.fceux/
|
[193] | export FCEUX_HOME="$XDG_CONFIG_HOME"/fceux 。 Fceux 将在 $FCEUX_HOME 中创建 .fceux 目录。 | |
FFmpeg | ~/.ffmpeg
|
export FFMPEG_DATADIR="$XDG_CONFIG_HOME"/ffmpeg
| ||
flutterAUR | ~/.flutter , ~/.flutter_settings , ~/.flutter_tool_state , ~/.pub-cache |
[194] | ||
fzf-gitAUR | ~/.fzf.bash, ~/.fzf.zsh
|
[195] | 如果使用 --xdg 调用安装脚本,例如 /usr/local/opt/fzf/install --xdg ,则 shell 初始化文件将安装到 XDG_CONFIG_HOME/fzf 。 | |
emscripten | ~/.emscripten , ~/.emscripten_sanity , ~/.emscripten_ports , ~/.emscripten_cache__last_clear |
[196] | export EM_CONFIG="$XDG_CONFIG_HOME"/emscripten/config , export EM_CACHE="$XDG_CACHE_HOME"/emscripten/cache , export EM_PORTS="$XDG_DATA_HOME"/emscripten/cache , emcc --em-config "$XDG_CONFIG_HOME"/emscripten/config --em-cache "$XDG_CACHE_HOME"/emscripten/cache | |
get_iplayerAUR | ~/.get_iplayer
|
export GETIPLAYERUSERPREFS="$XDG_DATA_HOME"/get_iplayer
| ||
getmail | ~/.getmail/getmailrc
|
getmail --rcfile="$XDG_CONFIG_HOME/getmail/getmailrc" --getmaildir="$XDG_DATA_HOME/getmail"
| ||
ghc | ~/.ghci
|
[197] | [198] | 上游从 9.4.1 版本开始支持 [199],但截至 2022-09-24,Arch 包版本为 9.0.2,尚未更新。 |
ghcup-hs-binAUR | ~/.ghcup
|
[200] | [201] | export GHCUP_USE_XDG_DIRS=true
可以将环境变量 |
glivAUR | ~/.glivrc
|
gliv --glivrc="$XDG_CONFIG_HOME"/gliv/glivrc
| ||
gnuradio | ~/.gnuradio
|
[203] | GNU Radio
GNU Radio Companion: | |
GnuPG | ~/.gnupg
|
[204] [205] | export GNUPGHOME="$XDG_DATA_HOME"/gnupg , gpg2 --homedir "$XDG_DATA_HOME"/gnupg 请注意,由于套接字目录会根据 [Service] Environment="GNUPGHOME=%h/.local/share/gnupg" 如果您将 GPG 用作 SSH 代理,请将 | |
Go | ~/go
|
[206] | export GOPATH="$XDG_DATA_HOME"/go , export GOMODCACHE="$XDG_CACHE_HOME"/go/mod 如果未设置 | |
Google Earth | ~/.googleearth
|
可以使用 ~/.config/Google/GoogleEarthPlus.conf 中的 KMLPath 和 CachePath 选项更改某些路径 | ||
gopass | ~/.password-store
|
在 ~/.config/gopass/config.yml 中覆盖设置~/.config/gopass/config.yml root: path: gpgcli-gitcli-fs+file:///home/<userid>/.config/password-store | ||
gpodder | ~/gPodder
|
GPODDER_DOWNLOAD_DIR 设置下载文件夹。 GPODDER_HOME - 存储配置文件和数据库文件的位置,如果未设置 GPODDER_DOWNLOAD_DIR ,也存储下载内容。 | ||
GQ LDAP 客户端 | ~/.gq , ~/.gq-state |
1.51 | export GQRC="$XDG_CONFIG_HOME"/gqrc , export GQSTATE="$XDG_DATA_HOME"/gq/gq-state , mkdir -p "$(dirname "$GQSTATE")" | |
Gradle | ~/.gradle
|
[209] | export GRADLE_USER_HOME="$XDG_DATA_HOME"/gradle
| |
GTK 1 | ~/.gtkrc
|
export GTK_RC_FILES="$XDG_CONFIG_HOME"/gtk-1.0/gtkrc
| ||
GTK 2 | ~/.gtkrc-2.0
|
export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/gtkrc":"$XDG_CONFIG_HOME/gtk-2.0/gtkrc.mine"
如果使用 Lxappearance,则 要防止 KDE Plasma 创建此文件,请禁用“GNOME/GTK 设置同步”后台服务。 | ||
hledger | ~/.hledger.journal
|
[211] | export LEDGER_FILE="$XDG_DATA_HOME"/hledger.journal
| |
Houdini | ~/houdiniMAJOR.MINOR)
|
[212] | export HOUDINI_USER_PREF_DIR="$XDG_CACHE_HOME"/houdini__HVER__
此变量的值必须包含子字符串 | |
imapfilterAUR | ~/.imapfilter
|
export IMAPFILTER_HOME="$XDG_CONFIG_HOME/imapfilter"
| ||
IPFS | ~/.ipfs
|
export IPFS_PATH="$XDG_DATA_HOME"/ipfs
| ||
irb | ~/.irbrc
|
~/.profile $ export IRBRC="$XDG_CONFIG_HOME"/irb/irbrc "$XDG_CONFIG_HOME"/irb/irbrc IRB.conf[:SAVE_HISTORY] ||= 1000 IRB.conf[:HISTORY_FILE] ||= File.join(ENV["XDG_DATA_HOME"], "irb", "history") | ||
irssi | ~/.irssi
|
[214] | irssi --config="$XDG_CONFIG_HOME"/irssi/config --home="$XDG_DATA_HOME"/irssi
| |
isync | ~/.mbsyncrc
|
[215] | mbsync -c "$XDG_CONFIG_HOME"/isync/mbsyncrc
| |
Java#OpenJDK | ~/.java/.userPrefs
|
[216] | export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java
| |
jupyter | ~/.jupyter
|
5.0.0rc0 | [217] [218] | python-jupyter-core < v5.0.0
v5.0.0 <= python-jupyter-core < v6.0.0
python-jupyter-core >= v6.0.0: 完全支持(通过 python-platformdirs)默认启用 |
k9s | ~/.k9s
|
0.20.4 | [220] | export K9SCONFIG="$XDG_CONFIG_HOME"/k9s
|
KDE | ~/.kde , ~/.kde4 |
[221] | export KDEHOME="$XDG_CONFIG_HOME"/kde
| |
keychain | ~/.keychain
|
[222] | [223] | keychain --absolute --dir "$XDG_RUNTIME_DIR"/keychain
|
kodi | ~/.kodi
|
[224] | [225] | KODI_DATA=$XDG_DATA_HOME/kodi
|
kscriptAUR | ~/.kscript
|
[226] | export KSCRIPT_CACHE_DIR="$XDG_CACHE_HOME"/kscript
| |
ledger | ~/.ledgerrc , ~/.pricedb |
[227] | ledger --init-file "$XDG_CONFIG_HOME"/ledgerrc
| |
Leiningen | ~/.lein , ~/.m2 |
export LEIN_HOME="$XDG_DATA_HOME"/lein
要更改 leiningen 使用的 m2 仓库位置,请查看此处:Leiningen#m2_repo_location | ||
libdvdcss | ~/.dvdcss
|
[228] | export DVDCSS_CACHE="$XDG_DATA_HOME"/dvdcss
| |
libice | ~/.ICEauthority
|
[229] | export ICEAUTHORITY="$XDG_CACHE_HOME"/ICEauthority
确保预先设置了 不要使用 | |
LibreOffice | [230] | Libreoffice 将所有内容存储在 $XDG_CONFIG_HOME/libreoffice/4/user/ 中,包括运行时文件、用户数据、缓存和扩展。 其中一些可以在工具 > 选项 > LibreOffice > 路径下更改 | ||
libx11 | ~/.XCompose , ~/.compose-cache |
export XCOMPOSEFILE="$XDG_CONFIG_HOME"/X11/xcompose , export XCOMPOSECACHE="$XDG_CACHE_HOME"/X11/xcompose | ||
ltrace | ~/.ltrace.conf
|
ltrace -F "$XDG_CONFIG_HOME"/ltrace/ltrace.conf
| ||
Luanti | ~/.minetest/
|
[231] | export MINETEST_USER_PATH="$XDG_DATA_HOME"/luanti
| |
lynx | /etc/lynx.cfg
|
export LYNX_CFG="$XDG_CONFIG_HOME"/lynx.cfg
| ||
m17n-db | ~/.m17n.d
|
[232] | ||
maptool-binAUR | ~/.maptool-rptools
|
[233] | /opt/maptool/lib/app/MapTool.cfg [JavaOptions] -DMAPTOOL_DATADIR=.local/share/maptool-rptools 但是,没有办法更改此配置文件的位置。 | |
maven | ~/.m2
|
[234] | export MAVEN_OPTS=-Dmaven.repo.local="$XDG_DATA_HOME"/maven/repository
, | |
Mathematica | ~/.Wolfram
|
export WOLFRAM_USERBASE="$XDG_CONFIG_HOME"/Wolfram
以前是 | ||
maxima | ~/.maxima
|
export MAXIMA_USERDIR="$XDG_CONFIG_HOME"/maxima
| ||
mednafen | ~/.mednafen
|
export MEDNAFEN_HOME="$XDG_CONFIG_HOME"/mednafen
| ||
minikube | ~/.minikube
|
[235] | export MINIKUBE_HOME="$XDG_DATA_HOME"/minikube
由于某种原因,在 | |
mitmproxy | ~/.mitmproxy
|
alias mitmproxy="mitmproxy --set confdir=$XDG_CONFIG_HOME/mitmproxy" , alias mitmweb="mitmweb --set confdir=$XDG_CONFIG_HOME/mitmproxy" | ||
MOC | ~/.moc
|
mocp -M "$XDG_CONFIG_HOME"/moc , mocp -O MOCDir="$XDG_CONFIG_HOME"/moc | ||
monero | ~/.bitmonero
|
monerod --data-dir "$XDG_DATA_HOME"/bitmonero
| ||
most | ~/.mostrc
|
export MOST_INITFILE="$XDG_CONFIG_HOME"/mostrc
| ||
MPlayer | ~/.mplayer
|
export MPLAYER_HOME="$XDG_CONFIG_HOME"/mplayer
| ||
mtpaint | ~/.mtpaint
|
[236] | /etc/mtpaint/mtpaintrc userINI = ~/.config/mtpaint | |
mypy | ~/.config/mypy/config , ~/.mypy.ini , ~/.mypy_cache |
v0.670 | [237] [238] | XDG_CONFIG_HOME/mypy/config , export MYPY_CACHE_DIR="$XDG_CACHE_HOME"/mypy |
MySQL | ~/.mysql_history , ~/.my.cnf , ~/.mylogin.cnf |
export MYSQL_HISTFILE="$XDG_DATA_HOME"/mysql_history
不支持 | ||
mysql-workbench | ~/.mysql/workbench
|
您可以使用 ---configdir 标志运行 MySQL Workbench,例如 mysql-workbench --configdir="$XDG_DATA_HOME/mysql/workbench" 。 需要手动创建目录,因为 MySQL Workbench 默认位置是 $HOME/.mysql/workbench 。 | ||
ncurses | ~/.terminfo
|
排除系统路径搜索
| ||
n | /usr/local/n
|
export N_PREFIX=$XDG_DATA_HOME/n
| ||
ncmpc | ~/.ncmpc
|
ncmpc -f "$XDG_CONFIG_HOME"/ncmpc/config
| ||
Netbeans | ~/.netbeans
|
[240] | netbeans --userdir "${XDG_CONFIG_HOME}"/netbeans
| |
Node.js | ~/.node_repl_history
|
[241] | export NODE_REPL_HISTORY="$XDG_DATA_HOME"/node_repl_history
| |
npm | ~/.npm , ~/.npmrc |
[242] | export NPM_CONFIG_USERCONFIG=$XDG_CONFIG_HOME/npm/npmrc
npmrc prefix=${XDG_DATA_HOME}/npm cache=${XDG_CACHE_HOME}/npm init-module=${XDG_CONFIG_HOME}/npm/config/npm-init.js logs-dir=${XDG_STATE_HOME}/npm/logs 如果 Node.js 是通过 nvmAUR 安装的,则 | |
opam | ~/.opam
|
[243] | export OPAMROOT="$XDG_DATA_HOME"/opam
配置和状态数据都存储在 | |
PuTTY | ~/.putty/
|
9952b2d | 如果 $XDG_CONFIG_HOME/putty 已经存在,则将使用它。 否则创建 ~/.putty 。 如果两者都存在,则优先使用 $XDG_CONFIG_HOME/putty 。 在 0.74 版本中测试通过 | |
python-easyocrAUR | ~/.EasyOCR
|
export EASYOCR_MODULE_PATH="$XDG_CONFIG_HOME/EasyOCR"
| ||
spotdlAUR | ~/.spotdl
|
v4.0.6 (3929cae) | [244] | mkdir "$XDG_DATA_HOME"/spotdl
|
nuget | ~/.nuget/packages
|
[245] | export NUGET_PACKAGES="$XDG_CACHE_HOME"/NuGetPackages
| |
NVIDIA | ~/.nv
|
如果设置了 XDG_CACHE_HOME ,则使用它,否则不正确地回退到 ~/.nv 而不是 ~/.cache 。 | ||
nvidia-settings | ~/.nvidia-settings-rc
|
[246] | nvidia-settings --config="$XDG_CONFIG_HOME"/nvidia/settings
| |
nvmAUR | ~/.nvm
|
export NVM_DIR="$XDG_DATA_HOME"/nvm
| ||
Octave | ~/octave , ~/.octave_packages , ~/.octave_hist |
export OCTAVE_HISTFILE="$XDG_CACHE_HOME/octave-hsts" , export OCTAVE_SITE_INITFILE="$XDG_CONFIG_HOME/octave/octaverc" $XDG_CONFIG_HOME/octave/octaverc source /usr/share/octave/site/m/startup/octaverc; pkg prefix ~/.local/share/octave/packages ~/.local/share/octave/packages; pkg local_list /home/<your username>/.local/share/octave/octave_packages;
| ||
omnisharp-roslyn-binAUR | ~/.omnisharp/
|
[247] | [248] | export OMNISHARPHOME="$XDG_CONFIG_HOME/omnisharp"
|
openscad | ~/.OpenSCAD
|
7c3077b0f | [249] | 未完全遵循 XDG Base Directory Specification,请参阅 [250] 目前它 硬编码 了 |
packettracerAUR | ~/.packettracer , ~/pt |
具有 GUI 配置来更改 PT 安装目录,~/pt/ (Options > Preferences > Administrative > User Folder)。 此路径写入文件 ~/.packettracer 。日志文件可能仍会写入 | ||
parallel | ~/.parallel
|
20170422 | export PARALLEL_HOME="$XDG_CONFIG_HOME"/parallel
| |
pass | ~/.password-store
|
export PASSWORD_STORE_DIR="$XDG_DATA_HOME"/pass
| ||
Phive | ~/.phive
|
[251] | 自 0.14.5 版本起,可以移动整个数据目录。
| |
Pidgin | ~/.purple
|
[254] | pidgin --config="$XDG_DATA_HOME"/purple
| |
platformio-core | ~/.platformio
|
[255] | export PLATFORMIO_CORE_DIR="$XDG_DATA_HOME"/platformio
| |
PostgreSQL | ~/.psqlrc , ~/.psql_history , ~/.pgpass , ~/.pg_service.conf |
9.2 | [256] [257] | export PSQLRC="$XDG_CONFIG_HOME/pg/psqlrc" , export PSQL_HISTORY="$XDG_STATE_HOME/psql_history" , export PGPASSFILE="$XDG_CONFIG_HOME/pg/pgpass" , export PGSERVICEFILE="$XDG_CONFIG_HOME/pg/pg_service.conf" 需要创建这两个目录: |
PulseAudio | ~/.esd_auth
|
很可能由 module-esound-protocol-unix.so 模块生成。 可以将其配置为使用其他位置,但更合理的做法是在 /etc/pulse/default.pa 或 "$XDG_CONFIG_HOME"/pulse/default.pa 中注释掉此模块。 | ||
pyenv | ~/.pyenv
|
[258] [259] | export PYENV_ROOT=$XDG_DATA_HOME/pyenv
| |
azure-cli | ~/.azure
|
export AZURE_CONFIG_DIR=$XDG_DATA_HOME/azure
| ||
python | ~/.python_history
|
v3.13 | [260] [261] [262] | 自 3.4 版本起,交互式会话的所有历史记录默认保存到 ~/.python_history ,自 3.13 版本起为 PYTHON_HISTORY 。 对于历史记录文件,Python 不会创建任何缺失的目录,并且仅在其目录存在时才写入文件。 这仍然可以像旧版本一样进行自定义(请参阅此示例),包括使用自定义路径或禁用历史记录保存。PYTHON_HISTORY: |
python-gripAUR | ~/.grip
|
export GRIPHOME="$XDG_CONFIG_HOME/grip"
| ||
python-setuptools | ~/.python-eggs
|
export PYTHON_EGG_CACHE="$XDG_CACHE_HOME"/python-eggs
| ||
racket | ~/.racketrc , ~/.racket |
[263] | export PLTUSERHOME="$XDG_DATA_HOME"/racket
| |
rbenv | ~/.rbenv
|
[264] [265] | export RBENV_ROOT="$XDG_DATA_HOME"/rbenv
| |
nodenvAUR | ~/.nodenv
|
export NODENV_ROOT="$XDG_DATA_HOME"/nodenv
| ||
readline | ~/.inputrc
|
export INPUTRC="$XDG_CONFIG_HOME"/readline/inputrc
| ||
recoll | ~/.recoll
|
export RECOLL_CONFDIR="$XDG_CONFIG_HOME/recoll"
| ||
redis | ~/.rediscli_history , ~/.redisclirc |
export REDISCLI_HISTFILE="$XDG_DATA_HOME"/redis/rediscli_history , export REDISCLI_RCFILE="$XDG_CONFIG_HOME"/redis/redisclirc | ||
ripgrep | [266] | export RIPGREP_CONFIG_PATH=$XDG_CONFIG_HOME/ripgrep/config
| ||
rlwrap | ~/.*_history
|
[267] | export RLWRAP_HOME="$XDG_DATA_HOME"/rlwrap
| |
ruby-bundler | ~/.bundle
|
4a120d8 | Pull request 3545 |
export BUNDLE_USER_CACHE=$XDG_CACHE_HOME/bundle export BUNDLE_USER_CONFIG=$XDG_CONFIG_HOME/bundle/config export BUNDLE_USER_PLUGIN=$XDG_DATA_HOME/bundle 有关更多信息,请参阅 Bundler: bundle config。 |
ruby-solargraphAUR | ~/.solargraph/cache/
|
[268] | export SOLARGRAPH_CACHE=$XDG_CACHE_HOME/solargraph
| |
ruff | .ruff_cache
|
[269] | export RUFF_CACHE_DIR=$XDG_CACHE_HOME/ruff
| |
Rust#Rustup | ~/.rustup
|
[270] | export RUSTUP_HOME="$XDG_DATA_HOME"/rustup
| |
sbt | ~/.sbt
|
[271] | sbt -ivy "$XDG_DATA_HOME"/ivy2 -sbt-dir "$XDG_DATA_HOME"/sbt (注意 [272]) | |
SageMath | ~/.sage
|
export DOT_SAGE="$XDG_CONFIG_HOME"/sage
| ||
GNU Screen | ~/.screenrc
|
export SCREENRC="$XDG_CONFIG_HOME"/screen/screenrc , export SCREENDIR="${XDG_RUNTIME_DIR}/screen" | ||
simplescreenrecorderAUR | ~/.ssr/
|
0.4.3 | [273] | 只有当 $XDG_CONFIG_HOME/simplescreenrecorder/ 已经创建时才会使用它,否则默认使用 ~/.ssr
|
singularity-ceAUR | ~/.singularity
|
3.11.4 | export SINGULARITY_CONFIGDIR="$XDG_CONFIG_HOME/singularity" , export SINGULARITY_CACHEDIR="$XDG_CACHE_HOME/singularity" | |
spacemacs | ~/.spacemacs , ~/.spacemacs.d |
[275] | [276] | 移动 ~/.spacemacs 文件。
其他文件需要像 Emacs 那样配置。 |
SQLite | ~/.sqliterc , ~/.sqlite_history |
3.44.0 用于配置; 历史记录仍然在旧位置 |
XDG_CONFIG_HOME/sqlite3/sqliterc , export SQLITE_HISTORY=$XDG_DATA_HOME/sqlite_history | |
starship | ~/.config/starship , ~/.cache/starship |
[277] (v0.2.0), [278] (v0.45.0) | [279] | export STARSHIP_CONFIG="$XDG_CONFIG_HOME"/starship.toml , export STARSHIP_CACHE="$XDG_CACHE_HOME"/starship |
subversion | ~/.subversion
|
[280] [281][282] | alias svn="svn --config-dir \"$XDG_CONFIG_HOME\"/subversion"
| |
sudo | ~/.sudo_as_admin_successful
|
1.9.6 | [283] [284] | 仅在编译时激活时存在(默认无)。自 1.9.6 版本起,可以在 /etc/sudoers 中使用 admin_flag 参数。 |
task | ~/.task , ~/.taskrc |
在 2.6 版本中完全支持 (注意:必须存在 $XDG_CONFIG_HOME/task/taskrc,否则即使设置了 $XDG_CONFIG_HOME,taskwarrior 也会提议在旧的 $HOME/.taskrc 位置创建示例配置 [285][286]) | ||
本地 TeX Live TeXmf 树,TeXmf 缓存和配置 | ~/texmf , ~/.texlive/texmf-var , ~/.texlive/texmf-config |
export TEXMFHOME=$XDG_DATA_HOME/texmf , export TEXMFVAR=$XDG_CACHE_HOME/texlive/texmf-var , export TEXMFCONFIG=$XDG_CONFIG_HOME/texlive/texmf-config | ||
TeXmacs | ~/.TeXmacs
|
export TEXMACS_HOME_PATH=$XDG_STATE_HOME/texmacs
| ||
tiptopAUR | ~/.tiptoprc
|
这将仍然需要 .tiptoprc 文件。
| ||
ruby-travisAUR | ~/.travis/
|
[287] | export TRAVIS_CONFIG_PATH=$XDG_CONFIG_HOME/travis
| |
uncrustify | ~/.uncrustify.cfg
|
export UNCRUSTIFY_CONFIG="$XDG_CONFIG_HOME"/uncrustify/uncrustify.cfg
| ||
Unison | ~/.unison
|
export UNISON="$XDG_DATA_HOME"/unison
| ||
unitsAUR | ~/.units_history
|
units --history "$XDG_CACHE_HOME"/units_history
| ||
urxvtd | ~/.urxvt/urxvtd-hostname
|
export RXVT_SOCKET="$XDG_RUNTIME_DIR"/urxvtd
| ||
Vagrant | ~/.vagrant.d , ~/.vagrant.d/aliases |
[288] | export VAGRANT_HOME="$XDG_DATA_HOME"/vagrant , export VAGRANT_ALIAS_FILE="$XDG_DATA_HOME"/vagrant/aliases | |
vint | ~/.vintrc.yaml , .vintrc.yml , .vintrc |
0f741ac2c | [289] | 未文档化,但代码表明 $XDG_CONFIG_HOME/.vintrc.yaml 应该可以工作 |
virtualenv | ~/.virtualenvs
|
export WORKON_HOME="$XDG_DATA_HOME/virtualenvs"
| ||
Visual Studio Code | ~/.vscode-oss/
|
[290] | 你可以使用 export VSCODE_PORTABLE="$XDG_DATA_HOME"/vscode ,但这没有文档记录,并且可能会意外崩溃。设置此项会使编辑器在 你也可以使用 | |
VSCodiumAUR | ~/.vscode-oss/
|
[291] [292] | 你可以使用 --extensions-dir 标志运行 VSCodium,例如 vscodium --extensions-dir "$XDG_DATA_HOME/vscode" 。然而,这不会阻止 ~/.vscode-oss/ 目录的创建。 | |
w3m | ~/.w3m
|
26284ff | [293] [294] | export W3M_DIR="$XDG_STATE_HOME/w3m"
|
wakatime | ~/.wakatime.cfg , ~/.wakatime.data , ~/.wakatime.db , ~/.wakatime.log |
export WAKATIME_HOME="$XDG_CONFIG_HOME/wakatime"
该目录需要手动创建
| ||
wget | ~/.wgetrc , ~/.wget-hsts |
export WGETRC="$XDG_CONFIG_HOME/wgetrc" 并添加以下内容作为 wget 的别名:wget --hsts-file="$XDG_CACHE_HOME/wget-hsts" ,或者使用绝对路径设置 hsts-file 变量,因为 wgetrc 不支持环境变量: echo hsts-file \= "$XDG_CACHE_HOME"/wget-hsts >> "$XDG_CONFIG_HOME/wgetrc" | ||
wine | ~/.wine
|
[295] | Winetricks 使用下面的类似 XDG 的位置进行 WINEPREFIX 管理
| |
x3270AUR | ~/.x3270pro , ~/.c3270pro |
export X3270PRO="$XDG_CONFIG_HOME"/x3270/config , export C3270PRO="$XDG_CONFIG_HOME"/c3270/config App 还会创建 | ||
xbindkeys | ~/.xbindkeysrc
|
xbindkeys -f "$XDG_CONFIG_HOME"/xbindkeys/config
| ||
xorg-xauth | ~/.Xauthority
|
export XAUTHORITY="$XDG_RUNTIME_DIR"/Xauthority
请注意,LightDM 不允许您更改此变量。如果您仍然更改它,您将无法登录。请使用 startx 代替,或者配置 LightDM。根据 [296],SLiM 硬编码了 SDDM Xauthority 路径可以在其自己的配置文件中更改,如下所示。不幸的是,它是相对于主目录的。 /etc/sddm.conf.d/xauth-path.conf [X11] UserAuthFile=.Xauthority 在 Wayland 上,覆盖此项可能会导致 Xorg 程序无法连接到 Xwayland 服务器。例如,kwin 和 mutter 都使用随机名称,因此无法将其设置为静态值。 | ||
xinit | ~/.xinitrc , ~/.xserverrc |
[297] | export XINITRC="$XDG_CONFIG_HOME"/X11/xinitrc , export XSERVERRC="$XDG_CONFIG_HOME"/X11/xserverrc | |
xorg-xrdb | ~/.Xresources , ~/.Xdefaults |
最终,您应该使用 Xresources ,并且由于这些资源是通过 xrdb 加载的,因此您可以指定路径,例如 xrdb -load ~/.config/X11/xresources 。 | ||
Xorg | ~/.xsession , ~/.xsessionrc , ~/.Xsession , ~/.xsession-errors |
这些可以作为 Xorg 初始化脚本 (~/.xinitrc ) 或 Xsession 启动脚本 (通常基于 /etc/X11/Xsession ) 的一部分添加。根据您配置 # xsession start script USERXSESSION="$XDG_CACHE_HOME/X11/xsession" USERXSESSIONRC="$XDG_CACHE_HOME/X11/xsessionrc" ALTUSERXSESSION="$XDG_CACHE_HOME/X11/Xsession" ERRFILE="$XDG_CACHE_HOME/X11/xsession-errors" 与此表中的大多数其他示例不同,实际的 X11 初始化脚本在不同安装之间差异很大。 | ||
z | ~/.z
|
[298] | export _Z_DATA="$XDG_DATA_HOME/z"
| |
yarn | ~/.yarnrc , ~/.yarn/ , ~/.yarncache/ , ~/.yarn-config/ |
2d454b5 | [299] [300] | alias yarn='yarn --use-yarnrc "$XDG_CONFIG_HOME/yarn/config"'
|
zsh | ~/.zshrc , ~/.zprofile , ~/.zshenv , ~/.zlogin , ~/.zlogout , ~/.histfile , ~/.zcompdump , ~/.zcompcache |
[301] | export ZDOTDIR=$HOME/.config/zsh 以避免在您的主目录中需要大多数 zsh 点文件。"$XDG_CONFIG_HOME"/zsh/.zshrc # Use XDG dirs for completion and history files [ -d "$XDG_STATE_HOME"/zsh ] || mkdir -p "$XDG_STATE_HOME"/zsh HISTFILE="$XDG_STATE_HOME"/zsh/history [ -d "$XDG_CACHE_HOME"/zsh ] || mkdir -p "$XDG_CACHE_HOME"/zsh zstyle ':completion:*' cache-path "$XDG_CACHE_HOME"/zsh/zcompcache compinit -d "$XDG_CACHE_HOME"/zsh/zcompdump-$ZSH_VERSION 最后,如果您使用 zsh 作为登录 shell,并选择依赖启动文件 |
硬编码
应用程序 | 旧路径 | 讨论 | 注释 |
---|---|---|---|
adb & Android Studio | ~/.android/
|
尽管表面上看起来并非如此,但 adb 将始终生成 ~/.android/adbkeys ,尽管它也会尝试 ADB_VENDOR_KEYS 中的密钥。 | |
aegisub | ~/.aegisub/
|
[302] | |
alpine | ~/.pinerc , ~/.addressbook , ~/.pine-debug[1-4] , ~/.newsrc , ~/.mailcap , ~/.mime.types , ~/.pine-interrupted-mail |
alias alpine="alpine -p $XDG_CONFIG_HOME/alpine/pinerc"
在上面的配置文件中,可以使用 | |
aMule | ~/.aMule
|
[303] [304] [305] | |
anthy | ~/.anthy
|
[306] | |
Apache Directory Studio | ~/.ApacheDirectoryStudio
|
||
ARandR | ~/.screenlayout
|
[307] | |
Arduino | ~/.arduino15 , ~/.jssc |
不会修复 | |
arduino-cli | ~/.arduino15/
|
[308] | mv ~/.arduino15 $XDG_CONFIG_HOME/arduino15
在文档 这里 中提到的 arduino-cli.yaml 中指定 Arduino CLI 使用的新目录。 |
ASP.NET Core | ~/.aspnet
|
[309] | |
Avidemux | ~/.avidemux6
|
[310] | |
Bash | ~/.bashrc , ~/.bash_history , ~/.bash_profile , ~/.bash_login , ~/.bash_logout |
108134 10431 | mkdir -p "$XDG_STATE_HOME"/bash
|
Berkshelf | ~/.berkshelf/
|
||
celestiaAUR | ~/.celestiarc
|
||
chatty | ~/.chatty/
|
[311] | |
cmake | ~/.cmake/
|
[312] | 用于用户包注册表 ~/.cmake/packages/<package> ,在 cmake-packages(7) § User Package Registry 和 Package registry wiki 页面 中详细介绍。看起来它是硬编码的,例如在 cmFindPackageCommand.cxx 中。 |
cmus | ~/.config/cmus
|
[313] | [314] |
Cinnamon | ~/.cinnamon/
|
[315] | |
conanAUR | ~/.conan/
|
[316] | export CONAN_USER_HOME="$XDG_CONFIG_HOME" 将设置创建 .conan/ 的目录。它旨在简化 CI,但也可以在此处使用。 |
cryptomatorAUR | ~/.Cryptomator
|
[317] | |
cVim[死链 2022-09-23 ⓘ] | ~/.cvimrc
|
[318] | |
darcs | ~/.darcs/
|
[319] | |
dart | ~/.dart , ~/.dart-tool , ~/.dartServer |
[320] | |
dbus | ~/.dbus/
|
[321] | 考虑使用 dbus-broker,因为它不会创建或使用此目录。 |
devede | ~/.devedeng
|
硬编码在此 | |
Dia | ~/.dia/
|
||
dig | ~/.digrc
|
||
dotnet-sdk | ~/.dotnet/ , ~/.templateengine |
[322] | |
dropbox | ~/.dropbox/
|
||
Eclipse | ~/.eclipse/
|
[323] | 选项 -Dosgi.configuration.area=@user.home/.config/.. 会覆盖,但必须添加到 "$ECLIPSE_HOME"/eclipse.ini" 而不是命令行,这意味着您必须具有对 $ECLIPSE_HOME 的写入权限。(Arch Linux 在 /usr/bin/eclipse 中硬编码了 $ECLIPSE_HOME ) |
emacs-slime | ~/.slime/
|
[324] | |
equalxAUR | ~/.equalx/
|
[326] | |
Fetchmail | ~/.fetchmailrc
|
||
Firefox | ~/.mozilla/
|
[327] [328] | |
Flatpak | ~/.var/
|
[329] [330] 不会修复 | |
freesweep | ~/.sweeprc
|
[331] | |
gftpAUR | ~/.gftp/
|
[332] | gftp 计划遵循 XDG 规范。 |
gitkrakenAUR | ~/.gitkraken/
|
[333] | |
GoldenDict | ~/.goldendict/
|
[334] | |
gphoto2 | ~/.gphoto
|
[335] | |
gramps | ~/.gramps/
|
[336] | 2022 支持 XDG 基本目录规范(用于下一个版本 Gramps 5.2) - 补丁 https://github.com/gramps-project/gramps/pull/1368 |
groovy | ~/.groovy/
|
||
grsync | ~/.grsync/
|
[337] | |
google-cloud-cliAUR | ~/.gsutil/
|
[338] | |
gtk-recordMyDesktop | ~/.gtk-recordmydesktop
|
||
hplip | ~/.hplip/
|
[339] | |
hydrogen | ~/.hydrogen/
|
[340] | |
idris | ~/.idris
|
[341] | |
itch-setup-binAUR | ~/.itch
|
不会修复 | 您可以在应用程序设置中移动游戏安装位置。 |
Jmol | ~/.jmol/
|
[342] | |
lbdbAUR | ~/.lbdbrc, ~/.lbdb/
|
[343] | |
llpp | ~/.config/llpp.conf
|
[344][死链 2022-09-23 ⓘ] (仓库已被删除) | 在 3ab86f0 中添加,但随后在 old:e253c9f1/new:e253c9f1 中恢复 |
Java OpenJDK | ~/.java/fonts
|
[345] | export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java
|
Java OpenJFX | ~/.java/webview
|
||
jgmenu | ~/.jgmenu-lockfile
|
[346] [347] | |
jitsi-meetAUR | ~/Downloads
|
libjitsi#518 | 下载目录硬编码为 ~/Downloads 而不是 XDG_DOWNLOAD_DIR (来自 XDG 用户目录) |
julia | ~/.juliarc.jl , ~/.julia_history , ~/.julia |
[348] [349] | 尾部的 :$JULIA_DEPOT_PATH 是必需的。请参阅 [350]export JULIA_DEPOT_PATH="$XDG_DATA_HOME/julia:$JULIA_DEPOT_PATH" export JULIAUP_DEPOT_PATH="$XDG_DATA_HOME/julia" |
kotlin | ~/.kotlinc_history
|
相关的 Konan 问题:[351] | |
Kubernetes | ~/.kube/
|
[352][353][354] |
export KUBECONFIG="$XDG_CONFIG_HOME/kube" export KUBECACHEDIR="$XDG_CACHE_HOME/kube" |
elan-leanAUR | ~/.elan
|
[355] | |
librewolfAUR | ~/.mozilla
|
[356] | |
lldb | ~/.lldb , ~/.lldbinit |
||
LMMS | ~/.lmmsrc.xml
|
[357] | |
maliit-keyboard | ~/.presage
|
Maliit 键盘使用一个名为 Presage 的旧的、未维护的库,该库创建 ~/.presage 。在 2024 年,Maliit 键盘放弃了对 Presage 的依赖,但截至 2.3.1 版本,这尚未包含在发布版本中。在此期间,编译 maliit-keyboard 的主分支。 | |
man-db | ~/.manpath
|
[358] | |
mathomatic[死链 2024-10-12 ⓘ] | ~/.mathomaticrc , ~/.matho_history |
历史记录可以通过使用 rlwrap mathomatic -r 和适当设置的 RLWRAP_HOME 环境变量来移动。 | |
MediaWiki | ~/.mweval_history 和 ~/.mwsql_history (如果定义了 $HOME) |
如果未定义 $HOME:[MediaWiki]/maintenance/.mweval_history 和 [MediaWiki]/maintenance/.mwsql_history 。
| |
Minecraft | ~/.minecraft/
|
不会修复 | |
minicom | ~/.minirc.dfl
|
上游有一个 TODO 条目,用于支持 ~/.config/minicom 下的配置文件。[359] | |
Mono | ~/.mono/
|
[360] | |
mongodb | ~/.mongorc.js , ~/.dbshell |
[361] | 这个 Stack Overflow 帖子 建议使用命令行开关 --norc 进行部分解决方法。 |
~/.netrc
|
像 ~/.ssh 一样,许多程序都期望此文件在此处。这些程序包括 curl (CURLOPT_NETRC_FILE ), ftp (NETRC ), s-nail (NETRC ) 等。虽然其中一些提供了替代的可配置位置,但许多没有,例如 w3m、wget 和 lftp。 | ||
nim | ~/.nimble
|
[362] | Nimble 将在启动时尝试加载 ~/.config/nimble/nimble.ini ,并在那里设置 nimbleDir 。您还需要更改 Nim 编译器配置文件中的 nimblepath 。 |
Networkmanager-openvpn | ~/.cert/nm-openvpn
|
[364] | |
nyx | ~/.nyx
|
该项目目前未维护 | |
oh-my-bash-gitAUR | ~/.osh-update
|
||
Ollama | ~/.ollama
|
[365] | 模型位置可以使用以下命令设置
来源: [366] |
openshot | ~/.openshot_qt
|
[367] [368] | |
OpenSSH | ~/.ssh
|
不会修复 | 许多 ssh 守护程序和客户端(例如 DropBear 和 OpenSSH)都假定它存在。 |
palemoon | ~/.moonchild productions
|
[369] | |
parsec-binAUR | ~/.parsec
|
||
pcsxrAUR | ~/.pcsxr
|
存在 -cfg 标志,但只能相对于 ~/.pcsxr 设置。 | |
perf | ~/.debug
|
硬编码在 tools/perf/util/config.c 中。提交:[370] | |
perl | ~/.cpan , ~/perl5 |
[371] | Perl5 的 CPAN 期望 ~/.cpan |
phoronix-test-suiteAUR | ~/.phoronix-test-suite
|
[372] | 部分解决方法:[373] |
PHP | ~/.php_history
|
[374] | PHP 应用程序可以使用 readline_read_history 和 readline_write_history 读取/写入自定义文件。 |
portfolio-performance-binAUR | ~/.PortfolioPerformance/
|
[375] | |
各种shell 和 显示管理器 | ~/.profile
|
||
psensor | ~/.psensor
|
[376] | |
pulumi | ~/.pulumi
|
[377] | |
python-tensorflow | ~/.keras
|
[378] | 问题在于 tf.keras 模块 |
quilt | ~/.quiltrc
|
如果 ~/.quiltrc 不存在,则回退到 /etc/quilt.quiltrc 。 | |
Qt Designer | ~/.designer
|
[379] | |
R | ~/.Rprofile, ~/.Rdata, ~/.Rhistory
|
R_HOME_USER="$HOME/.config/R" R_PROFILE_USER="$HOME/.config/R/profile" R_HISTFILE="$HOME/.config/R/history" | |
RedNotebook | ~/.rednotebook
|
[380] | |
Remarkable | ~/.remarkable
|
||
renderdoc | ~/.renderdoc
|
不会修复 | |
Ren'Py | ~/.renpy
|
不会修复 | 最新版本尊重 RENPY_PATH_TO_SAVES 环境变量。因此,您可以设置它来更改某些游戏的路径。export RENPY_PATH_TO_SAVES="$XDG_DATA_HOME/renpy" |
repo | ~/.repoconfig
|
[381] | |
rpm | ~/.rpmrc ~/.rpmmacros |
积压 | 解决方法是使用 --rcfile 和 --macros,但这会带来副作用。 |
SANE | ~/.sane/
|
scanimage 在那里创建一个 .cal 文件 | |
sbcl | ~/.sbclrc
|
/etc/sbclrc (require :asdf) (setf sb-ext:*userinit-pathname-function* (lambda () (uiop:xdg-config-home #P"sbcl/sbclrc"))) 请注意,这需要 root 权限,并将更改所有用户的 | |
SeaMonkey | ~/.mozilla/seamonkey
|
[382] | |
Signal Desktop | [383] | 目前将消息保存在 ~/.config/Signal 中 | |
Snap | ~/snap/
|
[384] | |
Solfege | ~/.solfege , ~/.solfegerc , ~/lessonfiles |
[385] | |
SpamAssassin | ~/.spamassassin
|
||
Steam | ~/.steam , ~/.steampath , ~/.steampid |
[386] | 许多游戏引擎(Unity 3D,Unreal)都遵循该规范,但随后各个游戏发行商在 Steam Auto-Cloud 中硬编码了路径,导致游戏存档同步到错误的目录。 |
stellariumAUR | ~/.stellarium/
|
[387] | |
stremioAUR | ~/.stremio-server/
|
[388] | |
sts4 | ~/.sts4
|
[389] | 传递 JVM 参数 -Dlanguageserver.boot.symbolCacheDir=$XDG_CACHE_HOME/sts4/symbolCache |
python-streamlitAUR | ~/.streamlit
|
[390] | |
sweethome3d | ~/.eteks/sweethome3d
|
[391] | |
python-sympy | ~/.sympy-history
|
[392] | |
TeamSpeak | ~/.ts3client
|
export TS3_CONFIG_DIR="$XDG_CONFIG_HOME/ts3client"
| |
terraform | ~/.terraform.d/
|
[393] | |
texinfo | ~/.infokey
|
info --init-file "$XDG_CONFIG_HOME/infokey"
| |
Thunderbird | ~/.thunderbird/
|
[394] | |
tllocalmgr | ~/.texlive
|
||
urlviewAUR | ~/.urlview
|
使用 fork urlview-xdg-gitAUR 代替。该 fork 将使用 XDG_CONFIG_HOME/urlview/config | |
viberAUR | ~/.ViberPC
|
||
vimperator | ~/.vimperatorrc
|
[395] | export VIMPERATOR_INIT=":source $XDG_CONFIG_HOME/vimperator/vimperatorrc"
|
visidata | ~/.visidata
|
[396] | |
wpa_cli | ~/.wpa_cli_history
|
||
wegoAUR | ~/.wegorc
|
[397] | |
x2goclientAUR | ~/.x2goclient
|
alias x2goclient="x2goclient --home=$HOME/.config"
| |
xpdf | ~/.xpdfrc
|
||
xrdpAUR | ~/thinclient_drives
|
对于目录 ~/thinclient_drives ,您可以考虑编辑 /etc/xrdp/sesman.ini 并按照示例配置修改 [Chansrv] 部分。 | |
XVim2 | ~/.xvimrc
|
[398] | |
YARD | ~/.yard
|
[399] | 如果有人想实现它,将接受 Pull Request。 |
zenmap nmap | ~/.zenmap
|
[400] [401] | |
zoomAUR | ~/.zoom
|
不推荐:设置以下变量会移动 .zoom 的内容,但目录本身始终会被创建。此外,它会破坏某些功能,例如启动会议。export SSB_HOME="$XDG_DATA_HOME"/zoom | |
zotero-binAUR | ~/.zotero ~/Zotero |
[402] | ~/Zotero 数据的默认位置可以从 GUI 更改:编辑 -> 首选项 -> 高级 -> 数据目录位置 -> 自定义 |
工具
工具 xdg-ninjaAUR 检测 $HOME
中不需要的文件/目录,这些文件/目录可以移动到 XDG 基本目录。有关示例,请参见 README。
工具 boxxy 可以用于包装不遵守 XDG 基本目录的应用程序,并重定向任何不需要的文件。
工具 ephemeral 可用于链接通常位于 XDG_CONFIG_HOME
中的 chromium/electron 缓存到 XDG_CACHE_HOME
中的位置。
库
- C++
- xdg-utils-cxx
- xdgpp
- Go
- adrg/xdg
- go-appdir (已弃用,已存档)
- configdir (已弃用,已废弃)
- kyoh86/xdg (已弃用,已存档)
- Haskell
- 自 1.2.3.0 ab9d0810ce 起,正式在 directory 中。
- xdg-basedir
- JVM
- Java, Kotlin, Clojure, Scala, ...
- directories-jvm
- Perl
- File-BaseDir
- Python
- pyxdg
- appdirs (已废弃)
- platformdirs
- Ruby
- bkuhlmann/xdg
- rubyworks/xdg (已弃用,已废弃)
- Rust
- directories-rs
- rust-xdg
- Swift
- swift-xdg
- Vala
- 通过 GLib.Environment 提供内置支持。
- 请参阅
get_user_cache_dir
,get_user_data_dir
,get_user_config_dir
等。
技巧与窍门
隐藏不需要的目录
对于无法重定位的目录,某些桌面环境(例如 KDE)允许您隐藏它们
$ echo path >> ~/.hidden
path 是文件/目录的路径,相对于 .hidden
的父目录。
另请参阅
- GNOME 目标:XDG 基本目录规范使用
- Rob Pike:“点文件”被隐藏是一个 UNIXv2 错误.
- systemd-path(1)
- file-hierarchy(7)
- Grawity 关于点文件的笔记.
- Grawity 关于环境变量的笔记.
- ploum.net:修改您的应用程序以使用 XDG 文件夹.
- PCGamingWiki 尝试记录 Linux PC 游戏是否遵循 XDG 基本目录规范。