dwm
DWM ist ein tiling Windowmanager. Die Vorzüge von DWM liegen in seiner sehr geringen Größe (wenige k) und seiner hohen Geschwindigkeit. Die hohe Geschwindigkeit wird unter anderem durch den Verzicht auf Configdateien erreicht, Einstellungen müssen in einer header-datei geändert und das gesamte Programm neu compiliert werden.
Installation
Das Programm ist als
dwm
in community
verfügbar, und kann von dort
mittels Pacman
installiert werden.
Konfiguration
Um DWM zu konfigurieren muss die Datei config.h geändert werden und das Paket neu gebaut werden. Hierzu müssen einige Voraussetzungen erfüllt sein.
Voraussetzungen
Es wird die Programmgruppe base-devel und abs benötigt um DWM zu kompilieren.
pacman -S base-devel abs
Herunterladen der build scripts mit ABS
Sobald die benötigten Pakete installiert sind, benutzen wir ABS um die DWM build scripts herunter zu laden.
abs community/dwm cp -r /var/abs/community/dwm ~/dwm
Bauen und installieren des Paketes
wechsele mit cd in das Verzeichnis und führe makepkg aus
cd ~/dwm makepkg -i
Dies kompiliert DWM, erstellt ein Arch Packet und installiert es in einem Rutsch.
Einstellungen
Einstellungen können nun ganz leicht in ~/dwm/config.h geändert werden. Nachdem man die gewünschten Einstellungen geändert hat, muss man DWM neu bauen. Zunächst muss die MD5 Checksumme für die geänderte config.h bzw. das Paket generiert werden
makepkg -g >> PKGBUILD
Danach baut man DWM mit
makepkg -efi
Hat man keine Fehler in der config.h gemacht wurde DWM nun mit den neuen Einstellungen gebaut.
Patches
Einen Patch welchen ich für äußerst praktisch erachte ist der nextprevtag-patch. Mit dem nextprevtag-patch lassen sich bequem die Tags mit den Pfeiltasten wechseln. Dazu folgenden C-Code als nextprevtag.c ins src Verzeichnis von dwm kopieren:
Danach fügt man folgendes in seine config.h ein:
static Key keys[] = { /* ... */ { MODKEY, XK_Right, view_adjacent, { .i = +1 } }, { MODKEY, XK_Left, view_adjacent, { .i = -1 } }, /* ... */ };
static Button buttons[] = { /* ... */ { ClkTagBar, 0, Button4, view_adjacent, { .i = -1 } }, { ClkTagBar, 0, Button5, view_adjacent, { .i = +1 } }, /* ... */ };
und includiert nextprevtag.c kurz vor "static Key keys[] = {" mit #include nextprevtag.c
DWM starten
Um DWM mit startx zu starten, muss es nur in die ~/.xinitrc eingetragen werden.
exec dwm