# My DWM config

This repository contains my configuration of DWM 

## About

![DWM Logo](img/dwmlogo.png)

DWM is a dynamic window manager for X developed by [suckless.org](https://dwm.suckless.org). It is designed to be extremely fast and small. 

It manages windows in tiled, monocle and floating layouts. All of the layouts can be applied dynamically, optimising the environment for the application in use and the task performed.

## Screenshots

| Empty desktop               | Desktop with terminal emulators opened |
|-----------------------------|----------------------------------------|
| ![Screenshot #1](img/1.png) | ![Screenshot #2](img/2.png)            |

## Installation 

#### Step 1. Xlib files

Run this terminal command to install the dependencies

* *Debian GNU/Linux*: `sudo apt install make gcc libx11-dev libxft-dev libxinerama-dev xorg git`

#### Step 2. DWM installation 

This command will build DWM from source and install it. Binary will be stored in `/usr/local/bin`

```sudo make clean install```

#### Step 3. ST installation *[Optional]*

ST is a simple terminal implementation. 

Installation: 

1. `git clone https://git.suckless.org/st`
2. `cd st`
3. `make clean install`

**Important**: if you don't use ST, you should change the terminal app in `config.h`

#### Step 4. Rofi installation *[Optional]*

Rofi is an application launcher. You can just download it from your distribution's repository.

* *Debian GNU/Linux*: `sudo apt install rofi`

**Important**: if you don't use Rofi, you should change or remove the application launcher in `config.h`

#### Step 5. X dotfiles

1. Copy `.xinitrc` file to the `home` folder: `cp misc/.xinitrc ~/.xinitrc`
2. Copy session file `dwm.desktop` file to the `xsessions` folder: `cp misc/dwm.desktop /usr/share/xsessions/dwm.desktop`
3. Create `.xsession` symbolic link: `ln -s ~/.xinitrc ~/.xsession`
4. *[Optional]* Remove other `.desktop` files from `/usr/share/xsessions`

#### Step 6. Wallpaper 

Download from your distribution's repository `feh` tool.

* *Debian GNU/Linux*: `sudo apt install feh`

**Important**: Default background file name - `~/.background.jpg`. You can change it in `.xinitrc` file. 

#### Step 7. LightDM configuration

Install LightDM from your distribution's repository. 

* Debian GNU/Linux: `sudo apt install lightdm`

#### Step 8. Reboot 

## License 

DWM is a free software. You can run, modify and redistribute it under [MIT/X Consortium License](LICENSE) 
