Оконный менеджер i3. Допиливаем Linux-десктоп для гика

Недавно мы сделали базовую настройку гик-десктопа на базе i3, но за кадром осталось множество более мелких и не совсем очевидных вещей. Сегодня мы закончим доводку рабочего стола до состояния идеала: научим dmenu управлять яркостью, громкостью и SSH-подключениями, установим правильный менеджер паролей, внедрим в десктоп переводчик любых выбранных слов и фраз, добавим в статусную панель информацию о погоде, установим блокировщик экрана и быстрый, управляемый хоткеями браузер.

Напомню, что в данный момент у тебя уже должна быть базовая инсталляция i3 с окном логина slim, терминалом lilyterm, демоном автомонтирования devmon, системой показа уведомлений twmnd, апплетом переключения раскладки gxkb и композитным менеджером compton. Это вполне самодостаточный десктоп, которым можно без проблем пользоваться. Но есть множество более мелких вещей, которые мы не затронули в предыдущей статье. Например, у нас до сих пор нет блокировщика экрана, той самой штуки, которая требует пароль после простоя или пробуждения компа от спячки.

Блокировщик экрана slock

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

Slock доступен во многих дистрибутивах в форме обычного пакета. В Arch Linux его можно установить так:

$ sudo pacman -S slock

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

Description=Lock X session using slock for user %i Before=sleep.target User=%i Environment=DISPLAY=:0 ExecStartPre=/usr/bin/xset dpms force suspend ExecStart=/usr/bin/slock WantedBy=sleep.target

Помести эти строки в файл /etc/systemd/system/[email protected] , а затем активируй юнит для текущего пользователя:

$ sudo systemctl enable [email protected]ИМЯ_ЮЗЕРА.service

Теперь slock будет автоматически активирован при переходе ноутбука в сон.

Настройка строки состояния

Многие пользователи i3 рекомендуют менять стандартную строку состояния i3status на нечто более прогрессивное, функциональное, красивое и замечательное. В этом есть определенный смысл, но стоит учитывать, что, в отличие от простого i3status, многие другие реализации написаны на языках bash и Python, что делает их менее эффективными и более требовательными к ресурсам.

Поэтому я рекомендую использовать i3status, но несколько расширить его функциональность. Первое, что стоит сделать, - это разместить в строке не только время, но и текущую дату и день недели. Для этого надо всего лишь исправить директиву tztime local в файле ~/.i3status.conf так, чтобы она выглядела следующим образом:

Tztime local { format = "%a %Y-%m-%d %H:%M:%S" }

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

#order += "run_watch DHCP"

Эта строка отключает показ информации о статусе DHCP. Меняя местами строки order , можно поменять расположение элементов в строке.

Ты можешь столкнуться с тем, что строка не отображает информацию о состоянии сети. Обычно проблема заключается в неверных именах сетевых устройств в конфиге. Стоит запустить команду ifconfig , чтобы узнать правильные имена, а затем прописать их в конфиг i3status. Устройства с именами, начинающимися на en, - это Ethernet-адаптеры, wl - Wi-Fi.

Вот пример настроек i3status для моего ноутбука:

Wireless wlp3s0 { format_up = "W: (%quality at %essid) %ip" format_down = "W: down" } ethernet enp0s25 { format_up = "E: %ip (%speed)" format_down = "E: down" }

Кроме статуса сети, батареи, времени, тебе также может понадобиться инфа о текущем уровне громкости. Ее легко добавить с помощью такого блока:

Volume master { format = "♪ %volume" format_muted = "♪ muted (%volume)" device = "default" mixer = "Master" mixer_idx = 0 }

и соответствующей строки в начале конфига:

Order += "volume master"

Погода в строке состояния

Строка может отображать огромное количество разной информации. Но чего в ней нет, так это средств для вывода информации о погоде. К счастью, проблему можно решить с помощью скриптов.

Для начала скачаем скрипт weather.py:

$ mkdir ~/bin $ cd ~/bin $ wget https://raw.githubusercontent.com/calzoneman/i3-weather/master/weather.py $ chmod +x weather.py

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «сайт», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!

