Dwm

Revision as of 21:02, January 14, 2015 by Causes (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

x11-wm/dwm


Current Maintainer(s):Ari Malinen
Source Repository:Causes Overlay
Homepage

Summary: dwm is extremely fast and lightweight window manager. It manages windows in tiled, floating and monocle layouts.


News

Drobbins

RSS/Atom Support

You can now follow this news feed at http://www.funtoo.org/news/atom.xml .
10 February 2015 by Drobbins
Drobbins

Creating a Friendly Funtoo Culture

This news item details some recent steps that have been taken to help ensure that Funtoo is a friendly and welcoming place for our users.
2 February 2015 by Drobbins
Mgorny

CPU FLAGS X86

CPU_FLAGS_X86 are being introduced to group together USE flags managing CPU instruction sets.
31 January 2015 by Mgorny
View More News...

Dwm

Tip

This is a wiki page. To edit it, 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.

Installation

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"
# emerge -av dwm

Configuration

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

Enable savedconfig.

/etc/portage/package.use
x11-wm/dwm savedconfig

Edit configuration file.

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

Rebuild dwm.

# emerge dwm

Basic usage

Shortcut Description
Alt META
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

Patching

Patches in /etc/portage/patches/x11-wm/dwm gets applied when emerging dwm. Patches has to have .patch file extension.

# mkdir -p /etc/portage/patches/x11-wm/dwm
# cd /etc/portage/patches/x11-wm/dwm
# wget -O dwm-6.0-pertag.patch http://dwm.suckless.org/patches/dwm-6.0-pertag.diff

Rebuild dwm.

# emerge dwm

Customize statusbar

dwm has statusbar that can be customized with xsetroot. You can run xsetroot from ~/.xinitrc. You can start dwm by configuring ~/.xinitrc and running startx.

~/.xinitrc
ifname="wlan0"
interval=5

rxs=0
txs=0

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


Starting

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

~/.xinitrc
exec dwm
$ startx

To autostart dwm on login see Getty as display manager.