PekWM: lehký a lehce konfigurovatelný okenní manažer

Jaromír Vojtaj 3. 1. 2012

V prvním ze dvou článků o PekWM se krátce seznámíme s instalací potřebných balíčků, výběrem display manageru a nastavením spuštění DM a WM. Pak se krátce zaměřím na nastavení vzhledu PekWM a poslední část pak bude věnována úvodu do konfigurace prostředí a výběru přepínače virtuálních ploch.

Na základě diskuse k článku o LXDE a krátké zkušenosti při přípravě článku o desktopových prostředích jsem si řekl, že by nebylo od věci se ponořit ještě trochu víc do hloubky a zkusit jiné prostředí. V minulém článku jsem popisoval E17, takže mi bylo jasné, že moje požadavky by směřovaly trochu někam jinam. Jinam znamená směrem k ještě lehčím prostředím či okenním manažerům (dále jen WM).

Shodou okolností byl v diskusi zmíněn PekWM, který jsem znal jenom podle názvu a nikdy jsem ho předtím nezkoušel. Krátce jsem na něj narazil i v rámci přípravy na další článek. Po krátké zkoušce na virtuálním stroji jsem se rozhodl, že ho v dlouhodobějším testu nasadím na NTB. Toto rozhodnutí vzešlo z toho, že mě PekWM velmi příjemně překvapil svou lehkostí a funkčností a ještě víc svým systémem a stylem konfigurace. Dřív jsem trochu koketoval s Fluxboxem, ale PekWM mě oslovil mnohem víc a důrazněji. Další hodnocení ale nechám až na závěr článku.

O PekWM se už na Rootu před lety psalo. Bylo to ale už před delší dobou, takže by si určitě zasloužil znovu připomenout. Proto se hned pustím do popisu instalace na NTB s tím, že některé poznatky a obrázky jsou z NTB a jiné z virtuálního stroje.

Ke změně distribuce nebyl důvod, takže všechny návody, které se zde objeví a nevztahují se přímo k PekWM, fungují na Sabayonu. Z testovacích důvodů (na NTB nemám žádná důležitá data a i ta méně důležitá jsou zálohovaná) jsem chtěl vyzkoušet souborový systém BTRFS, takže jsem disk rozdělil na dva oddíly – /boot pod EXT2 a zbytek /root pod BTRFS bez dalších nastavení.

Z důvodu pohodlnosti (grafická instalace s možností defaultní češtiny a uživatelského dělení disků) jsem instaloval verzi CDX, která už obsahuje prostředí Fluxbox a Display Manager (dále jen DM) LXDM.

U DM bych se ještě rád zastavil a rozebral možnosti, které jsem v rámci akce vyzkoušel. Asi nejznámější jsou v tomto ohledu nejspíš GMD, KDM a XDM. Ani jeden z nich jsem ale použít nechtěl a proto jsem se zaměřil na další, asi už méně známou trojici: LightDM, LXDM a Slim. Je celkem možné, že některý z nich nenajdete ve své oblíbené distribuci a jejích repozitářích, ale všechny lze stáhnout přímo z vlastních stránek (LightDM, Slim, LXDM).

Slim a LXDM jsou si podobné v tom, že oba vyžadují ručně zadávat jméno uživatele i heslo. U LightDM je možné uživatele vybírat ze zobrazeného seznamu a zadávat pouze uživatelské heslo.

LXDM a LightDM mají možnost restartovat nebo vypnout stroj přímo z menu, u Slim je nutné zadávat ručně příkazy a k tomu ještě administrátorské heslo. Uvedené DM se dramatický liší svou velikostí a počtem závislostí. Když jsem to srovnal při čisté instalaci bez grafického prostředí, tak to bylo v daném pořadí takto:

LightDM – 608 MB, LXDM – 388 MB, Slim – 17,5 MB. Pro ilustraci uvedu instalační velikost i dalších zmíněných DM: XDM – 28,5 MB, GDM – 1041 MB a KDM – 1407 MB.

