dotfiles/_linux/_suckless/dwm
2024-06-19 17:00:15 +02:00
..
_patches
config.def.h
config.h
config.mk
drw.c
drw.h
dwm.1
dwm.c
LICENSE
Makefile
README.md
transient.c
util.c
util.h
vanitygaps.c

ftpd's dwm build

Patches applied

These patches from suckless.org were applied from the newest versions, in order:

  1. dwm-status2d-systray-6.3.diff
  2. dwm-restartsig-20180523-6.2.diff
  3. dwm-preserveonrestart (local, see _patches/)
  4. dwm-notitle-6.2.diff
  5. dwm-attachbelow-6.2.diff
  6. dwm-vanitygaps-6.2.diff (version providing multiple new layouts)
  7. dwm-swallow-20201211-61bb8b2.diff
  8. dwm-scratchpads-20200414-728d397b.diff
  9. dwm-alwayscenter-20200625-f04cac6.diff
  10. dwm-tagschemes-1.0.diff (local, see _patches/ - use git apply)

note: lot of manual work was involved, these won't apply easily on top of the others.

Fix color emoji

Delete the following from drw.c:

/* Do not allow using color fonts. This is a workaround for a BadLength
 * error from Xft with color glyphs. Modelled on the Xterm workaround. See
 * https://bugzilla.redhat.com/show_bug.cgi?id=1498269
 * https://lists.suckless.org/dev/1701/30932.html
 * https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=916349
 * and lots more all over the internet.
 */
FcBool iscol;
if(FcPatternGetBool(xfont->pattern, FC_COLOR, 0, &iscol) == FcResultMatch && iscol) {
	XftFontClose(drw->dpy, xfont);
	return NULL;
}

Fix compile warnings

Delete the following from dwm.c:

int boxs = drw->fonts->h / 9;
int boxw = drw->fonts->h / 6 + 2;

Change in dwm.c:

fscanf(f, "%*u %*s %*c %u", &v);

to:

if (fscanf(f, "%*u %*s %*c %u", &v));

If dmenu will be configured separately, remove from dwm.c:

if (arg->v == dmenucmd)
  dmenumon[0] = '0' + selmon->num;

and from config.def.h/config.h:

static const char dmenufont[]       = "monospace:size=10";

/* commands */
static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", col_gray1, "-nf", col_gray3, "-sb", col_cyan, "-sf", col_gray4, NULL };
static const char *termcmd[]  = { "st", NULL };