Как пропатчить Wine и использовать его в playonlinux

Как пропатчить Wine и использовать его в playonlinux

У меня в системе установлен Wine с PPA, и я не хочу его менять.

Я хочу применить патч к (Вот этот) и использовать его в Playonlinux.

Я знаю, что могу использовать пользовательские версии Wine в playonlinux. Когда-то давно один хороший человек прислал мне пропатченный Wine, который я поместил в папку Wine playonlinux, и он работал.

Так может ли кто-нибудь мне с этим помочь?

Заранее благодарю

решение1

Я не уверен, что вы на самом деле хотите сделать (использовать Wine из PPA в POL? собрать Wine из исходников для POL?), но вот что я сделал, чтобы пропатчить бета-версию Wine (1.7 на момент написания статьи) для тестирования с POL.

Примечания:

  • Я использую wineвместо этого , wine1.7потому что он соответствует новейшей версии Wine, поэтому он будет работать, когда бета-версия достигнет 1.8
  • Я строю на архитектуре amd64, что означает, что я делаю это сложным путем. Я предполагаю, что большинство людей сейчас используют amd64, так что у вас все должно быть в порядке. Если у вас i386, то жизнь для вас проще, но, к сожалению, это руководство не будет охватывать вас в полной мере. Либо разберитесь сами, либо напишите мне, и я посмотрю, как смогу помочь.

инструкции

  1. Установите инструменты разработчика Ubuntu:sudo apt-get install ubuntu-dev-tools
  2. Добавьте Wine beta PPA в Ubuntu, как описаноздесь: sudo apt-add-repository -sy ppa:ubuntu-wine/ppa && sudo apt-get update(флаг -s необходим для включения загрузки исходного кода)
  3. Загрузите и пропатчите Wine, как описаноздесь:

    1. Установите зависимости сборки:sudo apt-add-repository -y ppa:ubuntu-wine/ppa
    2. Загрузите исходный код в каталог сборки:mkdir -p ~/src/wine-patches; cd ~/src/wine-patches; apt-get source wine
    3. исправьте свой исходный код:cd wine*-*; patch -p1 < your.patch

      (Возможно, вам придется немного помассировать пластырь, чтобы он хорошо прилегал)

  4. внесите изменения в пакет:dpkg-source --commit

    Вас попросят ввести имя вашего патча (просто введите что-нибудь осмысленное), затем откройте редактор с большим количеством текста шаблона, за которым следует текст вашего патча. Обязательно отредактируйтеОписаниеполе и удалите все комментарии шаблона, затем сохраните.

  5. сборка deb:dpkg-buildpackage
  6. подожди... выпей чашечку кофе... подожди еще немного... посмотри шоу по телевизору... подожди еще больше... пока все не закончится.
  7. вернёмся в корень дерева сборки, куда dpkg поместил наши deb-файлы:cd ..
  8. Теперь, поскольку мы находимся наamd64, мы только что получили некоторыеamd64deb файлы, и нам также нужныi386deb файлы (так работает wine на amd64, поскольку ему приходится загружать 32-битные двоичные файлы windows). Поэтому нам нужно будет выполнить кросс-сборкуi386двоичные файлы (если у вас уже i386, то вы можете пропустить этот шаг):

    1. Загрузите некоторые переменные: source /etc/lsb-release(я использую это, чтобы мне не пришлось знать кодовое имя окружения)
    2. Создайте среду pbuilder дляi386:pbuilder-dist $DISTRIB_CODENAME i386 create
    3. Снова соберите Wine с помощью pbuilder:pbuilder-dist $DISTRIB_CODENAME i386 build wine*.dsc --buildresult .
    4. Подождите еще немного... вы знаете, как это сделать.
  9. Теперь следующий шаг немного хакерский, потому что dpkg создал для нас некоторые deb-файлы, которые предназначены для установки в корень FSH-совместимой системы Linux, и, таким образом, все находится внутри каталога /usr, который не нужен для установки типа PlayOnLinux, поэтому нам нужно будет извлечь deb-файлы в структуру, которая имеет смысл для POL:

    1. создать временную рабочую зону:mkdir root
    2. извлеките deb-файлы: for deb in *.deb; do dpkg -x $deb root; done(это также извлечет пакет devи dbg. Мне все равно, но если вам все равно - напишите свою собственную команду :-p ).
    3. Приведенная выше команда создает множество файлов, root/usrкоторые нам нужно будет переместить в новое дерево Wine POL, но сначала нам нужно создать базовый каталог: mkdir -p ~/.PlayOnLinux/wine/linux-x86/<version>-<your-patch-name>(Я устанавливаю в каталог Wine 32 bit, потому что меня интересует только использование 32 bit под POL. Если вы собирали на amd64, можно установить и на amd64).
    4. Переместите некоторые файлы:mv root/usr/{bin,share} <your-pol-wine-dir>
    5. Переместите правильный каталог lib:mv root/usr/lib/i386-linux-gnu <your-pol-wine-dir>/lib

Вот и все - ваша новая версия Wine должна быть указана в пользовательском интерфейсе PlayOnLinux, и вы сможете ее использовать. Этот набор инструкций предназначен для бета-релизов, которые, как правило, иногда немного нестабильны - так что YMMV. Если все выглядит не очень хорошо, попробуйте повторить процесс со стабильной версией, например wine1.6.

Связанный контент