I3Wm folytatása

i3wm
I3 ablakkezelő

Az alapvető rendezési, beállítási feladatokkal lassan végzünk az I3Wm rendszer alatt. Már az érdekesebb lépések jönnek, több átgondolandó döntéssel. A múlt rész végén említettem az összetettebb kombinációkat. Én jelenleg úgy döntöttem, hogy ezekre nincs szükségem, így nem rakom bele a konfigba. Ha később elfogynának a billentyűkiosztások a programokhoz, vagy strukturáltabban szeretném rendszerezni őket, akkor visszatérek ezekre.
Hasonlóképp nemet mondtam a billentyűzettel való átméretezésekre is, így azt a blokkot törölni fogom.
Bár nem kötelező, én jellemzően kitörölöm azokat a sorokat, amikre nincs szükségem. Így sokkal rövidebb lesz az amúgy sem kis terjedelmű I3Wm konfiguráció. Ha valami kell később vissza lehet másolni. Egy idő után már kialakul az az elvárt szolgáltatás köre, amit valóban használok. Csak az marad, ami kell.

Meglévő bejegyzések rendezése

A rendezett konfiguráció érdekében egy lépésben átnézem a meglévő alap konfig megmaradt részét. Ezt követi majd a saját beállítások, programok és asztal hozzárendelések.

exec –no-startup-id dex –autostart –environment i3

A dex rendszert használhatjuk, ha azt szeretnénk, hogy az XFCE (és egyéb felület) alatt megszokott módszerrel egy könyvtárba elhelyezett desktop szerint induljon az autostart. Én ezt most nem szeretném, mert saját, az I3Wm rendszerhez rendelt autostart fájlból indítom az általános programokat, az I3Wm programjait pedig a konfigból. A meglévő XFCE autostart könyvtárat is használhatnám, de akkor indulhatna olyan is, ami kifejezetten az XFCE rendszer része, és az I3Wm alatt nem akarom indítani.

exec –no-startup-id xss-lock –transfer-sleep-lock — i3lock –nofork

A monitor zárolást végzi el, ami nekem nem kell.

bindsym $mod+d exec –no-startup-id dmenu_run

Nem kell, ez egy egyszerű, jól használható programindító a dmenu segítségével. A monitor felső élén jeleníti meg a menüsort. Egy próbát megér.
Én másikat használok, így erre nincs szükségem.

exec –no-startup-id nm-applet

Ez már érdekesebb, egy hálózati kütyü, ami a báron jelenik meg. Egyelőre bekerül a saját programok indítása közé. Kikommentelve, hiszen még nincs panelom.

Kitérő

Miért nem a panel beállításával kezdtem? Hiszen van kész panelom, egy teljesen testre szabott tint2-es. Mert így rákényszerítettem magam, hogy csakis az I3Wm alap beállításával, és grafikus panel, indító és startmenü nélkül, az asztalok grafikus mozgatása nélkül végezzem el a munkát. A gyakorlás és minden kipróbálása fontos, mert csak így ismeri meg az ember a rendszerét. A panel kényelmes, és jó dolog, de eltunyulunk, ha csak azt használjuk.

Egyéb programok indítása, beállítása

Én az egyéb programokon az I3Wm rendszeréhez tartozó kisebb, saját eszközöket értem. Ide azok kerülnek, melyek az I3Wm saját konfigjába kerülnek. Illetve azok a saját billentyűkombinációk, amik valami mód pluszt adnak a rendszerhez.

Kiegészítő ablakelrendezések beállítása

Az I3Wm elég sok ablaktípust ismer, plusz pár olyan program létezik, ami kiegészítő lehetőségeket nyújt. Ezeket érdemes kipróbálni, mert adhatnak pluszt a rendszerhez. majd kiválasztani azt, ami nekem kell. Én egyet használok folyamatosan, amit most fel is rakom.
Az első lépés a pip3 install i3ipc ami többször kellhet az I3Wm alatt, így nem árt, ha már most fenn van, ezt követi az awesome-auto-layout i3wm layout telepítése. Ami gyakorlatilag két fájl, amit be kell másolni. Nem egy nagy dolog. A következő lépésként kapjon egy kombinációt.

bindsym $mod+a exec –no-startup-id ~/.config/i3/script/awesome-auto-layout

Próba, és léphetünk tovább.
Én használok egy nagyon egyszerű megoldást, hogy rögvest a következő üres asztalta ugorjak, azaz egy üres munkaterületet kapjak. Ez nálam egy fájlba van beírva, az egyszerűség kedvéért.
maga a szkript egyszerű:

i3-msg workspace $(echo $(seq 1 10) $(i3-msg -t get_workspaces | sed 's/},{/\n/g' | awk -F, '{print $3}' | awk -F: '{print $2}' | sed "s/\"//g" | sort -n) | tr ' ' '\n' | sort -n | uniq -u | head -n 1)

Ennek a neve uresasztal, amit szeretnék meghívni, így kap egy kombinációt:

bindsym $mod+udiaeresis exec –no-startup-id ~/.config/i3/script/uresasztal

Ami mindenképp kell

A grafikus programoknál kell valami jelszókezelő eszköz, amit használhatnak, Ebből van több is, én megszokásból a

exec –no-startup-id /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1

