aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
blob: f23f2f6969ba0f7503b75db772069934178a7330 (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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# README in progress

# Joe's dwm (the dynamic window manager) build

The original [dwm](https://dwm.suckless.org/) desktop manager build I used to run.  
Based on version 6.2.

As I am not using dwm anymore, developpement on my build might be stuck on this version.

## Dependencies

#### Required:
+ `gcc`
+ `make`
+ `xorg`
+ `libX11`
+ `libXft`

#### Optional:
+ `st` find my custom improved build [here](https://github.com/JozanLeClerc/st-laptop)
+ `slock`
+ `dmenu`

## Installation

To install this open a terminal and run these commands:
```shell
git clone https://github.com/JozanLeClerc/dwm-laptop.git
cd dwm-laptop
sudo make clean install
```
To use it as a default WM, if you are using xinit, add this to your `.xinitrc`:
```shell
exec dwm
```
I am not shure about how to set it up on regular desktop managers like `gdm` or `lightdm`.

## Bindings

**"Window"** or **"tile"** is being called **"stack"** in this segment as it an apropriate name.

Some of the main key bindings:
+ **switch** to workspace 1-10 with `super+{F1-F10}`
+ **show all workspaces** at once with `super+F12`
+ **move** selected stack to workspace 1-10 with `super+shift+{F1-F10}`
+ **fire up** `st` terminal with `super+return`. See how to set it to another terminal emulator in [optional config](https://github.com/JozanLeClerc/dwm-laptop/blob/master/README.md#optional-config) 
+ **kill** selected stack with `super+q`
+ **cycle through** stacks down/up with `super+j/k`
+ **move** selected stack down/up with `super+shift+j/k`
+ **resize** master stack to left/right with `super+h/l`
+ **invoke** `dmenu_run` application launcher with `super+p`. Get it [here](https://tools.suckless.org/dmenu/)
+ **invoke** `slock` screen locker with `super+shift+l`. Get it [here](https://tools.suckless.org/slock/)
+ **invoke** `qutebrowser` if installed with `super+3`. See how to set it up to your favorite web browser in [optional config](https://github.com/JozanLeClerc/dwm-laptop/blob/master/README.md#optional-config)
+ toggle **normal tiled mode** with `super+s`
+ toggle **alternative tiled mode** with `super+shift+s`
+ toggle **maximized mode** (monocle) on selected stack with `super+f`
+ toggle **floating mode** on selected stack with `super+space`
+ toggle **top bar** with `super+escape`. Hidden by default
+ **exit** dwm with `super+shift+e`

## Optional config

You might want to change my `st` invocation to your terminal emulator of choice.  
To do exactly this change:  
```c
static const char *termcmd[] = { "st", NULL };
```  
to:  
```c
static const char *termcmd[] = { "your-beloved-terminal-emulator", NULL };
```  
in `config.h` on **line 80**.


For web browsers change:
```c
static const char *qbcmd[]  = { "qutebrowser", NULL };
```
to:  
```c
static const char *qbcmd[]  = { "your-favorite-web-browser", NULL };
```  
in `config.h` on **line 81**.

## Patches

Patches list to come:

+
+
+
+

My own autostart script can be found under my [dotfiles](https://github.com/JozanLeClerc/dotfiles) repository. It should be placed in `~/.dwm` directory.