четверг, 21 ноября 2019 г.

Lubuntu 18.04. Запуск клиента Hikvision iVMS-4200 в wine

Весной я описал установку Linux клиента iVMC-4200. Решение абсолютно работоспособное, но не без недостатков:
  • Более ресурсоемкое, по сравнению с windows-клиентом(соответственно подходит лишь при количестве окон до 4-х)
  • Более не поддерживается разработчиками, и имеет очень древнюю версию.
При этом, на сайте поддержки wine, я обнаружил, что iVMS-4200 имеет золотой статус (для iVMS-4200 v. 2.6.1.1и wine v. 2.12 ), соответственно решил попробовать.
Спойлер
Процес оказался нетривиальным и с наскока не решается. В моем случае осложнился тем, что я ставил на LTS Lubuntu 18.04
Выбор версии Linux Lubuntu
Выбирал из двух вариантов:
  • Lubuntu 18.04 - версия с большим сроком поддержки (минимум 5 лет, но обещают дольше), что гарантирует обновления и установку дополнительного софта в будующем, без обновления версии дистрибутива
  • Lubuntu 19.10 - поддержка до выхода следующей версии + пара месяцев (примерно до конца лета 2020г.), преимущество - почти беспроблемная установка сабджа, но в будущем придется обновиться или заморозить состояние системы как есть
  1. Установка Wine

    • Для системы 64 бит включаем поддержку 32 бит архитектуры:
      sudo dpkg --add-architecture i386
    • Скачиваем и устанавливаем ключ репозитория:
      wget -nc https://dl.winehq.org/wine-builds/winehq.key
      sudo apt-key add winehq.key
    • Добавляем репозиторий:
      sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ bionic main'
    • Обновляем репозиторий и устанавливаем winehq:
      sudo apt install --install-recommends winehq-stable winetricks zenity
    • Запускакм winetricks в первый раз (можно из меню, а можно из консоли, но обязательно в графическом режиме: я использовал VNC) и соглашаемся с установкой mono и gecko
      После завершения создания префикса .wine закрываем winetricks
  2. Создание win префикса

    WINEPREFIX="$HOME/.wine_ivms" WINEARCH=win32 wine wineboot
    WINEPREFIX="$HOME/.wine_ivms" winetricks -q jet40 mdac28 riched30 windowscodecs wininet vcrun6 wsh57
    Тут меня ждала засада: пакет windowscodecs категорически отказывался устанавливаться и выдавал ошибку(как решил см. дальше).
  3. Установка iVMS-4200

    • Скачиваем iVNS-4200 с сайта Hikvision (я скачивал версию максимально близкую к указанной на сайте wine: v2.6.1.6)
    • Запускаем winetricks, используя созданный ранее префикс:
      WINEPREFIX="$HOME/.wine_ivms" winetricks
      Жмем "ОК"
    • Смотрим сообщение:
      Я выбрал нет
    • Выбираем пункт установка
    • Жмем кнопку установить:
    • Выбираем скачаный установщик:
      Далее идет обычная установка как в windows
      В конце выскочит несколько раз ошибка:
      Жмем ОК
      По завершении установки winetricks закрываем
    • Запускаем установленный видеоклиент коммандой:
      WINEPREFIX="$HOME/.wine_ivms" wine ~/.wine_ivms/drive_c/Program\ Files/iVMS-4200\ Station/iVMS-4200/iVMS-4200\ Client/iVMS-4200.exe
      Окно авторизации:
      Все запустилось:
Как я обманул карму
Столкнувшись с трудностями при установке библиотек, я вышел из ситуации следующим образом:
  1. Установил Lubuntu 19.10
  2. Установил WineHQ, как опписанно выше, с той лишь разницей, что на шаге добавления репозитория, я добавил репозиторий для предыдущей версии Lubuntu 19.04
    sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ disco main'
  3. Далее проделал все описанные выше шаги по установке wine префикса и самого приложения. В итоге я получил нужный мне вайн контекст, который я после успешно перенес на машину с Lubuntu 18.04
  4. Архив с готовым wine префиксом можно скачать здесь

Теперь несколько дней тестирования и в продакшн!
P.S.

Имеет смысл создать скрипт запуска startivms.sh:
#!/bin/sh
WINEPREFIX="$HOME/.wine_ivms" wine ~/.wine_ivms/drive_c/Program\ Files/iVMS-4200\ Station/iVMS-4200/iVMS-4200\ Client/iVMS-4200.exe

И ярлык запуска на рабочем столе iVMS-4200.desktop:
[Desktop Entry]
Name=iVMS-4200
Exec=/home/user/startivms.sh
Type=Application
StartupNotify=true
Path=$HOME
Icon=gnome-mplayer
Не забываем сделать скрипт исполняемым:
chmod +x startivms.sh

3 комментария:

  1. Александр, исправьте опечатку в тексте:
    "Выбираем пуект установка"
    А когда планируется продолжение публикации перевода руководства Proxmox?

    ОтветитьУдалить
    Ответы
    1. Спасибо.
      Следующую главу перевел, осталось сверстать - на той неделе будет, а может даже две сподоблюсь

      Удалить
  2. Спасибо, все стало с первого раза и без бубнов))) Lubuntu 19.10

    ОтветитьУдалить