Вот уже несколько месяцев прошло как Я перешел на "оконный менеджер" вместо "окружения рабочего стола". Более техническую и точную разницу между этими двумя понятиями можете нагуглить. С точки зрения обычного пользователя (по крайней мере с того, что мне почувствовалось) - WM (оконный менеджер) лишь управляет окнами, а значит:

1) меньше жрет ресурсов;

2) основная работа будет с клавиатурой, мышкой лишь в браузере тыкать и в Gimp;

3) настройки в большей части делать нужно через терминал и конфигурационные файлы, никакой общей панели управления, хотя это сделать можно.

Для обычного пользователя это всё может показаться сложным и ненужным - ну и что, что жрет меньше ресурсов, ведь у меня 100500 ГБ оперативки и чуть меньше ядер процессора. А вот мой старый ноутбук получил вторую жизнь, голая система (Ubuntu 16.04) без DE съедает лишь чуть более чем 200 МБ оперативки. Ну и тайловый оконный менеджер i3 (i3wm - improved windows manager), которому посвящен этот пост, предоставляет ещё одну чудесную возможность - настройка нескольких мониторов с разнымы разрешениями реально проще пареной репы.

Итак, знакомство можете начинать с официального сайта - https://i3wm.org/docs/userguide.html . Для начала можно поставить его дополнительно к обычному DE и выбирать сессию i3 при логине. А когда хватит сил пересесть полностью, можно поставить голый дистрибутив линукса без DE и тогда сразу ставить этот WM. Перед загрузкой сессии i3 обязательно выпишите себе пару комбинаций клавиш и команд, ибо так и застрянете с пустым чёрным экраном и будете делать хард ресет:)

При первом запуске i3 спросит клавишу-модификатор, Я себе выбрал клавишу "win" - хоть какая-то польза и не будет перебивать другие комбинации. Теперь Вы можете запустить терминал комбинацией "win+Enter", а если есть терминал - есть всё.

Кстати, насчёт эмулятора терминала, мой выбор в i3 - urxvt , а для полного счастья нужно ставить пакет rxvt-unicode-256color . Он не такой функциональный как, например, стандартный гномовский, зато быстрее и красиво выглядит в тайловых WM. Все настройки urxvt правите в ~/.Xresources, после редактирования файла - выполнить команду:

xrdb ~/.Xresources

Следующий важный для меня шаг - настройка статусной строки, особенно хотелось иметь рабочие иконки Dropbox и Skype. Конечно же, хотелось настроить имеющуюся с коробки строку статуса - i3bar, хоть она немного багнутая. Если не понравится, ставьте что-либо другое, i3wm не будет обижаться.

Как работает i3bar: утилита i3status читает конфиг файл /etc/i3status.conf и скармливает полученные статусы в виде строки утилите i3bar. Конечно же, адекватные статусы хочется получать за приемлемое время, не более секунды. Поэтому в конфиг файле в секции general, опции interval нужно задать значение 1. Ещё быстрее нет смысла, только лишняя нагрузка процессора. Но из-за того, что эти статусы то ли стают в очередь, то ли ещё чего, а мой старый нетбук до того тормозной, что не успевал каждую секунду обрабатывать всё и обрабатывал статус где-то за 1,1 секунды, они отображались не вовремя. Через час работы разница во времени (между настоящим и тем, что показывал в строке статуса) ставала очень велика, около 15-20 минут. Поэтому нужно было придумать что-то другое. К счастью, i3 позволяет написать свой скрипт для получения статусов и использовать его совместно со встроенным, либо даже без встроенного. Итак, первая версия скрипта:
#!/bin/sh # shell script to prepend i3status with more stuff i3status | while: do read line datetime = $(date +"%Y-%m-%d %H:%M:%S") echo "$datetime | $line" || exit 1 done

Принцип работы скрипта простой: читаем i3status, достаём то, чего нам не хватает, и выводим эту сроку далее. В таком варианте пропадут все цвета, поскольку цвета кодируются специальными последовательностями символов и съедаются оболочкой. Но при желании можно дописать свои функции для обертки разных параметров цветами.

Чтобы этот скрипт запускался вместо стандартного i3status, нужно в ~/.config/i3/config править секцию bar:

