Miranda под Wine: Difference between revisions

From Miranda NG
Jump to navigation Jump to search
No edit summary
No edit summary
 
(48 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{PageLang|ru}}{{Languages/Wine}}
{{PageLang|ru}}{{Languages/Wine}}


== Запуск под Wine ==
Хотя Миранда изначально предназначена для работы только в Windows, тем не менее, возможен её запуск в Linux под Wine.
=== Создаём отдельный профиль Wine для Miranda NG ===
 
{{TNT|Note|Описанные ниже действия испробованы в среде Ubuntu 21.10.}}
 
{{TNT|Important|Архитектура Миранды (32- или 64-разрядная) должна совпадать с архитектурой дистрибутива Linux. В дальнейших примерах предполагается, что архитектура 64-разрядная.}}
 
== Настройки OS ==
=== BSD ===
Для работы {{Plugin|CrashDumper}} нужно разрешить отладку непривилегированным пользователям, для этого в <tt>sysctl</tt> необходимо выставить:
<pre style="overflow:auto;">
security.bsd.unprivileged_proc_debug=1
</pre>
 
=== Linux ===
{{TNT|Note|Начиная с Wine 7.0, Миранда корректно работает под wine-stable. Если вы используете более раннюю версию Wine, установите wine-staging.}}
 
== Создаём отдельный профиль Wine для Miranda NG ==
Создаём отдельную папку, где будем хранить профиль Wine для работы с Мирандой:
Создаём отдельную папку, где будем хранить профиль Wine для работы с Мирандой:
<pre style="overflow:auto;">
<pre style="overflow:auto;">
Line 12: Line 27:
</pre>
</pre>


 
== Инициализируем профиль Wine ==
=== Инициализируем профиль Wine ===
<pre style="overflow:auto;">
<pre style="overflow:auto;">
env WINEPREFIX=$HOME/.wines/miranda/ wine winecfg
env WINEPREFIX=$HOME/.wines/miranda/ wine winecfg -v 2003
</pre>
</pre>
* Отказываемся от того, что предлагают установить (работать будет и без этого).
* Отказываемся от того, что предлагают установить (работать будет и без этого).
* На вкладке '''Applications''' выбираем Windows XP.
* Закрываем — {{Button|OK}}.
* Закрываем — OK.


== Устанавливаем Miranda NG ==
* [[Downloads|Загружаем]] архив, содержащий портативную 64-разрядную Miranda NG.
* В папку <tt>$HOME/.wines/miranda/drive_c/Miranda_NG/</tt> копируем файлы из архива.


=== Устанавливаем в профиль Wine библиотеки от Windows ===
== Запускаем ==
В папку <tt>$HOME/.wines/miranda/drive_c/windows/system32/</tt> копируем следующие dll от Windows XP x32 / Windows 2003 x32 (Библиотеки от Windows 7 x32 и выше не проверялись):
Скрипт для запуска (можно сохранить как <tt>$HOME/.wines/miranda/drive_c/Miranda_NG/Miranda32.sh</tt>):
* msftedit.dll
<pre style="overflow:auto;">
* msls31.dll
#!/bin/sh
* riched20.dll
cd $HOME/.wines/miranda/drive_c/Miranda_NG/
* riched32.dll
* secur32.dll


Снова запускаем конфигуратор:
env WINEPREFIX=$HOME/.wines/miranda/ wine Miranda64.exe
<pre style="overflow:auto;">
env WINEPREFIX=$HOME/.wines/miranda/ wine winecfg
</pre>
</pre>
* На вкладке '''LIBRARIES''' выбираем файлы, которые залили выше, и добавляем.
* На вкладке '''DESKTOP INTEGRATIONS''' в разделе '''Folder''' проходим по всем пунктам и снимаем галочки.
* На вкладке '''Drives''' выбираем диск Z: и прописываем путь: <tt>/home/USER/.win_soft/Miranda_NG/</tt>
* Закрываем — OK.


Запускаем скрипт и задаём желаемое имя базы. Отметьте «Запуск в служебном режиме: Import», если у вас уже есть база (например, перенесённая с Windows) и вы хотите и дальше её использовать. Нажимаем {{Button|Создать}} (и выполняем импорт из старой базы, если выбирали импорт на предыдущем шаге).


=== Устанавливаем Miranda NG ===
== Дополнительные настройки Wine ==
В папку <tt>$HOME/.win_soft/Miranda_NG/</tt> копируем Miranda NG и там же размещаем профили пользователей, например в папке <tt>Profiles</tt>.
Эти настройки не обязательны, но могут повысить комфорт.


