ProHoster > Blog > administration > i3-konfiguration til en bærbar computer: hvordan reduceres ydeevnen til 100 %?
i3-konfiguration til en bærbar computer: hvordan reduceres ydeevnen til 100 %?
For nylig indså jeg, at min bærbare computer ikke er kraftig nok. Den har ikke strøm nok til at samle alt: Vim (+ 20 plugins), VSCode (+ det samme antal udvidelser), Google Chrome (+ 20 faner) og så videre. Det ser ud til at være et almindeligt problem på bærbare computere med 4 GB RAM, men jeg gav ikke op. Jeg elsker bærbare computere, fordi de er kompakte, og også fordi de kan køre på batteri overalt. Jeg skulle bare finde ud af, hvordan man frigør ekstra RAM og også øger energieffektiviteten.
Hvis du har brug for konfigurationer med det samme, så rul ned til afsnittet "Parsering af installationen"
Operativsystem
Da jeg har brug for et OS, der vil forbruge den mindste mængde RAM og batteri, valgte jeg Arch Linux. Klassisk, intet nyt. Hans arkiver vil give mig mulighed for at automatisere en masse unødvendigt arbejde, og AUR vil spare endnu mere tid.
Window manager
Jeg besluttede at bruge en vindueshåndtering i stedet for et fuldgyldigt miljø. Selvom jeg godt kan lide sneakers (KDE), spiser de stadig ret meget, på grund af det faktum, at de trækker ret mange biblioteker og afhængigheder op. Nå, DE selv bruger ret meget på grund af alle mulige unødvendige widgets.
Lad os skille installationen ad
Først skal vi installere alle hovedpakkerne (vi skal konfigurere noget)
Her er et groft diagram over, hvordan alt vil fungere
Hvilke pakker er nødvendige til hvad?
pakke
Hvad er nødvendigt
xwinwrap
Nødvendig for at installere filer med .gif-udvidelsen som animerede baggrunde
polybar
Nødvendig for at topbjælken kan vises i vindueshåndteringen
i3
Selve vinduesmanageren
i3-huller
Window Manager-udvidelse
base-udvikling
Komponenter, der kræves for at installere polybar
rofi
App-starter
okulate
Dokumentfremviser
Zathura
Dokumentfremviser (understøtter ikke mange udvidelser, men er mere minimalistisk)
FEH
Et program til visning af billeder og også til indstilling af baggrundsbilleder
vim
Hovedredaktør
kode
Ekstra redaktør
picom
Composer (et program, der skaber skygger, gennemsigtighed, baggrundssløring)
kitty
Hovedterminal
urxvt
Ekstra terminal
Ranger
Filhåndtering
git
Versionsstyringssystem
xdotool
Et værktøj, der hjælper med at udvikle scripts og interagere med Windows
xautolås
Et værktøj, der låser computeren, når den er inaktiv, og starter i3-lock
i3lock-farve
Forbedret version af i3lock. Programmet er nødvendigt for at låse computeren og indtaste en adgangskode
scrot
Minimalistisk app til at tage skærmbilleder
ImageMagick
Et program, der hjælper dig med at interagere med billeder (slører dem på forhånd, konverterer dem, ændrer opløsning)
Konfiguration af i3
i3 - En vinduesmanager, der ikke bruger mange ressourcer, så den vil være nyttig for os for at "emulere" andre almindelige vinduesadministratorer. (Gaven kommer selvfølgelig med flisebelægning - vinduesadministratorens mulighed for at åbne applikationer til hele den gratis del af skærmen)
Jeg vil levere konfigurationen i3 i dele, så selv begyndere forstår alt. Lad os starte med det vigtigste - knappen $Mod. Det tjener til at interagere med i3. Alle større genvejstaster vil passere igennem den.
### Tweaks ###
# Set main key (Win)
set $mod Mod4
Dernæst vil vi lære vores vinduesmanager at flytte vinduer med musen, når der klikkes $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
Vi vil installere skrifttyper til vores applikationer, såvel som til applikationer, der er afhængige af i3
# Fonts
font pango: JetBrains Mono 10
Min idé var at lave alle vinduerne i starten flyvende (hvilket, som det viste sig, er meget praktisk). Til afklaring: in i3 der er mange typer docking vinduer (Tilling, Fullscreen, Tabbed, Float, Stacking), alle er praktiske i forskellige situationer, men jeg kan ikke se meningen med at gøre det alle vinduer, der fylder hele skærmen. Lad dem hellere fylde det, når de trykkes $mod + f, men hæng i luften som standard, hvilket er hvad jeg gjorde i følgende stykke kode:
# 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
Så du ikke bliver forvirret af udtrykket (1920 - 10)/2 and (1080 - 10)/2 betyder, at hvert vindue vil optage en fjerdedel af skærmen, og der vil også være en indrykning (fra hinanden) på præcis 5 pixels (5 på alle sider).
Lad os derefter binde alle de vigtigste applikationer. Alle genvejstaster forsøger at matche dette skema