Bar { status_command ~/i3status.sh tray_output primary position top } В опции status_command нужно указать полный путь к своему скрипту (ну или поместить его по одному из путей в переменной PATH).

Следующее, что мне страшно нехватало - отображение раскладки, языка. Опять-таки, i3wm не для новичков, придется потратить много времени и нервов. Но настроив единожды, можно легко переносить свои настройки на любую другую машину. Также можно заливать конфигурационные файлы и автоматические скрипты на GitHub и выполнять любую настройку с нуля за считанные минуты. Для управления раскладками (чтобы в каждом приложении была своя раскладка), нужно поставить kbdd. Сами же раскладки, метод переключения и запуск kbdd настраиваем в ~/.xinitrc:

Setxkbmap "us,ua,ru" ",winkeys" "grp:shift_caps_toggle" kbdd exec i3

Что это всё значит:

1) 3 раскладки - us, ua, ru, переключение комбинациией shift+caps lock (по аналогии можете себе настраивать всё, что угодно)

2) запуск kbdd после установления раскладок

3) запуск сесии i3

При этом это всё запустится при выполнении команды "startx". А startx придется выполнять, ибо компьютер будет грузиться в режиме без иксов и вместо окошечка с логином будет консоль с логином. Кстати, это тоже надо настроить правильно:

1) нужно поправить конфиг grub

ищем строку

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

и меняем на

GRUB_CMDLINE_LINUX_DEFAULT="text"

после чего обновить груб:

sudo update-grub

2) Для систем, которые используют systemd надо сделать дополнительные настройки:

Sudo systemctl enable multi-user.target --force sudo systemctl set-default multi-user.target

3) сам блокиратор экрана с логином тоже нужен консольный, для этого хорошо подойдет vlock, но надо ставить версию 2.2.2-3, никак не 2.2.2-5 (в этой более новой версии почему-то можно зайти без пароля с другого tty). Ну и потом надо будет сказать своему пакетному менеджеру, чтобы не обновлял vlock. Далее вешаем блокирование экрана на стандартную комбинацию (CTRL+ALT+L), для этого в ~/.config/i3/config добавляем строчку:
bindsym ctrl+Mod1+l exec vlock -an

Теперь надо настроить отображение раскладок в строке статуса, поэтому тот скрипт i3status.sh будет выглядеть примерно так:

#!/bin/sh # shell script to prepend i3status with more stuff i3status | while: do read line datetime = $(date +"%Y-%m-%d %H:%M:%S") layouts=$(setxkbmap -query | awk "/layout/{print $2}") current=$(dbus-send --print-reply=literal --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.getCurrentLayout | awk "{ print $2 }") index=$(($current+1)) lang=$(echo $layouts | cut -d, -f$index) echo "$lang | $datetime | $line" || exit 1 done

То есть, текущая раскладка будет показана перед датой/временем.