Pro vlastní potřebu jediného uživatele nebyl problém zvolit Slim. O jeho nevýhodě jsem psal výše, takže se zaměřím na výhody. Určitě se jedná o malý a nenáročný DM. Dá se velmi snadno konfigurovat a kromě jiného je možné ho využít pro nastavení pozadí pracovní plochy. Za výhodu také považuji možnost z něj přejít do terminálu, a to příkazem console (pro vypnutí slouží příkaz halt, pro restart je určen příkaz reboot, oba vyžadují administrátorské heslo).

Kromě Slimu je samozřejmě nutné instalovat i balíček pro PekWM. Balíčky jsou vlastně dva. První je samotný DM (balíček pekwm) a další témata (balíček pekwm-themes-hewphoria). Já jsem instaloval pouze samotný PekWM (důvody uvedu později). Po instalaci těchto balíčků je možné přikročit k nastavení systému tak, aby se při startu spustil Slim a z něj pak bylo možné nastartovat WM.

Spuštění Slimu se jednoduše nastaví v souboru /etc/conf.d/xdm . V něm je pouze jeden řádek textu, a ten změníme takto:

DISPLAYMANAGER="slim"

Nyní je možné odinstalovat LXDM, který s sebou nebere žádné závislosti. Kon­figurační soubor Slim je /etc/slim.conf . Zde je třeba zkontrolovat nebo změnit následující volby:

numlock = on nebo off

current_theme default

Odkomentovat a doplnit následující řádek takto:

sessions pekwm, fluxbox

Naopak zakomentovat řádek

sessionsdir /usr/share/xsessions

Na základě těchto nastavení se po bootu objeví Slim tak, jak vypadá na obrázku 1. Pokud se pouze zadá přihlašovací jméno a heslo, tak se následně nastartuje do X Windows. Pro volbu jednoho z instalovaných prostředí je třeba stisknout F1. Jeho opakovaný stisk vybírá postupně všechny možnosti ze seznamu v řádku sessions – viz obrázek.

Po startu WM zůstane zachované pozadí plochy, které bylo nastavené ve Slimu. Toho je možné využít a pomocí Slimu nastavit nebo dokonce měnit pozadí. Pokud se instaluje balíček slim-themes, je možné další témata najít v adresáři /usr/share/slim/the­mes .

Pak stačí do souboru /etc/slim.conf doplnit něco jako je zde:

current_theme default,lake,wave,Zenwalk

Uvedené názvy musejí korespondovat s názvy témat z výše uvedeného adresáře. Při každém restartu nebo odhlášení se pak náhodně mění téma Slimu a také pozadí plochy podle toho, která témata jsou v konfiguraci uvedena.

Než se pustím do vlastní konfigurace, krátce se zmíním o nastavení vzhledu. Ten se může nastavit pomocí změny tématu a nebo pomocí jiných nástrojů pro volbu vzhledu (např. lxappearance). Co se týká témat, tak ty z výše uvedeného distribučního balíčku mě moc nenadchly. Pro jsem pátral dál a našel jsem balíček jiný, a sice z repozitářů Debianu: pekwm-themes1.0.5–1_all.deb .

V něm je obsažen adresář /usr/share/pek­wm/themes s 15 tématy. Stačí je překopírovat do stejného adresáře v systému a vše je připravené na změnu. Pokud je v systému jenom jeden uživatel, je možné témata nakopírovat do adresáře ~/.pekwm/themes . Není moc dobré dávat témata do obou uvedených adresářů, aby se neobjevila 2× v přehledu voleb v menu. Je také možné upravit konfiguraci v souboru ~/.pekwm/menu, kde je kromě jiného volba tématu z hlavního menu:

