Всем привет!

Чуть ранее мы рассказывали о том, как запускать несколько копий Vivaldi в Mac OSX. Сегодня мы рассмотрим аналогичные действия для Linux систем.

Время от времени пользователи просят нас выложить «tar архивы» с бинарниками Vivaldi в дополнение к RPM и DEB установочным пакетам. Как правило, у этих запросов три причины:

  • Иметь возможность установки Vivaldi в дистрибутивах, не использующих методы установки пакетов .rpm или .deb
  • Иметь возможность установки Vivaldi в нестандартный каталог (например, только для одного пользователя)
  • Иметь возможность запускать Vivaldi в автономном (портативном) режиме

Сегодня мы попытаемся объяснить, почему мы предлагаем только RPM и DEB пакеты, а также как решить каждую из вышеуказанных проблем используя только эти пакеты.

В идеале, если соблюдать традиции Linux-разработки, мы на самом деле не должны были бы выпускать любые пакеты для Linux дистрибутивов. Мы бы занимались разработкой собственно браузера, а все действия по сборке пакетов, их распространению и обновлению выполнялись бы сборщиками Linux дистрибутивов. Если вы посмотрите на установленный у себя дистрибутив, вы увидите, что абсолютное большинство приложений собираются в пакеты, распространяются и обновляются силами авторов дистрибутива. Это традиционный способ, выработанный Linux-сообществом за многие годы, и он достаточно эффективен — всё программное обеспечение дистрибутива собирается и обрабатывается одной и той же группой профессионалов, тем самым обеспечивающих отличный уровень совместимости.

Однако, и здесь есть свои сложности. Например, многие дистрибутивы стараются включать в свой состав только стабильные версии приложений, поэтому на данный момент без создания собственных пакетов Vivaldi мы не имеем другого способа донести до пользователей тестовые сборки или бета-версии. также, в силу молодости нашего проекта, некоторые дистрибутивы вообще могут не знать о нашем существовании.

Поэтому мы предлагаем два самых распространённых в мире Linux формата установочных пакетов (.rpm и .deb), но будем, конечно, рады, если в каком-нибудь дистрибутиве браузер Vivaldi будет входить в стандартный набор приложений. Дополнительно, даже не предлагая пакетов для некоторых дистрибутивов, использующих другие форматы установочных пакетов, мы всегда принимаем баг-репорты от пользователей подобных дистрибутивов и стараемся решить проблемы, связанные с установкой и использованием Vivaldi.

Если пока не существует установочных пакетов Vivaldi для вашего дистрибутива, есть несколько способов, которые позволят вам установить Vivaldi (см. ниже). Но прежде всего вы должны проверить, не предлагают ли авторы вашего дистрибутива уже готовые пакеты Vivaldi. Некоторые дистрибутивы уже провели такую работу (например, Arch, Gentoo, Slackware), а другие, возможно, сделают это после выхода первой стабильной версии Vivaldi. Если после появления финальной версии Vivaldi он не появится в списке пакетов вашего дистрибутива, вы можете вежливо предложить авторам дистрибутива сделать это. Они могут связаться с нами напрямую, если возникнут какие-то вопросы.

Сложности с песочницей

Прежде всего хотим предупредить, что запуск Vivaldi из нестандартного каталога (включающего автономную установку «standalone») может работать не для всех пользователей. Это зависит от места установки, от прав пользователя, который производит установку, и от версии ядра Linux, используемого в вашей операционной системе. Основная проблема связана с особенностями работы песочницы Chromium, ключевого элемента безопасности браузера. В основном, если ваша система использует ядро Linux версии 3.17 и выше, число возможных проблем будет стремиться к минимуму. Однако в некоторых дистрибутивах, использующих более старое ядро, какие-то важные функции могут отсутствовать, а в других дистрибутивах, даже с более новой версией ядра, эти функции могут быть отключены по различным причинам. более подробно на эту тему мы уже рассказывали в прошлой статье.

