четверг, 12 мая 2016 г.

Linux: Viber

На сегодняшний день многие пользуются различными мобильными мессенджерами. Когда-то с появлением смартфонов мы пользовались ICQ на телефоне и компьютере, там же еще были XMPP (Jabber) и прочие разновидности. Затем появились аналоги, такие как WhatsApp, через год стал распостроняться Viber и подоспел Telegram. Эта тройка сейчас прочно занимает память на смартфонах многих людей. Мне, находясь рядом с компьютером, проще и быстрее писать сообщения на нем, а не телефоне. Все перечисленные месенджеры имеют десктоп версии. Довелось мне устанавливать Viber на некоторых linux-based компах.


История 1. Ноутбук с Linux mint 17.

Когда-то давно установленный viber перестал нормально работать, а именно получать и отправлять сообщения. Решение было простым, скачал новую версию с сайта (.deb - пакет), и установил. Первый запуск не удачный, но со второго раза всё взлетело на ура. Текст, голос, видео, всё работает отлично.

История 2. Декстоп с Debian Bunsenlabs.

Скачал дистриб с сайта (.deb - пакет), установил. запустил. Окно появилось, выбрал страну, указал номер телефна, а дальше облом - "нет связи, проверь подключение". За отсутствием свободного времени данный вопрос был на некоторое время отложен. Вернувшись к нему обнаружил, что появилась уже новая версия Viber. Скачал, удалил старую, поставил новую, запустил... тишина. Не показалось даже окно. Причина в отсутствующих библиотеках Qt. 
Идем в каталог: /opt/viber/plugins/platforms и делаем там:
sudo ldd libqxcb.so
В появившемся списке смотрим чего не хватает (not found) и доустанавливаем стандартным apt-get install.
После этих манипуляций Viber уже стал показывать свое окошко, но повторил ругань на подключение. Запуск из консоли показывает такие маты:
viber QObject::connect: Cannot connect (null)::stateChanged(QNetworkSession::State) to QNetworkReplyHttpImpl::_q_networkSessionStateChanged(QNetworkSession::State)

Доустановил пакет:
sudo apt-get install libqt5network5

А теперь главное шаманство. 
Взять сертификат тут, и тут. Скопировать их в папку: 
/usr/local/share/ca-certificates
и выполнить: 
sudo update-ca-certificates

После этого Viber нормально воспринимает номер телефона и показывает QR код, для чтения которого на телефоне уже сама запустилась камера!!! Далее всё работает как обычно. Profit.

Надеюсь данный мануал поможет кому-то еще.