Submenu = "Pekwm" {
Submenu = "Themes" {
Entry { Actions = "Dynamic /usr/share/pekwm/scripts/pekwm_themeset.sh /usr/share/pekwm/themes" }
Entry { Actions = "Dynamic /usr/share/pekwm/scripts/pekwm_themeset.sh ~/.pekwm/themes" }        }

Zde je možné nastavit adresář, ze kterého se budou témata vybírat.

Já jsem provedl pomocí lxappearance změnu Widget i Motivu ikon na nimbus (balíček gtk-engines-nimbus).

Z témat jsou celkem zajímavé nimbus a vista_black, pro některé možná i leopard (vzhled OS X).

Po spuštění v defaultní konfiguraci je systém sice ihned použitelný, ale přece jenom omezeně. Hlavně se to týká hlavního menu. To má sice spoustu možností, ale ne vhodných pro každého – viz obrázek.

Možností pro změnu konfigurace je tu opravdu hodně, ale všechny jsou hezky koncentrované do jednoho adresáře a změna či nová konfigurace se provádí velmi jednoduše. Obsah tohoto adresáře ~/.pekwm je vidět na dalším obrázku.

Jak je vidět, souborů zde není moc. Na komplexní nastavení systému to ale bohatě stačí. Začnu tím abecedně posledním a nejjednodušším: ~/.pekwm/vars. Víc možná napoví jeho defaultní jednořádkový obsah:

$TERM=“xterm -fn fixed +sb -bg white -fb black“

Jak je asi zřejmé, je zde možné definovat proměnné, které se dále používají v jiných konfiguračních souborech. Já xterm jako základní terminál nepoužívám, takže jsem tento řádek změnil následovně:

$TERM="sakura"

Dalším jednoduchým konfiguračním souborem je ~/.pekwm/history. V konkrétním případě má tento obsah:

    leafpad
    sakura
    pcmanfm

Jedná se o seznam aplikací, které byly spuštěny pomocí defaultního spouštěče. Ten je možné vyvolat z hlavního menu příkazem Run... nebo klávesovou zkratkou Win+D. Jeho vzhled ne na obrázku 5. Pomocí šipek je možná v dialogu procházet historii a stiskem Enter vybranou aplikaci spustit.

Dalším souborem je ~/.pekwm/config. Ten je trochu rozsáhlejší, takže na jeho defaultní obsah jenom odkážu – příloha č. 1 - config.txt.

Jak název i obsah napovídá, jedná se o základní konfigurační soubor prostředí. K němu patří i další soubor, a to sice ~/.pekwm/auto­properties. Jeho standardní obsah je v příloze č.2 – autoproperti­es.txt.

Tento soubor je vlastně template, kde se nastavují vlastnosti jednotlivých aplikací a oken pro jejich spouštění. Ani jeden z těchto souborů jsem nijak neupravoval a nechal je v původním stavu.

Než se pustím do zbytku konfigurace a popisu dalších souborů, bude třeba udělat krátkou, ale důležitou odbočku směrem ke způsobu práce a ovládání WM a celého systému.

Některé ovládací nástroje jsou obsažené už v defaultní instalaci. Jedná se o již zmíněné hlavní menu, spouštěč aplikací a virtuální plochy včetně jejich přepínání (defaultně je nastaveno 9 virtuálních ploch). Tyto nástroje zůstanou zachované, dojde pouze k úpravě počtu a způsobu přepínání virtuálních ploch.

K tomu se přidají další tři aplikace, které ovládání doplní. Jedná se o Tint2, který jsem popisoval v článku o LXDE. Tentokrát bude nasazen kompletní, to jest včetně hodin a systray. K tomu není třeba upravovat konfiguraci Tint2 (provedl jsem pouze zmenšení panelu na 90% a změnil zarovnání na pravý okraj obrazovky). Je ale nutné upravit konfiguraci Fluxboxu. To se provede úpravou souboru ~/.fluxbox/init .

V řádku session.screen0­.toolbar.tool­s: je třeba odstranit položku systemtray, případně také iconbar . Pak stačí restartovat WM a Tint2 už bude zobrazovat tray ikony.

Další bude spouštěč aplikací grun. Mohlo by se zdát, že je zbytečný, když už je obsažený a funkční spouštěč ve WM. Jsem na něj ale zvyklý a nabízí určitě víc možností, takže ho přidávám.

Poslední bude přepínač virtuálních ploch. Zase by se mohl zdát zbytečný, ale při popisu konfigurace vysvětlím, proč jsem se rozhodl ho zatím nasadit. Všechna prostředí nebo WM, které jsem doposud používal, měly své vlastní přepínače. Proto bylo nutné najít a vybrat takový, který by bylo možné použít samostatně.

Nejjednodušší bylo hledat přímo v repozitáři distribuce. Tam jsem našel čtyři pagery:

bbpager, fbpager, wmpager a netwmpager

widgety

Kromě prvního nemají žádná závislosti. BBPager si sebou bere i WM BlackBox, takže je pak jeho celková velikost 4 MB. Ostatní tři mají kolem 1 MB. Podle informací na netu by mohl být zajímavý také ipager, ale v repozitáři není balíček pro platformu x86.

V příštím článku dokončím popis vybraného pageru a jeho nastavení a podrobněji představím i ostatní uvedené nástroje pro ovládání systému. Pak bude následovat dokončení popisu konfigurace WM a závěrečné hodnocení.

Našli jste v článku chybu?
Podnikatel.cz: Byla finanční manažerka, teď cvičí jógu

Byla finanční manažerka, teď cvičí jógu

Vitalia.cz: Test dětských svačinek: Tyhle ne!

Test dětských svačinek: Tyhle ne!

Lupa.cz: Blíží se konec Wi-Fi sítí bez hesla?

Blíží se konec Wi-Fi sítí bez hesla?

Vitalia.cz: Tahák, jak vyzrát nad zápachem z úst

Tahák, jak vyzrát nad zápachem z úst

DigiZone.cz: Ultra HD v praxi a v Portugalsku

Ultra HD v praxi a v Portugalsku

Vitalia.cz: Tohle jsou nejlepší česká piva podle odborníků

Tohle jsou nejlepší česká piva podle odborníků

DigiZone.cz: Technisat připravuje trojici DAB

Technisat připravuje trojici DAB

Podnikatel.cz: „Lex Babiš“ Babišovi paradoxně pomůže

„Lex Babiš“ Babišovi paradoxně pomůže

Vitalia.cz: 5 chyb, které děláme při skladování potravin

5 chyb, které děláme při skladování potravin

Lupa.cz: Proč jsou firemní počítače pomalé?

Proč jsou firemní počítače pomalé?

Lupa.cz: Jak levné procesory změnily svět?

Jak levné procesory změnily svět?

DigiZone.cz: Nova opět stahuje „milionáře“

Nova opět stahuje „milionáře“

Vitalia.cz: Tradiční čínská medicína a rakovina

Tradiční čínská medicína a rakovina

Lupa.cz: Adblock Plus začal prodávat reklamy

Adblock Plus začal prodávat reklamy

DigiZone.cz: Světový pohár v přímém přenosu na ČT

Světový pohár v přímém přenosu na ČT

DigiZone.cz: DVB-T2 ověřeno: seznam TV zveřejněn

DVB-T2 ověřeno: seznam TV zveřejněn

Podnikatel.cz: Tyto pojmy k #EET byste měli znát

Tyto pojmy k #EET byste měli znát

Vitalia.cz: dTest odhalil ten nejlepší kečup

dTest odhalil ten nejlepší kečup

120na80.cz: Nejsilnější alergeny jsou pryč

Nejsilnější alergeny jsou pryč

Podnikatel.cz: Udělali jsme velkou chybu, napsal Čupr

Udělali jsme velkou chybu, napsal Čupr