Вносим правки в файл [[mirandaboot.ini/ru|mirandaboot.ini]], ключ <tt>ProfileDir=</tt>
=== Открытие папок в системном файловом менеджере ===
По умолчанию wine открывает папку в своём проводнике, это не всегда удобно, например при использовании плагина {{Plugin|MenuEx|MenuItemEx}} удобнее просматривать полученные от контакта файлы через системный файловый менеджер.


* Создаём файл <tt>$HOME/.wines/miranda/drive_c/windows/open_on_host_sys.sh</tt> с таким содержанием:
<pre style="overflow:auto;">
#!/bin/sh


=== Запускаем ===
xdg-open "`winepath -u \"$1\"`"
<pre style="overflow:auto;">
env WINEPREFIX=$HOME/.wines/miranda/ LANG=ru_RU.UTF-8 wine $HOME/.win_soft/Miranda_NG/Miranda32.exe
</pre>
</pre>
* Помечаем его как исполняемый: <tt>chmod +x $HOME/.wines/miranda/drive_c/windows/open_on_host_sys.sh</tt>
* Запускаем редактор реестра: <tt>env WINEPREFIX=$HOME/.wines/miranda/ wine regedit</tt>
* В разделе: <tt>HKEY_CLASSES_ROOT\folder\shell\open</tt> создаём ключ (подраздел): <tt>command</tt>
* В созданном разделе <tt>command</tt> устанавливаем значение по умолчанию: <tt>cmd /c start /b /min c:\windows\open_on_host_sys.sh "%1"</tt>


Без <tt>"cmd /c start"</tt> у меня скрипты не исполнялись.


== Особенности под Wine ==
Если <tt>xdg-open</tt> в системе нет, можно прописать название файлового менджера который вы используете и желаемые ключи запуска, например: <tt>thunar</tt>. В случае использования <tt>xdg-open</tt> аналогичным образом можно настроить открытые любых других типов файлов программами используемыми по умолчанию в системе.
Проверена работа под Wine Миранды со следующими плагинами:
{{PluginsUnderWine|Нажмите, чтобы показать/скрыть список}}
 
=== Что не работает ===
* SSL-соединения
* Копирование текста из {{Plugin|TabSRMM}} (в {{Plugin|HistoryPP|History++}} работает)
* Иногда язык ввода сам переключается на английский, когда окно TabSRMM неактивно.
* Некоторые настройки невозможно изменить/увидеть: списки, в которых галочки и иконки рядом, например: ''Список контактов → Экстра значки'' (Contact list → Extra icons)
* При поступлении сообщений индикаторы клавиатуры не мигают ({{Plugin|KeyboardNotify}})
* Папки с файлами контактов открываются в вайновском убогом проводнике.
* Меню не всегда срабатывают: если вылезает всплывающая подсказка, то они закрываются.
* Темы оформления окон из семёрки, только классический вид Windows XP.
* Обилие анимированных смайлов сильно нагружает CPU.
* У многих смайлов образовался фон, в Windows он был прозрачным, здесь белый.
* Скорее всего, что-то ещё :)
 
=== Что работает ===
* Всё остальное