Если же Вы таки решились поставить на ноутбук i3wm, Вам скорее всего захочется в строке статуса отображать уровень заряда батареи и уровень сигнала wifi. Отображение уровня заряда батареи можно настроить стандартными средствами в файле /etc/i3status.conf (возможно, поменять надо будет индекс батареи с 0 на 1, или наоборот в зависимости от ноутбука):
battery 1 { format = "%status %percentage - %remaining" low_threshold = 30 threshold_type = time # toggle actual capacity/design capacity #last_full_capacity = true hide_seconds = true integer_battery_capacity = true } Аналогично, возможно надо будет поиграться с индексом звукового устройства для отображения громкости:
volume master { format = "♪: %volume" format_muted = "♪: muted (%volume)" device = "pulse:0" } Саму же громкось в данном случае регулирую через программу pavucontrol (если у вас тоже Pulse, то настройки по сути те же).

Ну а вот уровень сигнала wifi было "достать" не так просто. Лично мне удалось через CLI (Command Line Interface) Network Manager-а. Возможно, найдете лучший способ. Кстати, искать беспроводные сети и подключаться к ним можно через этот же nmcli. Итак, финальная версия скрипта i3status.sh для ноутбука:
#!/bin/sh # shell script to prepend i3status with more stuff i3status | while: do read line layouts=$(setxkbmap -query | awk "/layout/{print $2}") current=$(dbus-send --print-reply=literal --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.getCurrentLayout | awk "{ print $2 }") index=$(($current+1)) lang=$(echo $layouts | cut -d, -f$index) wifi=$(nmcli d wifi | grep "^\*" | grep -v "\*.*SSID" | awk "{ print $8 }") datetime=$(date +"%Y-%m-%d %H:%M:%S") echo "$lang | W: $wifi | $line | $datetime" || exit 1 done Ах, ну и ещё отключить "клик мышки" на тачпаде, это страшно бесит. Нужно добавить строчку (# - комментарий, не обязательно добавлять, но хорошо проясняет следующую строчку) в файл ~/.config/i3/config:
# Turn off tap click (single finger, two finger, and 3 finger) exec synclient TapButton1=0 TapButton2=0 TapButton3=0 Иконки. Почему-то именно иконка Dropbox не хочет нормально отображаться в i3bar. Оказывается, нужно запустить dbus перед стартом dropbox, но в какой только скрипт Я не пробовал это засунуть, а Dropbox по-прежнему запускался без иконки. Пока что решил эту проблему тем, что создал скрипт dropbox_fix.sh и прописал такую строчку:

Dropbox stop; dbus-launch; dropbox start & И теперь каждый раз когда вижу, что нет иконки, запускаю этот скрипт. Иногда бывают проблемы с отображением иконок Skype и даже Thunderbird. Это лечится проще - просто перезагрузкой i3 "на месте" (никак не влияет на все запущенные программы), обычно это комбинация mod+shift+r. Да, ещё раз напомню, что багов таких мелких хватает, но плюсов в i3wm Я увидел больше, да и рабочий компьютер у меня не выключается месяцами, а значит "стартовые багофиксы" выполняю очень редко.

Далее, что ещё нужно знать о настройках - в конфиг файле ~/.config/i3/config ваша выбранная клавиша-модификатор будет обозначаться как $mod, клавиша alt обозначается как Mod1, клавиша win - Mod4. Все остальные клавиши таких специальных обозначений не имеют. Настроить несколько мониторов можно в этом же файле используя команду xrandr.
И ещё одна важная вещь - скриншоты тоже надо настроить! Но и это не проблема. Сначала ставим утилиту scrot - легкая, быстрая и конфигурабельная. Обычний снимок (весь экран) вешаю на кнопку PrintScreen, а на Alt+PrintScreen - снимок текущего (активного) окна. Поскольку клавиша Alt сама является модификатором, то самый легкий способ привязать данную комбинацию - это указать альтернативное значение кнопки PrintScreen, то есть - SysRq. Итого в файл ~/.config/i3/config добавляем следующие строчки:

# Take screenshots bindsym Print exec scrot "%Y-%m-%d_%H:%M:%S.png" -e "mv $f ~/Pictures/" bindsym Mod1+Sys_Req exec scrot -u "%Y-%m-%d_%H:%M:%S.png" -e "mv $f ~/Pictures/" В результате все скриншоты будут попадать в папку ~/Pictures. При желани можно наконфигурить ещё больше гибкости. Вот пример скриншота с i3wm:

руководство для конечного пользователя по запуску приложения на различных операционных системах и платформах

Установка

Apple iOS

Установка c "App Store" на iPad, iPhone, iPod touch:

Войдите в учетную запись (магазин) iTunes на iOS устройстве. Перейдите по ссылке на i3 pro или введите "i3 pro" в Поиске. Установите приложение.

Ограничение доступа

Гид-доступ (Guided Access) – «режим ограниченного использования» Apple iOS, стандартная опция iOS начиная с iOS 6.

Гид-доступ позволяет заблокировать кнопку Home, чтобы нельзя было выйти из приложения. Также позволяет оставить активной только часть экрана, ограничивая работу с его областями. Постановка и снятие гид-доступа осуществляется с использованием кода-пароля. Экран блокировки и "сон" продолжают работать.

настройка:

Настройки > Основные > Универсальный доступ > Гид-доступ

Режим полезен при использовании iPad, iPhone, iPod touch как стационарной панели в магазине, гостинице, на демо-стенде, в шоу-руме, на выставке и т.д.


Google Android

Приложение доступно для установки с Google Play или сайта iRidium Mobile:

  • Установка с Google Play

Откройте Google Play на Android устройстве, найдите приложение i3 pro через Поиск и установите его.

Если Google Play не позволяет установить i3 pro ("приложение не поддерживается этим устройством"):

  1. Откройте Настройки Android устройства.
  2. Разрешите установку сторонних приложений, пункт "Неизвестные источники". Обычно этот пункт находится в разделе "Безопасность > Администрирование устройства". Однако, в зависимости от версии Andorid, он может находиться в другом разделе, например, "Приложения".
  3. Скачайте файл.apk приложения i3 pro с сайта iRidium через браузер вашего Android устройства.
  4. Запустите установку приложения через меню "Загрузки" или из файлового менеджера (например, "File Expert").

Также вы можете скачать и установить файл.apk приложения на свой ПК, а потом загрузить на карту памяти Android устройства для установки через файловый менеджер.

Microsoft Windows

Скачайте и установите с сайта iRidium Mobile приложение i3 pro в составе дистрибутива iRidium (Setup ). Приложение i3 pro.exe доступно в "Пуск > Все программы > iRidium Pro > iRidium Client".

Apple Mac OS X

  • Приложение доступно для установки с сайта iRidium Mobile:

Скачайте дистрибутив i3 pro для OS X , распакуйте архив с программой двойным кликом и скопируйте приложение в папку Applications (Программы).

  • Установка через программу iTunes на ПК или Mac:

Запустите приложение iTunes на ПК или Mac, в Поиске App Store введите "i3 pro", загрузите приложение. Синхронизируйте устройство с iTunes.

Авторизация в приложении

1 Нажмите кнопку LOGIN & PASSWORD .

Кнопка QR-CODE предназначена для пользователей системы BYOD.

2 Введите свой e-mail и пароль, затем нажмите кнопку SIGN IN .

Загрузка и запуск проекта

Проект автоматизации загружается с облака iRidium. Интегратор/разработчик должен предоставить доступ конечному пользователю к объекту, чтобы проект был доступен ему после авторизации.

По прямой ссылке

Просто нажмите кнопку "облако со стрелкой" на против требуемого проекта из списка.

С помощью встроенного сканера QR-кода

1 Смахните по экрану слева-направо. Появится системное меню.

2 Нажмите кнопку SCAN QR-CODE .

3 Отсканируйте предоставленный QR-код.

С помощью стороннего сканера QR-кода

1 Предварительно скачайте приложение i3 pro и авторизуйтесь в нем.

Как вы, должно быть, помните, моим первым тайловым оконным менеджером был Xmonad . Он вполне устраивает меня на стационарном компьютере, но, к сожалению, на EeePC с ним много возни — нужно допиливать индикатор батареи, выводить куда-то уровень сигнала Wi-Fi и тп. После небольшой консультации с народом в Twitter’е , я решил попробовать оконный менеджер i3.

Устанавливается i3 примерно так (ох уж эта Бубунта):

sudo apt-get install i3 i3status i3lock dmenu

Завершаем работу в текущем оконном менеджере, вводим имя пользователя и пароль, выбираем оконный менеджер i3. При первом запуске i3 спросит вас, создать ли дефолтный конфиг (да, само собой разумеется) и что использовать в качестве Mod-клавиши (Win, потому что она все равно ни для чего не нужна).

Все, мы работаем под i3. Основные сочетания клавиш следующее:

  • Mod + Enter — открыть новый терминал;
  • Mod + D — запустить любую программу через dmenu;
  • Mod + 0..9 — переключение между workspace’ами;
  • Mod + Shift + 0..9 — перемещение окон в заданный workspace;
  • Mod + Shift + Q — закрыть текущее окно;
  • Mod + Стрелочки — перемещение между окнами, вместо стрелочек также могут быть использованы клавиши «J» (влево), «K» (вниз), «L» (вверх) и «;» (вправо);
  • Mod + Shift + Стрелочки — перемещение окон в пределах workspace’а, вместо стрелочек также могут быть использованы буковки и точка с запятой;
  • Mod + V — использовать вертикальное разбиение;
  • Mod + H — использовать горизонтальное разбиение;
  • Mod + E — размещение окон по-умолчанию (default layout);
  • Mod + S — стековое размещение (stacking layout);
  • Mod + W — размещение с табами (tabbed layout);
  • Mod + F — раскрыть окно во весь экран или свернуть его обратно;
  • Mod + Shift + Пробел — разрешить свободное перемещение окна (floating mode) или вернуть его в мозаику;
  • Mod + Shift + R — рестартонуть i3 (например, после обновления конфига);
  • Mod + Shift + E — выйти из i3;

Изменить размеры окон можно перетягивая их границы с помощью мыши. Также можно перейти в режим изменения размера окна нажатием Mod + R. В этом режиме с помощью стрелочек или буковок вы выбираете границу окна, со стороны которой окно нужно уменьшить или, если нажат Shift, увеличить. Возврат в обычный режим осуществляется нажатием Enter или Escape.

Теперь рассмотрим следующий скриншот (кликабелен):

Чтобы добиться такого расположения окон, сначала я переключился на вертикальное разбиение (Mod + V) и создал три окна (Mod + Enter). Затем я по очереди выбрал каждое из трех окон (Mod + Стрелочки), для каждого из них переключился на горизонтальное разбиение (Mod + H) и создал еще по два окна. В верхнем ряду я оставил расположение по умолчанию, в среднем переключился на размещение с табами (Mod + W), а в нижнем — на стековое размещение (Mod + S).

Важным моментом здесь является то, что окна в i3 образуют древовидную структуру (с родителями и потомками). Изменение способа разбиения (Mod + H/V) создает новый контейнер (поддерево), а переключение layout’а действует только на текущий контейнер. За счет такого подхода i3 позволяет добиться куда более сложного расположения окон, чем Xmonad.

Основные конфигурационные файлы i3 — это ~/.i3/config и ~/.i3status.conf.

В ~/.i3/config я дописал:

bindsym $mod+t border toggle

Exec dropbox start
exec wicd-client -t
exec gxneur &

Bar {
position top
status_command i3status
}

Первой строчкой я повесил на сочетание Mod + T изменение border style. По-умолчанию окна в i3 имеют заголовки и границы, которые могут оказаться совершенно лишними, если у вас, например, во весь экран открыт Chrome.

Следующие три строчки добавляют на автозапуск некоторые программы. С Dropbox все понятно. Утилита wicd — это такая штука, которая висит в трее и позволяет управлять подключением к проводным и беспроводным сетям. Устанавливается она следующим образом:

sudo apt-get install wicd
sudo / etc/ init.d/ wicd start

Чтобы NetworkManager не мешал работе wicd, говорим:

sudo stop network-manager

Обратите также внимание на консольный аналог wicd, утилиту wicd-curses.

Дополнение: Все оказалось намного проще:

exec nm-applet &
exec blueman-applet &

Xneur, думаю, не нуждается в представлении. Его я использовал просто в качестве индикатора текущей раскладки клавиатуры (без которого, впрочем, вполне можно обойтись). Устанавливается xneur следующим образом:

sudo apt-get install xneur gxneur

В конце конифга (блок bar) я говорю отображать панельку с часами, треем и так далее вверху экрана, а не внизу, как это делается по-умолчанию.

За основу ~/.i3status.conf я взял файл /etc/i3status.conf. В нем я поправил формат отображения текущей даты, изменил имена сетевых интерфейсов, убрал лишнюю информацию об IPv6, DHCP и VPN . Не вижу смысла приводить здесь результат. Что радует в i3, так это интуитивно понятный формат конфигов и хорошая документация.

Ну и последним штрихом будет добавление в ~/.bashrc следующей строки:

alias lockscreen ="i3lock -c 000000"

Утилита i3lock предназначена для блокировки экрана. В отличие от многих аналогичных утилит она вообще ничего не показывает пользователю. То есть экран тупо остается черным (цвет можно изменить) до тех пор, пока не будет введен пароль текущего пользователя. Помимо определенного цвета также можно использовать картинку в формате PNG.