# 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`
1. `dwm-restartsig-20180523-6.2.diff`
1. `dwm-preserveonrestart (local, see _patches/)`
1. `dwm-notitle-6.2.diff`
1. `dwm-attachbelow-6.2.diff`
1. `dwm-vanitygaps-6.2.diff (version providing multiple new layouts)`
1. `dwm-swallow-20201211-61bb8b2.diff`
1. `dwm-scratchpads-20200414-728d397b.diff`
1. `dwm-alwayscenter-20200625-f04cac6.diff`
1. `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 };
