Linux on Dex — разработка от Samsung и Canonical, позволяющая запускать Ubuntu на Galaxy Note 9 и Tab S4 при подключении к Samsung DeX , т.е. получить почти полноценный ПК на Linux из смартфона или планшета. На настоящий момент времени это бета-версия, но поэкспериментировать уже возможно (на свой страх и риск, разумеется).
В этом обзоре — мой опыт установки и запуска Linux on Dex, использования и установки приложений, настройка русского языка ввода с клавиатуры и субъективное общее впечатление. Для теста использовался Galaxy Note 9, Exynos, 6 Гб RAM.
Установка и запуск Linux on Dex
Для установки потребуется установить само приложение Linux on Dex (в Play Маркет недоступно, я брал на apkmirror, версию 1.0.49), а также загрузить на телефон и распаковать специальный образ Ubuntu 16.04 от Samsung, доступный на https://webview.linuxondex.com/ .
Загрузка образа доступна и из самого приложения, но в моем случае почему-то не работала, более того, во время загрузки через браузер скачивание дважды обрывалось (никакое энергосбережение не стоит). В итоге образ все-таки был загружен и распакован.
Дальнейшие шаги:
- Кладем образ .img в папку LoD, которую приложение создаст во внутренней памяти устройства.
- В приложении нажимаем «плюс», затем Browse, указываем файл образа (если будет расположен не в том месте, вас предупредят).
- Задаем описание контейнера с Linux и устанавливаем максимальный размер, который он сможет занять при работе.
- Можно запускать. Аккаунт по умолчанию — dextop, пароль — secret
Без подключения к DeX, Ubuntu можно запустить только в режиме терминала (кнопка Terminal Mode в приложении). Установка пакетов исправно работает прямо на телефоне.
После подключения к DeX можно запускать полноценный десктопный интерфейс Ubuntu. Выбрав контейнер жмем Run, ждём очень короткий промежуток времени и получаем рабочий стол Ubuntu Gnome.
Из предустановленного софта в основном — средства разработки: Visual Studio Code, IntelliJ IDEA, Geany, Python (но он, я так понимаю, всегда в Linux присутствует). В наличии браузеры, средство для работы с удаленными рабочими столами (Remmina) и что-то ещё.
Я не разработчик, и даже Linux — не то, в чем я бы хорошо разбирался, а потому просто представил: а что, если написать эту статью от начала до конца в Linux on Dex (LoD), вместе с графикой и остальным. И установить что-нибудь ещё, что может пригодиться. Успешно установились: Gimp, Libre Office, FileZilla, ну а VS Code меня более чем устраивает для моих скромных кодерских задач.
Всё работает, запускается и я не сказал бы, что очень медленно: конечно, в обзорах я читал, что у кого-то проекты в IntelliJ IDEA компилируются по несколько часов, но это не то, с чем мне предстоит столкнуться.
А вот с чем я столкнулся, так это с тем, что план мой по подготовке статьи полностью в LoD может не сработать: нет русского языка не только интерфейса, но и ввода.
Настройка русского языка ввода Linux on Dex
С тем, чтобы заставить работать переключение клавиатуры Linux on Dex между русским и английским мне пришлось помучиться. Ubuntu, как я упоминал — не моя сфера. Гугл, что на русском, что на английском результатов особо не дает. Единственный найденный метод — запуск клавиатуры Android поверх окна LoD. Инструкции с официального сайта linuxondex.com в результате оказались полезными, но простое следование им не сработало.
Итак, сначала опишу тот метод, который сработал полностью, а затем — то, что не сработало и сработало частично (у меня есть предположение, что последний вариант кто-то, более дружный с Linux, сможет довести до конца).
Начинаем со следования указаниям на официальном сайте и слегка их модифицируем:
- Ставим uim ( sudo apt install uim в терминале).
- Устанавливаем uim-m17nlib
- Запускаем gnome-language-selector и при предложении загрузки языков нажимаем Remind Me Later (всё равно не загрузит). В пункте Keyboard input method указываем uim и закрываем утилиту. Закрываем LoD и снова заходим (я закрывал поднесением указателя мыши к верхнему правому углу, где появляется кнопка «Назад» и нажатием по ней).
- Открываем Application — System Tools — Preferences — Input Method. Выставляем как у меня на скриншотах в пунктах 5-7.
- Изменяем пункты в Global Settings: устанавливаем m17n-ru-kbd в качестве метода ввода, обращаем внимание на Input method switching — клавиши переключения клавиатуры.
- Очищаем пункты Global On и Global Off в Global key bindings 1.
- В разделе m17nlib выставляем «on».
- Также Samsung пишет, что в Toolbar требуется установить Never в пункте Display Behavior (не помню точно, менял или нет).
- Нажимаем Apply.
У меня всё заработало без перезагрузки Linux on Dex (но, опять же, в официальной инструкции такой пункт присутствует) — клавиатура успешно переключается по Ctrl+Shift, ввод на русском и английском работает и в Libre Office и в браузерах, и в терминале.
Прежде чем я добрался до этого метода, было опробовано:
- sudo dpkg-reconfigure keyboard-configuration (вроде бы настраивается, но к изменениям не ведет).
- Установка ibus-table-rustrad , добавление русского метода ввода в параметрах iBus (в разделе Sundry в меню Applications) и настройка метода переключения, выбор iBus в качестве метода ввода в gnome-language-selector (как на 3-м шаге выше).
Последний способ на первый взгляд не сработал: появился индикатор языка, переключение с клавиатуры не работает, при переключении мышью по индикатору ввод продолжает осуществляться на английском. Но: когда я запустил встроенную экранную клавиатуру (не ту, что от Android, а ту, что Onboard в Ubuntu), я с удивлением обнаружил, что комбинация клавиш на ней работает, язык переключается и ввод происходит на нужном языке (до настройки и запуска ibus-table такого не происходило), но только с клавиатуры Onboard, физическая продолжает набирать на латинице.
Возможно, существует способ перенести это поведение и на физическую клавиатуру, но тут мне не хватило навыков. Обратите внимание, что для работы клавиатуры Onboard (находится в меню Universal Access) сначала требуется зайти в System Tools — Preferences — Onboard Settings и переключить Input event source на GTK в Keyboard Advanced Settings.
Впечатления
Не могу сказать, что Linux on Dex — это то, чем я буду пользоваться, но сам факт того, что на телефоне, вынутом из кармана, запускается десктопное окружение, всё это работает и можно не только запустить браузер, создать документ, отредактировать фото, но и программировать в настольных IDE и даже написать что-то на смартфоне для запуска на этом же смартфоне — это вызывает то подзабытое ощущение приятного удивления, которое возникало когда-то давно: когда в руки попадали первые КПК, на обычные телефоны получалось устанавливать приложения, появлялись сильно сжатые форматы аудио и видео, рендерились первые чайники в 3D, рисовались первые кнопки в RAD-средах, а на смену дискетам приходили флешки.