субота, 5 січня 2013 р.

Как я подружился с PlayOnLinux

В своё время описывал свой скрипт, помогающий запускать и управлять игрой в своём префиксе WINE. При своих достоинствах, простоте и наглядности, такое простое, если не сказать топорное, решение меня вполне устраивало, но со временем обнаружились минусы.

Во-первых, при всём удобстве пользования скриптами для меня, вокруг есть близкие мне люди, которых лучше не посвящать в дебри запуска виндовых игр из консоли. Формировать для них на Рабочем Столе ярлыки к играм просто муторно и влом.

Во-вторых, при использовании "просто WINE" реально может возникнуть ситуация, когда вчера игра нормально стартовала в WINE 1.5, а завтра в WINE 1.6 крашится. У вас в системе есть всегда актуальная, но одна версия WINE, я было бы здорово установив игру, не испытывать в будущем с ней проблем.

Всё это вынудило попробовать графические утилиты, скрывающие под своим капотом работу с WINE. Уже давно мне было известно про PlayOnLinux и решил с ним подружиться.

POL.

Первым несомненным плюсом PlayOnLinux является его развитая система готовых POL скриптов, которые помогают сформировать работающее окружение в WINE.

PlayOnLinux Syberia

POL файл - это скрипт с вызовами команд для PlayOnLinux, которые выставляют нужную версию MS Windows, устанавливают нужные библиотеки, помогают обойти известные проблемы с игрой. Согласитесь, что просто приятно, когда один раз автор конкретного POL скрипта разрулил все проблемы и инструкциями в POL скрипте автоматизировал и облегчил безболезненную установку любимой игры. Например, в Syberia 1 баг с чёрным экраном, автор скрипта обошёл через паузу в 10 секунд и вызовом ранее скачанного nircmd.exe, который прячет нужное окно. До этого сам не всегда додумаешься. POL это здорово!

WINE prefix.

Второй плюс PlayOnLinux - это активное использование WINE префиксов. Для каждой игры и программы, создаётся свой отдельный префикс. В дальнейшем можно легко что-либо поменять в настройках окружения одной программы и не бояться, что это негативно затронет другие приложения.

Для каждого префикса WINE, который олицетворяет собой "отдельную версию MS Windows", доступны различные действия над ним.

PlayOnLinux Настройка WINE

Собраны в одном месте часто употребительные вещи, такие как запуск редактора реестра regedit.exe, командная строка cmd.exe, диспетчер задач taskmgr.exe в данном префиксе.

Мне очень понравилась возможность "Завершить процессы", которая помогает убить все процессы WINE, если что-то пошло не так и WINE остался в памяти. Мне до этого приходилось шаманить с killall wine, но так тяжело убить все процессы WINE, так как они имеют различные названия и не попадают под одну маску. То есть одним махом семерых убивахом - не получалось у меня в консоли. Геморрой с ps axxw|grep wine отменяется и кнопочка "Завершить процессы" просто палочка выручалочка какая-то.

Позже более опытный линуксоид Дмитрий Махровский в группе Ubuntu Linux ВКонтакте подсказал, что убить все процессы вайн данного префикса можно через wineserver -k. Век живи - век учись.

Во вкладке "Установить пакеты" можно найти все те библиотеки, что ранее приходилось ставить через winetricks. Скажу честно, что работа в консоли с winetricks мне нравится больше. Дело в том, что PlayOnLinux скрывает, в плохом смысле этого слова, свои действия по установке библиотек, но у меня часто возникали проблемы и вывод окна "оп-с-с что-то пошло не так" меня не устраивает. Было и не раз, что winetricks железно ставит библиотеки, а PlayOnLinux, к примеру, при установке dotnet35 начинает выкачивать 300 мегабайтный Service Pack 3 для MS Windows XP и ещё кучу зависимостей, а в итоге завершается со своим "опаньки".

Данное место "Установить пакеты" мне не нравится, но благодаря POL скриптам, наверное, не часто будет и требоваться.

Вкладка "Экран" позволяет выставить различные параметры, касаемые видеоподсистемы и алгоритмов отрисовки. Очень удобно.

Вкладка "Разное" прячет полезную мне кнопку "Открыть консоль". Она то и подружила меня с PlayOnLinux. Что-то можно реально быстрее сделать в консоли при установке и причёсывании, которая любезно откроется в этом префиксе.

Разный WINE.

Что реально делает PlayOnLinux крутым, так это умение работать с несколькими WINE. То есть в системе штатно установлен самый последний WINE и в PlayOnLinux он обзывается System, но средствами PlayOnLinux можно скачать оптимизированную версию WINE под конкретную игру. Я категорически против нарушения философии установки программ в обход штатного менеджера и минуя репозитории, НО так как PlayOnLinux скачивает другие версии WINE в домашнюю папку вашего аккаунта, то это не нарушит работоспособность системы и приемлемо. Можно даже сказать, что другого пути и нет.

PlayOnLinux Менеджер версий WINE

Вот этой возможности мне частенько очень не хватало в чистом WINE. Жена сейчас играет в игрульку Zombie vs Plants и при очередном обновлении WINE, игра стало просто тупо падать при старте. PlayOnLinux в этом плане просто не заменим. Выставляем версию WINE вместо System на предыдущий релиз или находим, если он есть, заточенный под эту игру вайн и вуаля.

То есть можно, образно говоря, "заморозить" версию WINE, чтобы в будущем не было проблем с давно настроенным и работающим приложением из мира MS Windows в PlayOnLinux.

Плагины PlayOnLinux.