megoldást választottam. Sok esetben azért nem tudjuk, hogy ilyen is kell, mert ez automatikusan indul a legtöbb rendszerben, így nem jelenthet gondot. itt is figyelni kell a névre, mert nem feltétlen pontosan ilyen lesz. Rendszerenként eltérhet a pontos név. Miért is lenne ugyanaz minden disztribúcióban?

Programok indítása

A programok indítása és azok asztalhoz rendelése már egy kicsit komolyabb feladat, amit jól át kell gondolni. Tipikusan olyan feladat, amit másolni nem lehet. Mi induljon, melyik asztalon, és ha valami indul, akkor az miképp nézzen ki? Ezt csak lépésenként lehet megtenni.

Induláskor induló programok

Azok köre amiket az I3Wm indulásakor szeretnénk indítani. Ezeket az autostartban soroljuk fel.

## Conky
conky -c ~/.config/i3/script/alap.conky &
## Sxhkd
sxhkd -c ~/.config/i3/script/sxhkd &
## Tint2 panel
tint2 &
## Felhasználói programok
caprine &
discord &

Ez önmagában nem jelent gondot. Amikor ide bekerül egy program azonnal érdemes meghatározni melyik asztalon induljon.

Asztalhoz rendelés

Az asztalhoz rendelésről a leírásban az I3Wm oldalán elég jól kifejtett segítséget találhatsz, érdemes átnézni.

for_window [class="discord|Discord"] move to workspace $ws2
for_window [class="caprine|Caprine"] move to workspace $ws2

Bár többféle megadási módja van, én ezt használom. A fenti két programot a kettes asztalhoz rendeltem, így minden olyan eszköz, ami az internetes kommunikációhoz kell, erre az asztalra kerül.

Gyorsbillentyűk?

A legtöbb környezetben jól működő sxhkd-t választottam. Bár az I3Wm saját konfigurációjánál megadhatnám ezeket, de mivel máshol is felhasználásra kerülnek, így jobb kettéválasztani: ami általános az sxhkd, ami pedig speciálisan I3Wm az a saját konfigjába kerül.

## Audacity
alt + a
    audacity

## CinGG
alt + c
    ~/bin/CinGG

A minta is mutatja, hogy én az összevont, egybeírt módszert kerülöm, minden egyes bejegyzés külön blokkot kap. Nekem így átláthatóbb. Amikor ide bekerül egy-egy program. ha kell, rögvest megkapja az asztalhoz rendelést. A két konfigurációs fájlt párhuzamosan érdemes szerkeszteni, akkor nem marad el semmi.
Itt is érdemes valami rendszert összeállítani, mert a sok gyorsbillentyű megtanulása, megszokása nem kis feladat! Ha alapvetően nem készségszinten használjuk a billentyűzést, akkor minek is használunk olyan megoldást, aminél ez alapvető elvárás? A Win nálam az I3Wm-hez tartozó kombinációkat indítja, a Alt pedig a program indításokat. Így hatékonyabb.

Programok kinézete

Az I3Wm alatt elég jól beállíthatjuk, hogy mi hogyan és hol jelenjen meg. Itt is a leírásukra hivatkozom: el kell olvasni.
A programok megfelelő tulajdonságait a xprop segítségével lehet lekérdezni, így gyorsan megkapjuk a várt eredmény.

Kétfelé bontottam ezt a szakaszt. Az elsőben az általánosan megadható ablaktípusokat rendeztem össze:

for_window [window_role="GtkFileChooserDialog"] resize set 800 600
for_window [window_role="GtkFileChooserDialog"] move position center
for_window [title="Default - Wine desktop"] floating enable
for_window [title="Copy To"] floating enable
for_window [title="Move To"] floating enable
for_window [class="^custom-float-no-border$"] floating enable
for_window [class="^custom-float-no-border$"] border pixel 0
for_window [title="float"] floating enable, resize set 520 300, move position 1370 40, focus
for_window [title="floating"] floating enable, resize set 1280 600, move position center, focus

A konkrét programoknál legtöbbször a class= megadása jó, én, amikor lehet ezeket használom.

for_window [class=”pavucontrol|Pavucontrol”] floating enable, move position 700 40, resize set 520 630
for_window [class=”pavucontrol|Pavucontrol”] move to workspace $ws6

Lebegjen, hol jelenjen meg és mekkora legyen… Ahogy látni nem egy nagy feladat ezt meghatározni. Bár a két sort lehetne egyesíteni, én az asztalhoz rendelést és a megjelenítést elválasztva adtam meg. Így nem lesz olyan hosszú sor, talán így átláthatóbb.

Ez leírva egyszerű, de amíg összeállítja az ember, az hosszabb idő. De megéri, mert egyszer kell összerakni, majd sokáig nem lesz ezzel probléma. Amikor egy-egy programnál felmerül a beállítási igény, akkor azonnal érdemes a szabályokat megadni. Fél perc alatt megadható a megfelelő beállítás, és nem marad el. Annak sincs nagy értelme, hogy kényelemből ne használjuk ki ezt! Igaz macerás, hiszen úgy tűnik, mintha munka közben időnként ide-oda ugrálnánk…

Ahogy láttátok az előző bejegyzés óra hosszabb idő telt el- Ez csak azért volt így, mert én párhuzamosan állogatom a rendszert és írom ezt a sorozatot. Így a hosszabb időt kívánó beállításoknál lassabban lesz meg a bejegyzés,