Дневник UNIX'оида

Сайт канала Дневник UNIX'оида

Download as .zip Download as .tar.gz View on GitHub

Планшет как второй монитор

Вступление

Рад привествовать читателей блога. В этой статье хочу рассказать об одном из возможных вариантов использования старых планшетов (как Android, так и iOS). В настоящее время многим пользователям может не хватать одного монитора для комфортной работы. И если на основной машине эта проблема решаема просто подключением дополнительного монитора, то, когда у вас с собой ноутбук и под рукой нет монитора, такой возможности нет. В этом случае как раз таки и пригодится планшет в качестве второго монитора.

Требования

Подготовка компьютера

  1. Для начала установите пакеты x11vnc и xf86-video-intel.
  2. Далее нужно отредактировать конфиг файл Xorg, чтобы в системе появились виртуальные дисплеи
    Создайте файл /usr/share/X11/xorg.conf.d/20-intel.conf и напишите в него:
    Section "Device"
      Identifier "intelgpu0"
      Driver "intel"
      Option "VirtualHeads" "X"
    EndSection
    

    , где X - кол-во виртуальных дисплеев

  3. Узнайте разрешение экрана и соотношение сторон экрана своего планшета
    В моем случае, это 2048x1536, соотношение 4:3 (iPad 4). Соотношение сторон понадобится в случае, если вы хотите установить разрешение меньше, чем у вашего планшета (я так и поступил, т.к. на 2048x1536 картинка слишком мелкая, а увеличивать масштаб лень).

  4. Проверьте, как называется виртуальный дисплей, который вам нужен. В моем случае VIRTUAL1.
    xrandr

  5. Установите пароль VNC, если нужно:
    x11vnc -storepasswd

  6. Пропишите в терминале cvt w h 60 | grep 'Modeline' | sed 's/^Modeline //', где w - ширина, h - высота, 60 - частота обновления.
    Скопируйте результат вывода.

  7. Создайте новый режим в xrandr:
    xrandr --newmode ..., где … - скопированный результат вывода cvt

  8. Добавьте созданный режим к виртуальному дисплею:
    xrandr --addmode VIRTUALX ..., где VIRTUALX - название виртуального дисплея, … - название режима (часть из вывода cvt в кавычках)

  9. Включите виртуальный дисплей с нужным режимом:
    xrandr --output VIRTUALX --mode ..., где VIRTUALX - название виртуального дисплея, … - название режима (часть из вывода cvt в кавычках)

  10. Установите расположение виртуального дисплея:
    xrandr --output VIRTUALX --right-of HOSTDSP, где VIRTUALX - название виртуального дисплея, HOSTDSP - название основного дисплея.

  11. Запустите x11vnc сервер:
    x11vnc -rfbauth ~/.vnc/passwd -multiptr -display :0 -nodpms -clip VWxVH+HW+0, где VW - ширина виртуального дисплея, VH - высота виртуального дисплея, HW - ширина вашего экрана.

P.S. Последние 6 шагов нужно выполнять снова после каждой перезагрузки, поэтому лучше вписать их в .xinitrc, либо автозагрузку DE.

Подготовка планшета

  1. Установите любой VNC клиент на ваш планшет (можно с 4pda, если Google Play/App Store на старом устройстве уже нерабочий)

  2. Узнайте IP вашего компьютера в локальной сети и порт, на котором запущен VNC сервер.
    ip addr - найдите IP возле нужного интерфейса. Порт x11vnc пишет при запуске в терминале. Как правило, это 5900.

  3. Подключитесь к компьютеру с указанием IP, порта, имени пользователя (ваше в системе) и пароля (если есть).

Заключение

Мы рассмотрели, как можно из старого устройства сделать переносной второй монитор. Спасибо за внимание!