i3 konfigurácia pre notebook: ako znížiť výkon na 100 %?

Nedávno som si uvedomil, že môj notebook nie je dostatočne výkonný. Nemá dostatok energie na to, aby zhrnul všetko: Vim (+ 20 doplnkov), VSCode (+ rovnaký počet rozšírení), Google Chrome (+ 20 kariet) atď. Zdalo by sa, že ide o bežný problém na notebookoch so 4 GB RAM, ale nevzdal som sa. Milujem notebooky, pretože sú kompaktné a tiež preto, že môžu bežať na batériu kdekoľvek. Potreboval som len prísť na to, ako uvoľniť extra RAM a tiež zvýšiť energetickú účinnosť.

i3 konfigurácia pre notebook: ako znížiť výkon na 100 %?

Ak potrebujete konfigurácie ihneď, prejdite nadol na časť „Analýza inštalácie“

Operačný systém

Keďže potrebujem OS, ktorý spotrebuje čo najmenej RAM a batérie, vybral som si Arch Linux. Klasika, nič nové. Jeho úložiská mi umožnia zautomatizovať množstvo zbytočnej práce, a AUR ušetrí ešte viac času.

Správca okien

Rozhodol som sa použiť radšej správcu okien ako plnohodnotné prostredie. Aj keď mám tenisky (KDE) rád, stále dosť žerú, vzhľadom na to, že vyťahujú pomerne veľa knižníc a závislostí. No a samotné DE kvôli všemožným zbytočným widgetom žerie pomerne dosť.

i3 konfigurácia pre notebook: ako znížiť výkon na 100 %?

Poďme rozobrať inštaláciu

Najprv musíme nainštalovať všetky hlavné balíčky (musíme niečo nakonfigurovať)

sudo pacman -Sy --noconfirm i3 i3-gaps base-devel rofi okular feh vim code picom kitty ranger git xdotool xautolock i3lock-color scrot imagemagick rxvt-unicode urxvt-perls

Tu je približná schéma toho, ako bude všetko fungovať

i3 konfigurácia pre notebook: ako znížiť výkon na 100 %?

Ktoré balíčky sú potrebné na čo?

balíček
Prečo potrebujeme

xwinwrap
Potrebné na inštaláciu súborov s príponou .gif ako animovaných tapiet

polybar
Je potrebný na zobrazenie hornej lišty v správcovi okien

i3
Samotný správca okien

i3-medzery
Rozšírenie správcu okien

base-devel
Komponenty potrebné na inštaláciu polybaru

rofi
Spúšťač aplikácií

okulár
Prehliadač dokumentov

Zathura
Prehliadač dokumentov (nepodporuje veľa rozšírení, ale je minimalistickejší)

feh
Program na prezeranie obrázkov a tiež na nastavenie obrázkov na pozadí

elán
Hlavný redaktor

kód
Dodatočný editor

picom
Composer (program, ktorý vytvára tiene, priehľadnosť, rozostrenie pozadia)

mačiatko
Hlavný terminál

urxvt
Prídavný terminál

naložiť
Správca súborov

ísť
Systém kontroly verzií

xdotool
Nástroj, ktorý vám pomôže pri vývoji skriptov a interakcii s oknami

xautolock
Nástroj, ktorý uzamkne počítač, keď nie je aktívny, a spustí i3-lock

i3lock-color
Vylepšená verzia i3lock. Program je potrebný na uzamknutie počítača a zadanie hesla

scrot
Minimalistická aplikácia na vytváranie snímok obrazovky

ImageMagick
Program, ktorý vám pomôže pracovať s obrázkami (vopred ich rozmazáva, konvertuje, mení rozlíšenie)

Konfigurácia i3

i3 - Správca okien, ktorý nespotrebováva veľa zdrojov, preto nám bude užitočný pri „napodobňovaní“ iných bežných správcov okien. (K darčeku samozrejme patrí obklad – možnosť správcu okien otvárať aplikácie na celú voľnú časť obrazovky)

Konfiguráciu poskytnem i3 po častiach, aby všetkému rozumeli aj začiatočníci. Začnime tým najdôležitejším – tlačidlom $Mod. Slúži na interakciu s i3. Prejdú ním všetky hlavné klávesové skratky.

### Tweaks ###
# Set main key (Win)
set $mod Mod4

Ďalej naučíme nášho správcu okien presúvať okná myšou po kliknutí $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

Nainštalujeme písma pre naše aplikácie, ako aj pre aplikácie, ktoré sú závislé na i3

# Fonts
font pango: JetBrains Mono 10

Mojou predstavou bolo na začiatku vyrobiť všetky okná lietanie (čo, ako sa ukázalo, je veľmi pohodlné). Pre objasnenie: v i3 existuje veľa druhov dokovanie okná (Tilling, Fullscreen, Tabbed, Float, Stacking), všetky sú vhodné v rôznych situáciách, ale nevidím v tom zmysel všetko okná vypĺňajúce celú obrazovku. Radšej ich pri stlačení nechajte naplniť $mod + f, ale predvolene visieť vo vzduchu, čo som urobil v nasledujúcom kúsku kódu:

# 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

Aby ste sa nemýlili výrazom (1920 - 10)/2 and (1080 - 10)/2 znamená, že každé okno bude zaberať štvrtinu obrazovky a bude tam aj odsadenie (od seba) presne 5 pixelov (5 na všetkých stranách).

Ďalej spojme všetky hlavné aplikácie. Všetky klávesové skratky sa snažia zodpovedať tejto schéme

