在进行操作系统升级(opensuse 飞跃 15.2 -> 15.3)后,我的 XDG 设置坏了。除其他外,我的XDG_DATA_DIR
env var 使用两个不同的值分隔符::
和
.
当前 XDG_DATA_DIRS 值:
/home/bernard/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop /var/lib/snapd/desktop
在寻找填充此变量的代码时,我遇到了 中的脚本/etc/profile.d/
,但从调试该脚本来看snapd.sh
,它似乎并没有导致缺陷。我修改并在脚本开始和脚本结束时snapd.sh
将变量打印到 a中。/tmp/var
通过观察结果,看起来这个脚本没有改变XDG_DATA_DIRS
.
快照版本:2.54.1
鱼版:3.3.1
我不知道这个点:我认为你必须深入研究哪个进程正在添加它。
用空格分隔的最后一个目录元素是有说服力的。似乎您正在向 fish 中的 XDG_DATA_DIRS 添加一个目录,并期望子进程获得一个以冒号分隔的值。fish 仅对PATH 变量自动执行此操作。
在您的鱼配置中,在对该变量进行任何操作之前尝试此操作: