summaryrefslogtreecommitdiff
path: root/README
blob: 3de1330484faa1251706c745eed976eb8bb75150 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
dwm - dynamic window manager
============================
dwm is an extremely fast, small, and dynamic window manager for X.


Requirements
------------
In order to build dwm you need the Xlib header files.


Installation
------------
Edit config.mk to match your local setup (dwm is installed into
the /usr/local namespace by default).

Afterwards enter the following command to build and install dwm (if
necessary as root):

    make clean install


Running dwm
-----------
Add the following line to your .xinitrc to start dwm using startx:

    exec dwm

In order to connect dwm to a specific display, make sure that
the DISPLAY environment variable is set correctly, e.g.:

    DISPLAY=foo.bar:1 exec dwm

(This will start dwm on display :1 of the host foo.bar.)

In order to display status info in the bar, you can do something
like this in your .xinitrc:

    while xsetroot -name "`date` `uptime | sed 's/.*,//'`"
    do
    	sleep 1
    done &
    exec dwm


Configuration
-------------
The configuration of dwm is done by creating a custom config.h
and (re)compiling the source code.

Patches
-------
systray - zoomswap - scratchpad - sticky - pertag - noborder - movestack - hide vacant tags - bar height - actualfullscreen - alpha monocle layout - bidi - fakefullscreenclient - moveresize - statuscmd

Fixes
-----
To fix systray and statuscmd conflicts:

 In the buttonpress function where you have this line:

	else if (ev->x > selmon->ww - statusw) {

and you have to make sure that it takes the width of the systray into account as well, so you end up with:

	else if (ev->x > selmon->ww - statusw - getsystraywidth()) {

Replace 

    drw_text(drw, m->ww - statusw + x, 0, tw, bh, 0, text, 0);

With 

    drw_text(drw, m->ww - statusw - stw + x, 0, tw, bh, 0, text, 0);


Fix for offset of clicks

    else if (ev->x > selmon->ww - statusw - getsystraywidth()) {
        x = selmon->ww - statusw - getsystraywidth(); //This wasn't there before