From Funtoo
Revision as of 16:56, April 18, 2015 by Gatorchomps (talk | contribs) (more grammar fixes)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search



We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.


A program launcher is needed to run programs from dwm. You can choose dmenu or rofi.

   /etc/portage/make.conf - Set dmenu USE-flag
USE="$USE dmenu"
root # emerge -av dwm


dwm is configured by editing /etc/portage/savedconfig/x11-wm/dwm-6.0 and rebuilding.

Enable savedconfig.

x11-wm/dwm savedconfig

Edit configuration file.

root # nano /etc/portage/savedconfig/x11-wm/dwm-6.0

Rebuild dwm.

root # emerge dwm

Basic usage

Shortcut Description
META+p Run program with dmenu
META+3 Move to tag number 3
META+j / k Move to next / previous client
META+i / d Increase / decrease master clients
META+Enter Move client to master area
META+h / l Resize master area
META+t / f / m Switch to title / floating / monocle layout
shift+META+c Kill client
shift+META+3 Move client to tag 3
shift+META+Enter Run terminal
shift+META+q Quit dwm


Patches in /etc/portage/patches/x11-wm/dwm are applied when emerging dwm. Patches must have a .patch file extension.

root # mkdir -p /etc/portage/patches/x11-wm/dwm
root # cd /etc/portage/patches/x11-wm/dwm
root # wget -O dwm-6.0-pertag.patch

Rebuild dwm.

root # emerge dwm

Customize statusbar

Dwm has a statusbar that can be customized with xsetroot. You can run xsetroot from ~/.xinitrc.



while true; do
        temp="$(cat /sys/class/thermal/thermal_zone1/temp | cut -b1,2)C"
        load="$(cat /proc/loadavg | cut -d " " -f 1)"
        bandwidth="${rxs}KiB/s ${txs}KiB/s"
        batusage="$(cat /sys/class/power_supply/BAT0/capacity)%"
        batstatus="$(cat /sys/class/power_supply/BAT0/status)"
        date="$(date +"%a %d.%m %H:%M")"

        xsetroot -name "$temp $load | $bandwidth | $batusage $batstatus | $date"

        rx1=$(cat /sys/class/net/$ifname/statistics/rx_bytes)
        tx1=$(cat /sys/class/net/$ifname/statistics/tx_bytes)
        sleep $interval
        rx2=$(cat /sys/class/net/$ifname/statistics/rx_bytes)
        tx2=$(cat /sys/class/net/$ifname/statistics/tx_bytes)
        rxs=$(expr $rx2 - $rx1)
        txs=$(expr $tx2 - $tx1)
        rxs=$(expr $rxs / $interval)
        txs=$(expr $txs / $interval)
        rxs=$(expr $rxs / 1024)
        txs=$(expr $txs / 1024)
done &

exec dwm


You can start dwm by configuring ~/.xinitrc and running startx.

exec dwm
user $ startx

To autostart dwm on login see Getty as display manager.