winebottler 第一次安装是正常的,删了之后,再装winetricks就出问题了,列表只有一行。
仔细检查源码发现,winetricks依赖一个列表文件~/Library/Application Support/Wine/winetricks.plist,它也只有一个adobeair的列表,所以它生成出了问题。
生成它的代码在Wine.app下的Contents/Frameworks/WBottler.framework/Versions/A/Resources/winetricksextract.sh中。
这个文件用/Library/Application Support/Wine/winetricks生成了一个/tmp/winetricks_verbs.sh文件用以生成winetricks.plist,在/Library/Application Support/Wine/winetricks中没发现什么问题,但生成的winetricks_verbs.sh却出现了不规则的代码,估计作者写的sed的正则表达式某些情况没有考虑进去,导致了这个意外,影响了后面脚本的执行,所以最后生成的列表就只有一行。
所以最简单的方法就是删去这行不规则的代码,于是在winetricksextract.sh这个文件中在合适的位置加上
sed -i "" '140d' /tmp/winetricks_verbs.sh
事情就搞定了
我加在执行之前
这个winetricksextract.sh在三个地方是相同的文件,都要改,分别是:
winebottler.app/Contents/Resources/Winetricks.app/Contents/Frameworks/WBottler.framework/Versions/A/Resources/winetricksextract.sh
winebottler.app/Contents/Frameworks/WBottler.framework/Versions/A/Resources/winetricksextract.sh
Wine.app/Contents/Frameworks/WBottler.framework/Versions/A/Resources/winetricksextract.sh
好了,又可以愉快的玩耍了