Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/christitustech/dwm-titus
My DWM configuration with everything pre-patched
https://github.com/christitustech/dwm-titus
Last synced: about 1 month ago
JSON representation
My DWM configuration with everything pre-patched
- Host: GitHub
- URL: https://github.com/christitustech/dwm-titus
- Owner: ChrisTitusTech
- License: mit
- Created: 2023-05-30T16:11:25.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-05-21T20:44:48.000Z (7 months ago)
- Last Synced: 2024-05-21T21:45:58.314Z (7 months ago)
- Language: C
- Homepage:
- Size: 6.38 MB
- Stars: 58
- Watchers: 5
- Forks: 37
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# dwm - dynamic window manager
### dwm is an extremely ***fast***, ***small***, and ***dynamic*** window manager for X.---
This is my **Personal Fork** with following patches:Click to see the list of patches
- alwayscenter
- alwaysfullscreen
- auto start
- cfacts
- chatterino bottom
- cool autostart
- fakefullscreen client (with resize fix for chrome-based browsers + noborder fix)
- multikeycode
- movestack
- noborder (floating + border flicker fix)
- pertag
- placemouse
- resizepoint
- statuscmd
- swallow
- systray
- true fullscreen
- hide vacant tags
- warp v2
- winicon**Note**: Some patches are rewritten or modified to work together.
## 📋 Prerequisites
This guide assumes your system has the latest updates before going ahead with the installation.> [!NOTE]
> You may want to keep the source directories of the tools you download in a suitable location for future reference as you may need to recompile them to apply configuration changes.Arch
Install dependencies:
```sh
sudo pacman -S --needed base-devel extra/git extra/libx11 extra/libxcb extra/libxinerama extra/libxft extra/imlib2
```If you find yourself missing a library then this can usually be found by searching for the file name using pacman:
```sh
$ pacman -F Xlib-xcb.h
extra/libx11 1.6.12-1 [installed: 1.7.2-1]
usr/include/X11/Xlib-xcb.h
```Debian/Ubuntu
Install dependencies:
```sh
sudo apt install build-essential git libx11-dev libx11-xcb-dev libxcb-res0-dev libxinerama-dev libxft-dev libimlib2-dev
```It is worth checking the version of gcc on debian based systems as they may come with older implementations that can result in compilation errors.
```sh
gcc --version
```You would expect at least v8.x or above here.
If you find yourself missing a library then this can usually be found by searching for the file name using apt-file, a tool that have to be installed separately:
```sh
$ sudo apt install apt-file
$ sudo apt-file update
$ apt-file search xcb/res.h
libxcb-res0-dev: /usr/include/xcb/res.h
```Void Linux
Install dependencies:
```sh
sudo xbps-install -Su base-devel libX11-devel libXft-devel libXinerama-devel freetype-devel fontconfig-devel libxcb-devel imlib2-devel
```If you find yourself missing a library then this can usually be found by searching for the file name using xlocate, a tool that have to be installed separately via the xtools package:
```sh
$ xlocate yajl/yajl_gen.h
yajl-devel-2.1.0._4 /usr/include/yajl/yajl_gen.h
```## 🛠️ Installation
Clone the repository, then compile and install.```sh
git clone https://github.com/ChrisTitusTech/dwm-titus.git && \
cd dwm-titus && \
make && \
sudo make install
```- A dwm.desktop file will be placed in `/usr/share/xsessions/` so if you are using a login manager you should now be able to select dwm as the window manager when logging in.
- If you do not use a login manager then you already know what you are doing. Add `exec dwm` at the end of your `~/.xinitrc` file.
> [!TIP]
> - By default new terminals are opened by using the keyboard shortcut of SUPER + X while rofi is started using SUPER+R
> - Check `config.h` for the keybindings, and change them according to your preference.