i3 konfigurácia pre notebook: ako znížiť výkon na 100 %?

## Keyboard Settings ##
# Apps
bindsym $mod+Return exec kitty
bindsym $mod+Mod1+r exec "kitty sh -c 'ranger'"
bindsym $mod+Mod1+g exec google-chrome-stable
bindsym $mod+Mod1+c exec code
bindsym $mod+Mod1+v exec dolphin
bindsym Print exec spectacle

Tiež budeme viazať všetky hlavné funkcie, ktoré vykonávame bez rozmýšľania a ktoré musia byť

# System / Volume
bindsym XF86AudioMute "exec amixer -D pulse sset Master toggle && notify-send "Volume" "Sound is (un)muted" --urgency low"
bindsym XF86AudioRaiseVolume "exec amixer -D pulse sset Master 5%+ && notify-send "Volume" "Volume added +5%n    Volume level is now $(amixer -D pulse get Master | awk -F 'Left:|[][]' 'BEGIN {RS=""}{ print $3 }')" --urgency low"
bindsym XF86AudioLowerVolume "exec amixer -D pulse sset Master 5%- && notify-send "Volume" "Volume added -5%n    Volume level is now $(amixer -D pulse get Master | awk -F 'Left:|[][]' 'BEGIN {RS=""}{ print $3 }')" --urgency low"

# System / Brightness
bindsym XF86MonBrightnessDown exec xbacklight -dec 5
bindsym XF86MonBrightnessUp exec xbacklight -inc 5

# Moving from one window to another
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right

# Choose one of your workspaces
bindsym $mod+1 workspace $workspace1
bindsym $mod+2 workspace $workspace2
bindsym $mod+3 workspace $workspace3
bindsym $mod+4 workspace $workspace4

# Move window to the workspace
bindsym $mod+Shift+1 move container to workspace $workspace1
bindsym $mod+Shift+2 move container to workspace $workspace2
bindsym $mod+Shift+3 move container to workspace $workspace3
bindsym $mod+Shift+4 move container to workspace $workspace4

## Floating manipulation ##
# Make window floating
bindsym $mod+f floating toggle
# Change focus
bindsym $mod+Shift+f focus mode_toggle

# Move windows
bindsym $mod+Shift+h move left 20px
bindsym $mod+Shift+j move down 20px
bindsym $mod+Shift+k move up 20px
bindsym $mod+Shift+l move right 20px

# Resizing Windows
bindsym $mod+Ctrl+l resize shrink width 10 px or 10 ppt
bindsym $mod+Ctrl+k resize grow height 10 px or 10 ppt
bindsym $mod+Ctrl+j resize shrink height 10 px or 10 ppt
bindsym $mod+Ctrl+h resize grow width 10 px or 10 ppt

# Make window fullscreen
bindcode 95 fullscreen toggle

# Reload Configuration
bindsym $mod+p reload

# Kill a window
bindsym $mod+x exec xdotool getwindowfocus windowkill

Urobme sekciu automatického spustenia

### Autostart ###
# Lockscreen after 10min delay
exec --no-startup-id "$HOME/.config/i3/lockscreen"
# Convert background gif to jpg
exec --no-startup-id convert -verbose $HOME/.config/i3/{gif.gif,gif.jpg}
# Generate Colorscheme
exec_always --no-startup-id wal -i $HOME/.config/i3/gif-0.jpg
# Compositor
exec_always --no-startup-id "killall -q picom; picom --config $HOME/.config/picom.conf"
# Language
exec --no-startup-id setxkbmap -model pc105 -layout us,ru -option grp:win_space_toggle
# Dunst
exec --no-startup-id dunst
# Kitty
exec kitty
# Dropbox
exec --no-startup-id dropbox &
# Polybar
exec_always --no-startup-id $HOME/.config/polybar/launch.sh
# Cursor
exec_always --no-startup-id xsetroot -cursor_name left_ptr

i3-medzery je zostava i3, ktorá pridáva mnoho nových funkcií. Jedným z nich je pridávanie odsadení (medzer), ktoré vizuálne vyzerajú veľmi dobre.

### i3-gaps ###
# Borders for windows
for_window [class=".*"] border pixel 5

# Gaps for i3bar
for_window [class="i3bar"] gaps outer current set 10

# Gaps
gaps inner 10
gaps outer 4

### Topbar and color theme ###
# Color theme of borders
client.focused              #bf616a #2f343f #d8dee8 #bf616a #d8dee8
client.focused_inactive     #2f343f #kf343f #d8dee8 #2f343f #2f343f
client.unfocused            #2f343f #2f343f #d8dee8 #2f343f #2f343f
client.urgent               #2f343f #2f343f #d8dee8 #2f343f #2f343f
client.placeholder          #2f343f #2f343f #d8dee8 #2f343f #2f343f
client.background           #2f343f

Čo sa stalo?

Výsledkom je pomerne minimalistická zostava na i3, ktorá na notebookoch funguje veľmi rýchlo a podáva dobrý výkon

i3 konfigurácia pre notebook: ako znížiť výkon na 100 %?

Keďže som napísal veľa konfigurácií (čo je jasne viditeľné na snímke obrazovky), možno ich nájsť v úložisku Skvelé i3.

Ešte pár screenshotov

i3 konfigurácia pre notebook: ako znížiť výkon na 100 %?

i3 konfigurácia pre notebook: ako znížiť výkon na 100 %?

i3 konfigurácia pre notebook: ako znížiť výkon na 100 %?

Zdroj: hab.com

Pridať komentár