Wine автоматически добавляет определенные mimetypes и ассоциации файлов (например, notepad.exe для файлов .ini). Уже есть ответ, который объясняет, как удалить эти ассоциации.
Но как можно помешать Wine добавлять их снова и снова?
Отключение winemenubuilder.exe в целом предотвратит захват вином ваших файловых ассоциаций, но также не позволит создавать пункты меню для недавно установленного программного обеспечения, что может быть нежелательным поведением. Лучшее решение заключается в следующем:
Удалить существующие винные угоны ( из FAQ по вину ):
rm -f ~/.local/share/mime/packages/x-wine*
rm -f ~/.local/share/applications/wine-extension*
rm -f ~/.local/share/icons/hicolor/*/*/application-x-wine-extension*
rm -f ~/.local/share/mime/application/x-wine-extension*
Отредактируйте /usr/share/wine/wine.inf
(как root), найдите [Services]
раздел:
[Services]
HKLM,%CurrentVersion%\RunServices,"winemenubuilder",2,"%11%\winemenubuilder.exe -a -r"
...
и отредактируйте его так, чтобы оно гласило:
[Services]
HKLM,%CurrentVersion%\RunServices,"winemenubuilder",2,"%11%\winemenubuilder.exe -r"
...
(а именно для запуска winemenubuilder.exe
без -a
выключателя). Это предотвратит обновление ассоциаций файлов в новых учетных записях пользователей (или в новых учетных записях WINEPREFIX
).
Отредактируйте ваш $WINEPREFIX/system.reg
файл (если он существует) аналогичным образом. Где это говорит
[Software\\Microsoft\\Windows\\CurrentVersion\\RunServices]
"winemenubuilder"="C:\\windows\\system32\\winemenubuilder.exe -a -r"
удалите -a
выключатель. (По умолчанию WINEPREFIX=$HOME/.wine
.)
Это предотвратит кражу вином ваших любимых mimeapps, но winemenubuilder все равно будет работать и создавать удобные записи для вашего программного обеспечения Windoze.
/opt/wine-staging/share/wine/wine.inf
. Если файл находится в нестандартном месте, запустите,locate wine.inf
чтобы найти его.С http://wiki.winehq.org/FAQ :
Пользователи, которые не хотят, чтобы установщик приложения Windows изменял ассоциации типов файлов, добавлял пункты меню или создавал ссылки на рабочем столе, может отключить эту функцию
winemenubuilder.exe
. Есть несколько способов сделать это:В winecfg : перед запуском установщика запустите
winecfg
. Перейдите на вкладку «Библиотеки» и введитеwinemenubuilder.exe
в поле «Новые изменения» (его нет в раскрывающемся списке). Нажмите «Добавить», затем выберите его в поле «Существующие переопределения». Нажмите «Изменить» и выберите «Отключить» из списка, затем нажмите «Применить».Файл реестра: если вам нужно применять настройки много раз (например, каждый раз, когда вы воссоздаете префикс Wine), этот подход может быть более удобным. Создайте текстовый файл с именем .reg (например,
disable-winemenubuilder.reg
), содержащий следующее:Чтобы применить настройку, запустите
regedit disable-winemenubuilder.reg
Переменная среды: установите переменную среды WINEDLLOVERRIDES при запуске установщика, например,
Отключение
winemenubuilder.exe
заставит винные программы печатать ошибки, которые они не могут найти (хотя эти ошибки, похоже, не мешают работе программы).Альтернативный подход, который позволяет избежать ошибок, состоит в том, чтобы заменить его программой «ничего не делать». Скомпилируйте следующее с gcc MinGW под wine и поместите исполняемый файл в
C:\Windows\System32\winemenubuilder.exe
:Затем выполните ту же процедуру, что и выше, но установите
winemenubuilder.exe
«родной» вместо «отключить».источник
Так как это первый хит в гугле. В Wine FAQ теперь перечислены альтернативные методы для более новых версий вина.
«Начиная с wine-3.14, у winecfg есть флажок« Управление сопоставлениями файлов »на вкладке« Интеграция с рабочим столом ». Проверка этого позволяет winemenbuilder создавать сопоставления файлов, а снятие флажка отключает такое поведение».
источник