Konfigurimi i3 për një laptop: si të zvogëloni performancën në 100%?

Kohët e fundit kuptova se laptopi im nuk është mjaft i fuqishëm. Nuk ka fuqi të mjaftueshme për të marrë gjithçka së bashku: Vim (+ 20 shtojca), VSCode (+ i njëjti numër shtesash), Google Chrome (+ 20 skeda) e kështu me radhë. Do të duket të jetë një problem i zakonshëm në laptopët me 4 GB RAM, por nuk u dorëzova. I dua laptopët sepse janë kompakt dhe gjithashtu sepse mund të punojnë me bateri kudo. Thjesht më duhej të kuptoja se si të liroj RAM shtesë dhe gjithashtu të rris efikasitetin e energjisë.

Konfigurimi i3 për një laptop: si të zvogëloni performancën në 100%?

Nëse keni nevojë për konfigurime menjëherë, atëherë lëvizni poshtë në seksionin "Parsim i instalimit"

Sistem operativ

Meqenëse kam nevojë për një OS që do të konsumojë më pak RAM dhe bateri, zgjodha Arch Linux. Klasike, asgjë e re. Depot e tij do të më lejojnë të automatizoj shumë punë të panevojshme, dhe AUR do të kursejë edhe më shumë kohë.

Menaxher i dritares

Vendosa të përdor një menaxher dritaresh në vend të një mjedisi të plotë. Megjithëse më pëlqejnë atletet (KDE), ato ende hanë shumë, për faktin se tërheqin mjaft biblioteka dhe varësi. Epo, vetë DE konsumon shumë për shkak të të gjitha llojeve të miniaplikacioneve të panevojshme.

Konfigurimi i3 për një laptop: si të zvogëloni performancën në 100%?

Le të çmontojmë instalimin

Së pari duhet të instalojmë të gjitha paketat kryesore (duhet të konfigurojmë diçka)

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

Këtu është një diagram i përafërt se si do të funksionojë gjithçka

Konfigurimi i3 për një laptop: si të zvogëloni performancën në 100%?

Cilat paketa nevojiten për çfarë?

paketë
Çfarë nevojitet

xwinmbështjell
Nevojitet për të instaluar skedarë me shtesën .gif si sfonde të animuara

polibar
Nevojitet që shiriti i sipërm të shfaqet në menaxherin e dritareve

i3
Vetë menaxheri i dritares

boshllëqet i3
Zgjatja e menaxherit të dritares

zhvillim bazë
Komponentët e nevojshëm për të instaluar polibarin

rofi
Lëshuesi i aplikacionit

okulate
Shikuesi i dokumenteve

zathura
Shikuesi i dokumenteve (nuk mbështet shumë shtesa, por është më minimalist)

feh
Një program për shikimin e fotove dhe gjithashtu për vendosjen e imazheve të sfondit

vrull
Redaktori kryesor

kod
Redaktor shtesë

picom
Kompozitori (një program që krijon hije, transparencë, turbullim të sfondit)

kotele
Terminali kryesor

urxvt
Terminali shtesë

endacak
Skedari

git
Sistemi i kontrollit të versionit

xdotool
Një mjet që do të ndihmojë në zhvillimin e skripteve dhe ndërveprimin me Windows

xautolock
Një mjet që bllokon kompjuterin kur është joaktiv dhe hap i3-lock

i3lock-color
Versioni i përmirësuar i i3lock. Programi nevojitet për të kyçur kompjuterin dhe për të futur një fjalëkalim

skrot
Aplikacion minimalist për marrjen e pamjeve të ekranit

ImageMagick
Një program që do t'ju ndihmojë të ndërveproni me fotografitë (i turbullon ato paraprakisht, i konverton ato, ndryshon rezolucionin)

Konfigurimi i i3

i3 - Një menaxher i dritareve që nuk konsumon shumë burime, kështu që do të jetë i dobishëm për ne për të "imituar" menaxherët e tjerë të rregullt të dritareve. (Dhurata, natyrisht, vjen me pllaka - aftësia e menaxherit të dritares për të hapur aplikacione në të gjithë pjesën e lirë të ekranit)

Unë do të jap konfigurimin i3 në pjesë, në mënyrë që edhe fillestarët të kuptojnë gjithçka. Le të fillojmë me gjënë më të rëndësishme - butonin $Mod. Shërben për të bashkëvepruar me i3. Të gjithë çelësat kryesorë kryesorë do të kalojnë përmes tij.

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

Më pas, ne do të mësojmë menaxherin tonë të dritareve të lëvizë dritaret me miun kur klikohet $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

Ne do të instalojmë fontet për aplikacionet tona, si dhe për aplikacionet që varen nga i3

# Fonts
font pango: JetBrains Mono 10

Ideja ime ishte që fillimisht të bëja të gjitha dritaret duke fluturuar (i cili, siç doli, është shumë i përshtatshëm). Për sqarim: në i3 ka shumë lloje ankorimi dritaret (punim, ekran të plotë, me skeda, lundrues, grumbullim), të gjitha ato janë të përshtatshme në situata të ndryshme, por nuk e shoh kuptimin për të bërë të gjithë dritaret që mbushin të gjithë ekranin. Më mirë lërini ta mbushin kur shtypen $mod + f, por qëndroni në ajër si parazgjedhje, gjë që bëra në pjesën e mëposhtme të kodit:

# 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

Që të mos ngatërrohesh nga shprehja (1920 - 10)/2 and (1080 - 10)/2 do të thotë që çdo dritare do të zërë një të katërtën e ekranit, dhe gjithashtu do të ketë një dhëmbëzim (nga njëri-tjetri) prej saktësisht 5 pikselësh (5 në të gjitha anët).

Tjetra, le të lidhim të gjitha aplikacionet kryesore. Të gjithë çelësat e nxehtë përpiqen të përputhen me këtë skemë

Konfigurimi i3 për një laptop: si të zvogëloni performancën në 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

Gjithashtu, ne do të lidhim të gjitha funksionet kryesore që kryejmë pa menduar dhe që duhet të jenë

# 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

Le të bëjmë një seksion autostart

### 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

boshllëqet i3 është një ndërtim i3 që shton shumë veçori të reja. Një prej tyre është shtimi i indenseve (boshllëqeve), të cilat vizualisht duken shumë mirë.

### 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

Cfare ndodhi?

Dhe rezultati është një montim mjaft minimalist në i3, i cili funksionon shumë shpejt në laptopë dhe jep performancë të mirë

Konfigurimi i3 për një laptop: si të zvogëloni performancën në 100%?

Meqenëse kam shkruar shumë konfigurime (të cilat janë qartë të dukshme në pamjen e ekranit), ato mund të gjenden në depo I3 i shkëlqyeshëm.

Disa pamje të tjera të ekranit

Konfigurimi i3 për një laptop: si të zvogëloni performancën në 100%?

Konfigurimi i3 për një laptop: si të zvogëloni performancën në 100%?

Konfigurimi i3 për një laptop: si të zvogëloni performancën në 100%?

Burimi: www.habr.com

Shto një koment