如果我没有这样的环境变量,非标准 WINEPREFIX 从何而来?

如果我没有这样的环境变量,非标准 WINEPREFIX 从何而来?

当我调用mimeopen --debug prg.exe它时会打印:

Opening "prg.exe" with A Wine application  (application/x-ms-dos-executable)
wine: invalid directory "/home/myusername/0_home_extension/temp/x" in WINEPREFIX: not an absolute path

但我肯定没有设置 WINEPREFIX 环境变量。那么这个/home/myusername/0_home_extension/temp/x值从哪里来的呢?

答案1

WINEPREFIX 可以是环境变量,但也可以不存在,因为它有一个默认值。

《葡萄酒使用者指南》称

指定要使用的配置目录的位置。指定时请使用完整的 unix 样式路径。默认的 wineprefix 是 $HOME/.wine。

因此,如果未定义 WINEPREFIX,则意味着$HOME/.wine

但是,在您的情况下,其值很可能是由 添加的mimeopen。程序可以启动子程序并定义要使用的环境变量。在大多数情况下,程序只是让子程序继承自己的环境变量,但有些程序会添加一些变量。

有可能是因为您没有指定 WINEPREFIX,所以 mimeopen 创建了自己的内部变量,但未能很好地完成任务。也有可能这只是 mimeopen 的一个 bug。

相关内容