Плюсами, которыми я не пользовался, можно считать расширение возможностей PlayOnLinux с помощью системы плагинов.

  • Capture плагин, позволяющий захватить звуковые потоки ALSA и видеопотоки OpenGL, как это делает известная утилита Fraps. Незаменимая вещь для тех, кто хочет сделать видеоролик для друзей, где видно как вы разрываете монстров на куски и рвёте противников на британский флаг.
  • Offline PlayOnLinux позволит запускать POL скрипты из локальных папок. Плагин отключён по умолчанию и требует от вас понимания своих действий.
  • PlayOnLinux Vault помогает сохранить ваше настроенное богатство из кучи WINE префиксов и игр в них. Так же поможет с восстановлением.
  • ScreenCap позволит сделать скриншоты даже тех программ, которые не имеют своего функционала по созданию снимков.
  • Transgaming Cedega - любопытный плагин, который может подключить движок Cedega в PlayOnLinux. Когда-то в стародавние времена, WINE многое не умел и предприимчивые товарищи его допиливали и продавали под отдельным соусом. Cedega одна из таких контор, типа CrossOver и EterSoft, которые допиливают WINE и снимают пенки. Пару раз в древние времена, когда по планете бродили динозавры, Transgaming Cedega меня выручала и хвастал друзьям, что я не рыжий и могу играть в Counter-Strike.
    Cedega Counter-Strike

    У Cedega была собственно графическая морда аля PlayOnLinux и движок (engine) за деньги. Движок можно было найти бесплатно и он позволял делать то, что WINE иногда не мог. Но те времена давно прошли, вот почему про Cedega и CrossOver уже не так часто и слышно.
    Данный плагин Transgaming Cedega позволит заюзать engine Cedega в PlayOnLinux. Спорный функционал в наши дни.
  • Wine Look для эстетов и ценителей прекрасного. Позволит менять WINE темы у приложений.
  • WineImport выручает с импортом ранее созданных префиксов WINE в PlayOnLinux. Так как PlayOnLinux обитает в домашней папке по адресу ~/.PlayOnLinux

Минусы.

При всех своих достоинствах, не могу не сказать про минусы.

Во-первых, что не нравится, это поиск и уведомления о новой доступной версии PlayOnLinux. В моей линукс системе с пакетным менеджментом этим должен заниматься только один товарищ - штатный установщик программ. Меня бесит этот ms windows style, когда программа сама по себе и собирается обновляться в обход системы.

В этом плане для разработчиков PlayOnLinux должен быть примером Firefox и VirtualBox, у которых в линукс версии галочки обновления в самих программах сняты. Учитывая что PlayOnLinux создавался только для линукса, ибо в винде он тупо не нужен, просто не понятно почему разработчики добавили такой функционал. Что ими двигало?

Во-вторых, повторю минус про худшую работу по установке библиотек. Скрипт winetricks работает более надёжно и железно. Вытягивание PlayOnLinux'ом без предупреждения архивов по 300 мб - это не дело. И тупые опаньки вместо информативного вывода в окне не радуют.

В-третьих, для меня существенный минус, я не знаю как в PlayOnLinux сделать игру на отдельном Xorg. С обычным WINE просто. Разрешаем запуск ещё копии Xorg -

sudo -e /etc/X11/Xwrapper.config
, делаем allowed_users=anybody
Запускаем WINE в стиле
X :2 -terminate -config xorg.conf & sleep 3
DISPLAY=:2 nice -2 env WINEPREFIX="/путь/к/префиксу" wine "/путь/к/игре.exe"

Данный финт ушами позволяет избавиться от множества проблем, типа плохо вышел из игры и сбил разрешение экрана или когда в двухмониторной системе мышка убегала на другой монитор вместо того, чтобы прокрутить карту в StarCraft. Да и банально приятно получить не лишний прирост fps.

Как элегантно зашаманить игру на отдельном Xorg в PlayOnLinux я пока не знаю.

Родные линукс игры. Игра Deadlock в линукс.

Но хотелось бы статью закончить на другой ноте. WINE и все его графические ипостаси это всё хорошо и низкий поклон разработчикам, НО, благодаря Valve, которая портировала свой клиент Steam в Linux и системе голосований Greenlight, всё больше и больше игр можно запускать, не заморачиваясь с WINE.

Моё впечатление от Valve Steam Linux с каждым днём всё радужнее и радужнее. Ещё вчера я видел 30 игр под платформу Linux, сегодня их уже 40. И это только в Valve Steam.

Вот горячая новость - разработчики игры Deadlock получили достаточное финансирование в рамках краудфандинга и в феврале ожидается релиз игры с поддержкой линукс. Игра Deadlock использует движок Unity3D, который в версии 4.0 стал поддерживать линукс. То есть стоит ожидать в будущем, увеличение доступных игр на движке Unity 3D, если разработчики игры не поленятся перевести своё детище на 4 версию движка.

Можно уже сейчас поиграть в демо версию игры Deadlock в линукс версии.

Или просто посмотреть трейлер Deadlock и составить своё впечатление об игре.

Моё итоговое философское мнение таково: "Начинается в мире линукс игр новое время. Для эпохи WINE for game брезжит закат. Для родных линукс игр начинается рассвет."

Портированные на линукс платформу игровые движки Valve Source и Unity3D переведут используемые ими игры на линукс рельсы. Клиенты цифровой дистрибуции Valve Steam и Desura доставят нам топовые игры на компьютер.

Дополнительные материалы:
Запуск игр в префиксах WINE.
Моё впечатление от Valve Steam Linux.
Линукс игры на движке Unity3D.
Игры в Linux. Все варианты запуска.
Линукс шутеры от первого лица.

Немає коментарів:

Дописати коментар

HyperComments for Blogger

comments powered by HyperComments