Канфігурацыя i3 пад наўтбук: як звесці прадукцыйнасць на 100%?
Нядаўна я зразумеў, што мой наўтбук недастаткова прадукцыйны. Яму не хапае магутнасці вывезці ўсё разам: Vim (+ 20 плагінаў), VSCode (+ столькі ж пашырэнняў), Google Chrome (+ 20 укладак) і гэтак далей. Здавалася б, звычайная праблема на наўтбуках з 4 ГБ АЗП, аднак я не стаў здавацца. Я люблю наўтбукі за іх кампактнасць, а таксама за тое, што яны могуць працаваць на батарэі дзе заўгодна. Мне трэба было проста падумаць, як вызваліць лішнюю АЗП, а таксама павялічыць энергаэфектыўнасць.
Калі вам патрэбныя адразу канфігі, то прагортвайце ўніз да часткі "Разбіраны ўсталёўачку"
Аперацыйная сістэма
Так як мне патрэбна АС, якая будзе жэрці найменшую колькасць АЗП і батарэі, я абраў Arch Linux. Класіка, нічога новага. Яго рэпазітары дазволяць мне аўтаматызаваць кучу непатрэбнай працы, а AUR дазволіць скараціць яшчэ больш часу.
Мэнэджар вокнаў
Я вырашыў узяць менавіта мэнэджар вокнаў, а не паўнавартаснае асяроддзе. Хоць мне і падабаюцца кеды (KDE), але яны ўсё роўна ядуць дастаткова шмат, з-за таго, што яны падцягваюць за сабой дастаткова шмат бібліятэк і залежнасцяў. Ну і сама па сабе DE'шка жрэ досыць шмат з-за ўсякіх непатрэбных віджэтаў.
Разбіраны ўстаноўачку
Для пачатку нам трэба ўсталяваць усе асноўныя пакеты (трэба ж нам нешта канфігураваць)
xwinwrap
Патрэбны для ўсталёўкі файлаў з пашырэннем .gif у выглядзе анімаваных шпалер.
polybar
Патрэбны для таго, каб у мэнэджэры вокнаў адлюстроўваўся топбар.
i3
Сам аконны менеджэр
i3-прабелы
Пашырэнне для аконнага мэнэджара
база-распрацоўка
Кампаненты неабходныя для ўстаноўкі polybar
rofi
Праграма для запуску прыкладанняў
акуляр
Праграма для прагляду дакументаў
Затура
Праграма для прагляду дакументаў (падтрымлівае не так шмат пашырэнняў, аднак больш мінімалістычная)
фе
Праграма для прагляду карцінак, а таксама для ўстаноўкі фонавых малюнкаў
напор
Асноўны рэдактар
код
Дадатковы рэдактар
picom
Кампазітар (праграма якая стварае цені, празрыстасць, блюрыць фон)
кацяня
Асноўны тэрмінал
urxvt
Дадатковы тэрмінал
рэйнджар
файлавы менеджэр
мярзотнік
Сістэма кантролю версій
xdotool
Утыліта, якая дапаможа пры распрацоўцы скрыптоў і ўзаемадзеянні з вокнамі
xautolock
Утыліта, якая блакуе кампутар пры бяздзейнасці і запускае i3-lock
i3lock-color
Палепшаная версія i3lock. Праграма патрэбна для блакавання кампутара і ўводу пароля
Scrot
Мінімалістычнае прыкладанне для стварэння скрыншотаў
Вобраз
Праграма, якая дапаможа пры ўзаемадзеянні з малюначкамі (захапляе іх загадзя, канвертуе, мяняе дазвол)
Канфігуруем i3
i3 - Аконны менеджэр, які не спажывае шмат рэсурсаў, тым самым, ён будзе карысны нам для таго, каб "эмуляваць" іншыя звычайныя аконныя менеджэры. (У падарунак вядома ж ідзе тылінг - здольнасць аконнага мэнэджара раскрываць прыкладанні на ўсю вольную частку экрана)
Я буду прыводзіць канфіг i3 па частках, для таго, каб нават навічкі ўсё зразумелі. Пачнем з самага галоўнага - кнопка $Mod. Яна служыць для таго, каб ўзаемадзейнічаць з i3. Праз яе будуць праходзіць усе асноўныя хоткеі.
### Tweaks ###
# Set main key (Win)
set $mod Mod4
Далей навучым наш аконны менеджэр рухаць вокны мышшу пры націску $mod
# Press MOD key and click on mouse to move your window
floating_modifier $mod
# Focus doesn't follow the mouse
focus_follows_mouse no
Усталюем шрыфты для нашых прыкладанняў, а таксама для прыкладанняў, якія залежаць ад i3
# Fonts
font pango: JetBrains Mono 10
Маёй задумкай было зрабіць усё вокны першапачаткова лятаючымі (што, як аказалася, вельмі зручна). Для тлумачэння: у i3 ёсць шмат відаў стыкоўкі вокнаў (Tilling, Fullscreen, Tabbed, Float, Stacking), усе яны зручныя ў розных сітуацыях, аднак я не бачу сэнсу рабіць ўсё вокны запаўняюць увесь экран. Няхай лепш яны запаўняюць яго пры націску $mod + f, а вісяць у паветры па змаўчанні, гэта я і зрабіў у наступным кавалку кода:
# Maximum width for floating windows
floating_minimum_size 400 x 350
floating_maximum_size 1800 x 900
# (1920 - 10)/2 and (1080 - 10)/2
for_window [class=".*"] floating enable
for_window [class=".*"] resize set 955 535
for_window [class=".*"] focus
Для таго, каб вы не блыталіся выраз (1920 - 10)/2 and (1080 - 10)/2 азначае, што кожнае акно будзе займаць чвэрць экрана, а таксама будзе водступ (сябар ад сябра) роўна ў 5 пікселяў (5 з усіх бакоў).
Далей давайце забіндзім усе асноўныя прыкладанні. Усе хоткеи імкнуцца адпавядаць дадзенай схеме