| 1 | This git repository contains my personal branch of dwm-6.4. |
| 2 | |
| 3 | The changes made to stock dwm add the following abilities. |
| 4 | |
| 5 | - Replaced stock 'tile' layout with 'flextile'. |
| 6 | <https://dwm.suckless.org/patches/flextile/> |
| 7 | |
| 8 | - Added new layout with three columns, master in the middle. |
| 9 | <https://dwm.suckless.org/patches/three-column/> |
| 10 | |
| 11 | - Draw per-client indicators in the tag section of the status bar. |
| 12 | <https://dwm.suckless.org/patches/clientindicators/> |
| 13 | |
| 14 | - Prompt the user before exiting/restarting dwm. |
| 15 | <https://dwm.suckless.org/patches/quitprompt/> |
| 16 | |
| 17 | - Assign text names to tags at runtime. |
| 18 | <https://dwm.suckless.org/patches/nametag/> |
| 19 | |
| 20 | - Layout menu popup presents available layouts. |
| 21 | <https://dwm.suckless.org/patches/layoutmenu/> |
| 22 | |
| 23 | - Select multiple tags for simultaneous display or window assignment. |
| 24 | <https://dwm.suckless.org/patches/combo/> |
| 25 | |
| 26 | - Deselect ALL tags, displaying an empty desktop. |
| 27 | <https://dwm.suckless.org/patches/emptyview/> |
| 28 | |
| 29 | - Center window names in status bar. |
| 30 | <https://dwm.suckless.org/patches/centeredwindowname/> |
| 31 | |
| 32 | - Active client has wide, red border. |
| 33 | |
| 34 | - Customized rules/keybindings in `config.h`. |
| 35 | |
| 36 | In addition to the usual dependencies and installation tasks for dwm (see the |
| 37 | original README at the bottom of this file), there are the following new |
| 38 | dependencies/tasks. |
| 39 | |
| 40 | - xmenu from <https://github.com/phillbush/xmenu>. This requires freetype2 |
| 41 | and imlib2, available in FreeBSD's ports collection under `print/freetype2` |
| 42 | and `graphics/imlib2`. This is required for the layout menu popup. |
| 43 | |
| 44 | - Customize (if needed) and install `layoutmenu.sh` somewhere in your `$PATH`. |
| 45 | Remember to make it executable. |
| 46 | |
| 47 | - Build and install SGK version of dwmstatus, then call from `.xinitrc`. |
| 48 | |
| 49 | Possible patches to consider in the future: |
| 50 | |
| 51 | - https://dwm.suckless.org/patches/cfacts/ |
| 52 | |
| 53 | - https://dwm.suckless.org/patches/mark/ |
| 54 | |
| 55 | - https://dwm.suckless.org/patches/monocle_count/ |
| 56 | |
| 57 | - https://dwm.suckless.org/patches/preserveonrestart/ |
| 58 | |
| 59 | - https://dwm.suckless.org/patches/swallow/ |
| 60 | |
| 61 | ================================================================================ |
| 62 | ================================================================================ |
| 63 | ================================================================================ |
| 64 | |
| 65 | Below is the original dwm README file. |
| 66 | |
| 67 | ================================================================================ |
| 68 | ================================================================================ |
| 69 | ================================================================================ |
| 70 | |
| 71 | |
| 72 | dwm - dynamic window manager |
| 73 | ============================ |
| 74 | dwm is an extremely fast, small, and dynamic window manager for X. |
| 75 | |
| 76 | |
| 77 | Requirements |
| 78 | ------------ |
| 79 | In order to build dwm you need the Xlib header files. |
| 80 | |
| 81 | |
| 82 | Installation |
| 83 | ------------ |
| 84 | Edit config.mk to match your local setup (dwm is installed into |
| 85 | the /usr/local namespace by default). |
| 86 | |
| 87 | Afterwards enter the following command to build and install dwm (if |
| 88 | necessary as root): |
| 89 | |
| 90 | make clean install |
| 91 | |
| 92 | |
| 93 | Running dwm |
| 94 | ----------- |
| 95 | Add the following line to your .xinitrc to start dwm using startx: |
| 96 | |
| 97 | exec dwm |
| 98 | |
| 99 | In order to connect dwm to a specific display, make sure that |
| 100 | the DISPLAY environment variable is set correctly, e.g.: |
| 101 | |
| 102 | DISPLAY=foo.bar:1 exec dwm |
| 103 | |
| 104 | (This will start dwm on display :1 of the host foo.bar.) |
| 105 | |
| 106 | In order to display status info in the bar, you can do something |
| 107 | like this in your .xinitrc: |
| 108 | |
| 109 | while xsetroot -name "`date` `uptime | sed 's/.*,//'`" |
| 110 | do |
| 111 | sleep 1 |
| 112 | done & |
| 113 | exec dwm |
| 114 | |
| 115 | |
| 116 | Configuration |
| 117 | ------------- |
| 118 | The configuration of dwm is done by creating a custom config.h |
| 119 | and (re)compiling the source code. |