=== Документация ===
* [https://wiki.winehq.org/FAQ Wine FAQ]{{RefLang|en}}
* [https://wiki.winehq.org/Winepath winepath]{{RefLang|en}}
* [https://askubuntu.com/questions/51325/how-to-associate-all-file-types-within-wine-with-its-corresponding-native-applic Ask Ubuntu: How to associate all file types within Wine with its corresponding native application?]{{RefLang|en}}
* [https://stackoverflow.com/questions/6004070/execute-shell-commands-from-program-running-in-wine Stack Overflow: Execute Shell Commands from Program running in WINE]{{RefLang|en}}
* [https://bugs.winehq.org/show_bug.cgi?id=12464 ShellExecute does not integrate well with external handlers]{{RefLang|en}}


== Документация к Wine ==
== Документация к Wine ==
* [http://wine-wiki.org/index.php/Advanced_Wine_User_Information Advanced Wine User Information] (англ.)
* [https://ru.wikibooks.org/wiki/LOR-FAQ-Wine FAQ по Wine в Викиучебнике]
* [https://ru.wikibooks.org/wiki/LOR-FAQ-Wine FAQ по Wine в Викиучебнике]
* [http://wiki.winehq.org/winetricks_ru Winetricks — скрипт для загрузки и установки распространённых исполняемых библиотек]
* [https://web.archive.org/web/20151127234841/http://wine-wiki.org:80/index.php/Advanced_Wine_User_Information Advanced Wine User Information]{{RefLang|en}}
 
* [http://www.kegel.com/wine/cl-howto-win7sdk.html Using Microsoft Windows 7 SDK on Linux]{{RefLang|en}}
[[Category:Помощь]]
* [https://wiki.winehq.org/Winetricks Winetricks — скрипт для загрузки и установки распространённых исполняемых библиотек]
* [https://appdb.winehq.org/objectManager.php?sClass=version&iId=29828 Wine HQ - Miranda NG - official bug tracker for Miranda NG on Wine]{{RefLang|en}
[[Category:Help/ru]]

Latest revision as of 18:06, 5 August 2023

Хотя Миранда изначально предназначена для работы только в Windows, тем не менее, возможен её запуск в Linux под Wine.

Note
Описанные ниже действия испробованы в среде Ubuntu 21.10.
Important
Архитектура Миранды (32- или 64-разрядная) должна совпадать с архитектурой дистрибутива Linux. В дальнейших примерах предполагается, что архитектура 64-разрядная.

Настройки OS

BSD

Для работы CrashDumper нужно разрешить отладку непривилегированным пользователям, для этого в sysctl необходимо выставить:

security.bsd.unprivileged_proc_debug=1

Linux

Note
Начиная с Wine 7.0, Миранда корректно работает под wine-stable. Если вы используете более раннюю версию Wine, установите wine-staging.

Создаём отдельный профиль Wine для Miranda NG

Создаём отдельную папку, где будем хранить профиль Wine для работы с Мирандой:

mkdir -p $HOME/.wines/miranda/

Если переменная $HOME у вас не определена, заменяйте на путь к профилю, например:

mkdir -p /home/USER/.wines/miranda/

Инициализируем профиль Wine

env WINEPREFIX=$HOME/.wines/miranda/ wine winecfg -v 2003
  • Отказываемся от того, что предлагают установить (работать будет и без этого).
  • Закрываем — OK.

Устанавливаем Miranda NG

  • Загружаем архив, содержащий портативную 64-разрядную Miranda NG.
  • В папку $HOME/.wines/miranda/drive_c/Miranda_NG/ копируем файлы из архива.

Запускаем

Скрипт для запуска (можно сохранить как $HOME/.wines/miranda/drive_c/Miranda_NG/Miranda32.sh):

#!/bin/sh
cd $HOME/.wines/miranda/drive_c/Miranda_NG/

env WINEPREFIX=$HOME/.wines/miranda/ wine Miranda64.exe

Запускаем скрипт и задаём желаемое имя базы. Отметьте «Запуск в служебном режиме: Import», если у вас уже есть база (например, перенесённая с Windows) и вы хотите и дальше её использовать. Нажимаем Создать (и выполняем импорт из старой базы, если выбирали импорт на предыдущем шаге).

Дополнительные настройки Wine

Эти настройки не обязательны, но могут повысить комфорт.

Открытие папок в системном файловом менеджере

По умолчанию wine открывает папку в своём проводнике, это не всегда удобно, например при использовании плагина MenuItemEx удобнее просматривать полученные от контакта файлы через системный файловый менеджер.

  • Создаём файл $HOME/.wines/miranda/drive_c/windows/open_on_host_sys.sh с таким содержанием:
#!/bin/sh

xdg-open "`winepath -u \"$1\"`"
  • Помечаем его как исполняемый: chmod +x $HOME/.wines/miranda/drive_c/windows/open_on_host_sys.sh
  • Запускаем редактор реестра: env WINEPREFIX=$HOME/.wines/miranda/ wine regedit
  • В разделе: HKEY_CLASSES_ROOT\folder\shell\open создаём ключ (подраздел): command
  • В созданном разделе command устанавливаем значение по умолчанию: cmd /c start /b /min c:\windows\open_on_host_sys.sh "%1"

Без "cmd /c start" у меня скрипты не исполнялись.

Если xdg-open в системе нет, можно прописать название файлового менджера который вы используете и желаемые ключи запуска, например: thunar. В случае использования xdg-open аналогичным образом можно настроить открытые любых других типов файлов программами используемыми по умолчанию в системе.

Документация

Документация к Wine