Установка в нестандартный каталог

Установка браузера Vivaldi в нестандартный каталог заключается в распаковке одного из наших пакетов и переносе файлов в новый каталог. Многие просят TAR архив с файлами для решения этой задачи, но на самом деле тот же .deb пакет включает в себя именно TAR архивы, из которых вынуть требуемые файлы не составляет труда, используя утилиты, входящие в состав дистрибутива. То же самое касается и .rpm пакетов. Используя 64-битный .deb пакет недавней тестовой сборки в качестве примера, мы сейчас покажем, как произвести распаковку файлов в консоли:

ar p vivaldi-snapshot_1.0.365.3-1_amd64.deb data.tar.xz | tar -xJf- --strip 2 ./opt


В результате будет создан каталог «vivaldi-snapshot». Можете переместить его со всем содержимым в любой подходящий каталог. Чтобы запустить Vivaldi, выполните запускающий скрипт (называется «vivaldi-snapshot») из этого каталога.

Автономная установка (standalone)

Браузер Vivaldi поддерживает параметр командной строки, позволяющий указывать браузеру, где сохранять все настройки и пользовательские данные: "--user-data-dir=". Если вы укажете сохранять профиль и данные в подкаталоге внутри каталога с файлами браузера, вы, фактически, получите автономно работающий браузер.

Чтобы использовать распакованную копию Vivaldi в предыдущем примере в качестве автономного приложения, выполните следующее:

cd vivaldi-snapshot ./vivaldi-snapshot --user-data-dir=profile &


Примеры автоматизации

Мы тестируем Vivaldi в разных ситуациях на многих Linux дистрибутивах. Для ускорения процесса мы подготовили несколько скриптов для автоматической распаковки пакета Vivaldi для установки в нестандартный каталог. Это неофициальные решения (т.е. никаких гарантий и поддержки), но вы можете использовать их, если они вам подходят.

Комментарии (6)


  1. gsmplan
    16.01.2016 02:03

    Нашел баг в работе адресной строки.
    Вы пытаетесь зайти на сайт «www.example.com». Браузер выдает ошибку «имя не найдено». Вы точно знаете, что сайт существует, а ошибка появляется потому, что криворукий администратор не настроил обработку «www». Поняв это, вы удаляете часть адреса «http ://www» (пробел добавлен, чтобы текстовый редактор Хабра не удалял название протокола), оставив только «example.com» и нажимаете Enter. К сожалению, «слишком умная» адресная строка Vivaldi самостоятельно меняет адрес на «http: //www.example.com» — и снова выдает ошибку. Сделать с этим ничего нельзя, разве что открыть приватное окно и вводить адрес там.


    1. Shpankov
      17.01.2016 21:25

      Можете отправить подробный баг-репорт?
      vivaldi.com/bugreport


      1. gsmplan
        17.01.2016 23:43

        По-английски читаю, но, к сожалению, не говорю/не пишу.


  1. gsmplan
    16.01.2016 22:18

    И еще: разберитесь, все-таки, с файлом «Top Sites». После достижению объема в 50+Мб, у Vivaldi иногда «срывает крышу», и он начинает что-то писать/читать с диска. При этом файл «Top Sites-journal» то обнуляется, то снова становится ненулевой длины. Этот процесс идет бесконечно (во всяком случае, мне ни разу не удалось дождаться его окончания). И даже если выйти из браузера, один из процессов все равно остается в памяти и продолжает обращаться к диску. Завершить его можно только принудительно, через Task Manager.
    Помогает только удаление файла «Top Sites», но не надолго. После превышения некоторого критического объема все повторяется заново.


    1. Shpankov
      17.01.2016 21:25

      На какой версии? В последних сборках с этим что-то делали, если не ошибаюсь.


      1. gsmplan
        17.01.2016 23:44

        Билд последний. Обновляюсь поверх. Пару месяцев назад переустанавливал начисто.