diff options
-rw-r--r-- | desktop/dwm/README | 1 | ||||
-rw-r--r-- | desktop/dwm/dwm.SlackBuild | 12 | ||||
-rw-r--r-- | desktop/dwm/dwm.info | 6 | ||||
-rw-r--r-- | desktop/dwm/patches/use_uxterm_instead_of_st.diff | 6 | ||||
-rw-r--r-- | desktop/dwm/patches/use_uxterm_instead_of_st.patch | 12 | ||||
-rw-r--r-- | desktop/dwm/sbo-patches/dwm-systray-6.4.diff (renamed from desktop/dwm/sbo-patches/dwm-systray-6.3.diff) | 125 | ||||
-rw-r--r-- | desktop/dwm/sbo-patches/enable-keypad.diff (renamed from desktop/dwm/sbo-patches/enable-keypad.patch) | 5 | ||||
-rw-r--r-- | desktop/dwm/sbo-patches/replace-dmenu-rofi.diff | 39 | ||||
-rw-r--r-- | desktop/dwm/sbo-patches/replace-dmenu-rofi.patch | 60 | ||||
-rw-r--r-- | desktop/dwm/sbo-patches/use-mod4.diff (renamed from desktop/dwm/sbo-patches/use-mod4.patch) | 0 |
10 files changed, 113 insertions, 153 deletions
diff --git a/desktop/dwm/README b/desktop/dwm/README index e7243d0c77fbc..2cd91ab2b3b46 100644 --- a/desktop/dwm/README +++ b/desktop/dwm/README @@ -25,6 +25,7 @@ Use Mod4 (Windows key) instead of Mod1 (alt): MOD4=yes Use rofi instead of dmenu: ROFI=yes Enable keypad for tags as well as top row digits: KEYPAD=yes Enable extra patches (in patches directory): PATCHES=yes +Change default bar font size: FONTSIZE=N Multiple options can be used together. diff --git a/desktop/dwm/dwm.SlackBuild b/desktop/dwm/dwm.SlackBuild index f399fdd6098a8..6a852425660fe 100644 --- a/desktop/dwm/dwm.SlackBuild +++ b/desktop/dwm/dwm.SlackBuild @@ -38,7 +38,7 @@ cd $(dirname $0) ; CWD=$(pwd) PRGNAM=dwm -VERSION=${VERSION:-6.3} +VERSION=${VERSION:-6.4} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -91,10 +91,12 @@ if [ -e "$CWD/config.h" ]; then fi [ "${CK:-no}" = "yes" ] && RCEXT=".ck" -[ "${SYSTRAY:-no}" = "yes" ] && patch -p1 <$CWD/sbo-patches/dwm-systray-6.3.diff -[ "${MOD4:-no}" = "yes" ] && patch -p1 <$CWD/sbo-patches/use-mod4.patch -[ "${ROFI:-no}" = "yes" ] && patch -p1 <$CWD/sbo-patches/replace-dmenu-rofi.patch -[ "${KEYPAD:-no}" = "yes" ] && patch -p0 <$CWD/sbo-patches/enable-keypad.patch +[ "${SYSTRAY:-no}" = "yes" ] && patch -p1 <$CWD/sbo-patches/dwm-systray-6.4.diff +[ "${MOD4:-no}" = "yes" ] && patch -p1 <$CWD/sbo-patches/use-mod4.diff +[ "${ROFI:-no}" = "yes" ] && patch -p1 <$CWD/sbo-patches/replace-dmenu-rofi.diff +[ "${KEYPAD:-no}" = "yes" ] && patch -p1 <$CWD/sbo-patches/enable-keypad.diff + +sed "s,monospace:size=10,monospace:size=${FONTSIZE:-10},g" -i config.def.h ### Per community request, this section has been restored ### for those that wish to include custom patches. diff --git a/desktop/dwm/dwm.info b/desktop/dwm/dwm.info index 4763270f24f6a..cd490bc8608a6 100644 --- a/desktop/dwm/dwm.info +++ b/desktop/dwm/dwm.info @@ -1,8 +1,8 @@ PRGNAM="dwm" -VERSION="6.3" +VERSION="6.4" HOMEPAGE="https://dwm.suckless.org" -DOWNLOAD="https://dl.suckless.org/dwm/dwm-6.3.tar.gz" -MD5SUM="ed3aa40b97e29dbbe7d7d3f296bc2fcc" +DOWNLOAD="https://dl.suckless.org/dwm/dwm-6.4.tar.gz" +MD5SUM="008da068c3884ae675f65b9458b43c02" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" diff --git a/desktop/dwm/patches/use_uxterm_instead_of_st.diff b/desktop/dwm/patches/use_uxterm_instead_of_st.diff new file mode 100644 index 0000000000000..ecb34dc712e96 --- /dev/null +++ b/desktop/dwm/patches/use_uxterm_instead_of_st.diff @@ -0,0 +1,6 @@ +diff -Naru0 a/config.def.h b/config.def.h +--- a/config.def.h 2022-10-04 17:38:18.000000000 +0000 ++++ b/config.def.h 2023-04-29 00:53:30.080963780 +0000 +@@ -60 +60 @@ +-static const char *termcmd[] = { "st", NULL }; ++static const char *termcmd[] = { "uxterm", NULL }; diff --git a/desktop/dwm/patches/use_uxterm_instead_of_st.patch b/desktop/dwm/patches/use_uxterm_instead_of_st.patch deleted file mode 100644 index f64adf48b3892..0000000000000 --- a/desktop/dwm/patches/use_uxterm_instead_of_st.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur dwm-6.3-orig/config.def.h dwm-6.3/config.def.h ---- dwm-6.3-orig/config.def.h 2022-06-09 07:57:13.193221688 +0000 -+++ dwm-6.3/config.def.h 2022-06-09 07:57:42.563068451 +0000 -@@ -58,7 +58,7 @@ - /* 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 }; -+static const char *termcmd[] = { "uxterm", NULL }; - - static Key keys[] = { - /* modifier key function argument */ diff --git a/desktop/dwm/sbo-patches/dwm-systray-6.3.diff b/desktop/dwm/sbo-patches/dwm-systray-6.4.diff index 6dbd5da6c1903..58e4a6949976b 100644 --- a/desktop/dwm/sbo-patches/dwm-systray-6.3.diff +++ b/desktop/dwm/sbo-patches/dwm-systray-6.4.diff @@ -1,28 +1,22 @@ diff --git a/config.def.h b/config.def.h -index a2ac963..4be4c06 100644 +index 9efa774..750529d 100644 --- a/config.def.h +++ b/config.def.h -@@ -2,9 +2,14 @@ - +@@ -3,6 +3,11 @@ /* appearance */ static const unsigned int borderpx = 1; /* border pixel of windows */ --static const unsigned int snap = 32; /* snap pixel */ --static const int showbar = 1; /* 0 means no bar */ --static const int topbar = 1; /* 0 means bottom bar */ -+static const unsigned int snap = 32; /* snap pixel */ + static const unsigned int snap = 32; /* snap pixel */ +static const unsigned int systraypinning = 0; /* 0: sloppy systray follows selected monitor, >0: pin systray to monitor X */ -+static const unsigned int systrayonleft = 0; /* 0: systray in the right corner, >0: systray on left of status text */ ++static const unsigned int systrayonleft = 0; /* 0: systray in the right corner, >0: systray on left of status text */ +static const unsigned int systrayspacing = 2; /* systray spacing */ +static const int systraypinningfailfirst = 1; /* 1: if pinning fails, display systray on the first monitor, False: display systray on the last monitor*/ -+static const int showsystray = 1; /* 0 means no systray */ -+static const int showbar = 1; /* 0 means no bar */ -+static const int topbar = 1; /* 0 means bottom bar */ ++static const int showsystray = 1; /* 0 means no systray */ + static const int showbar = 1; /* 0 means no bar */ + static const int topbar = 1; /* 0 means bottom bar */ static const char *fonts[] = { "monospace:size=10" }; - static const char dmenufont[] = "monospace:size=10"; - static const char col_gray1[] = "#222222"; -@@ -101,8 +106,8 @@ static Key keys[] = { +@@ -101,8 +106,8 @@ static const Key keys[] = { /* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */ - static Button buttons[] = { + static const Button buttons[] = { /* click event mask button function argument */ - { ClkLtSymbol, 0, Button1, setlayout, {0} }, - { ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} }, @@ -32,7 +26,7 @@ index a2ac963..4be4c06 100644 { ClkStatusText, 0, Button2, spawn, {.v = termcmd } }, { ClkClientWin, MODKEY, Button1, movemouse, {0} }, diff --git a/dwm.c b/dwm.c -index a96f33c..941c1c0 100644 +index 03baf42..4611a03 100644 --- a/dwm.c +++ b/dwm.c @@ -57,12 +57,27 @@ @@ -84,7 +78,7 @@ index a96f33c..941c1c0 100644 static int gettextprop(Window w, Atom atom, char *text, unsigned int size); static void grabbuttons(Client *c, int focused); static void grabkeys(void); -@@ -189,13 +211,16 @@ static void pop(Client *); +@@ -189,13 +211,16 @@ static void pop(Client *c); static void propertynotify(XEvent *e); static void quit(const Arg *arg); static Monitor *recttomon(int x, int y, int w, int h); @@ -109,7 +103,7 @@ index a96f33c..941c1c0 100644 +static Monitor *systraytomon(Monitor *m); static void tag(const Arg *arg); static void tagmon(const Arg *arg); - static void tile(Monitor *); + static void tile(Monitor *m); @@ -224,18 +250,23 @@ static int updategeom(void); static void updatenumlockmask(void); static void updatesizehints(Client *c); @@ -138,7 +132,7 @@ index a96f33c..941c1c0 100644 [MapRequest] = maprequest, [MotionNotify] = motionnotify, [PropertyNotify] = propertynotify, -+ [ResizeRequest] = resizerequest, ++ [ResizeRequest] = resizerequest, [UnmapNotify] = unmapnotify }; -static Atom wmatom[WMLast], netatom[NetLast]; @@ -146,20 +140,19 @@ index a96f33c..941c1c0 100644 static int running = 1; static Cur *cursor[CurLast]; static Clr **scheme; -@@ -440,7 +472,7 @@ buttonpress(XEvent *e) +@@ -442,7 +474,7 @@ buttonpress(XEvent *e) arg.ui = 1 << i; - } else if (ev->x < x + blw) + } else if (ev->x < x + TEXTW(selmon->ltsymbol)) click = ClkLtSymbol; - else if (ev->x > selmon->ww - (int)TEXTW(stext)) + else if (ev->x > selmon->ww - (int)TEXTW(stext) - getsystraywidth()) click = ClkStatusText; else click = ClkWinTitle; -@@ -483,7 +515,14 @@ cleanup(void) +@@ -485,6 +517,13 @@ cleanup(void) XUngrabKey(dpy, AnyKey, AnyModifier, root); while (mons) cleanupmon(mons); -- for (i = 0; i < CurLast; i++) + + if (showsystray) { + XUnmapWindow(dpy, systray->win); @@ -167,11 +160,10 @@ index a96f33c..941c1c0 100644 + free(systray); + } + -+ for (i = 0; i < CurLast; i++) + for (i = 0; i < CurLast; i++) drw_cur_free(drw, cursor[i]); for (i = 0; i < LENGTH(colors); i++) - free(scheme[i]); -@@ -513,9 +552,58 @@ cleanupmon(Monitor *mon) +@@ -516,9 +555,58 @@ cleanupmon(Monitor *mon) void clientmessage(XEvent *e) { @@ -230,7 +222,7 @@ index a96f33c..941c1c0 100644 if (!c) return; if (cme->message_type == netatom[NetWMState]) { -@@ -568,7 +656,7 @@ configurenotify(XEvent *e) +@@ -571,7 +659,7 @@ configurenotify(XEvent *e) for (c = m->clients; c; c = c->next) if (c->isfullscreen) resizeclient(c, m->mx, m->my, m->mw, m->mh); @@ -239,7 +231,7 @@ index a96f33c..941c1c0 100644 } focus(NULL); arrange(NULL); -@@ -653,6 +741,11 @@ destroynotify(XEvent *e) +@@ -656,6 +744,11 @@ destroynotify(XEvent *e) if ((c = wintoclient(ev->window))) unmanage(c, 1); @@ -251,7 +243,7 @@ index a96f33c..941c1c0 100644 } void -@@ -696,7 +789,7 @@ dirtomon(int dir) +@@ -699,7 +792,7 @@ dirtomon(int dir) void drawbar(Monitor *m) { @@ -260,7 +252,7 @@ index a96f33c..941c1c0 100644 int boxs = drw->fonts->h / 9; int boxw = drw->fonts->h / 6 + 2; unsigned int i, occ = 0, urg = 0; -@@ -705,13 +798,17 @@ drawbar(Monitor *m) +@@ -708,13 +801,17 @@ drawbar(Monitor *m) if (!m->showbar) return; @@ -280,7 +272,7 @@ index a96f33c..941c1c0 100644 for (c = m->clients; c; c = c->next) { occ |= c->tags; if (c->isurgent) -@@ -732,7 +829,7 @@ drawbar(Monitor *m) +@@ -735,7 +832,7 @@ drawbar(Monitor *m) drw_setscheme(drw, scheme[SchemeNorm]); x = drw_text(drw, x, 0, w, bh, lrpad / 2, m->ltsymbol, 0); @@ -289,7 +281,7 @@ index a96f33c..941c1c0 100644 if (m->sel) { drw_setscheme(drw, scheme[m == selmon ? SchemeSel : SchemeNorm]); drw_text(drw, x, 0, w, bh, lrpad / 2, m->sel->name, 0); -@@ -743,7 +840,7 @@ drawbar(Monitor *m) +@@ -746,7 +843,7 @@ drawbar(Monitor *m) drw_rect(drw, x, 0, w, bh, 1, 1); } } @@ -298,7 +290,7 @@ index a96f33c..941c1c0 100644 } void -@@ -780,8 +877,11 @@ expose(XEvent *e) +@@ -783,8 +880,11 @@ expose(XEvent *e) Monitor *m; XExposeEvent *ev = &e->xexpose; @@ -311,7 +303,7 @@ index a96f33c..941c1c0 100644 } void -@@ -867,9 +967,17 @@ getatomprop(Client *c, Atom prop) +@@ -870,14 +970,32 @@ getatomprop(Client *c, Atom prop) unsigned char *p = NULL; Atom da, atom = None; @@ -330,8 +322,6 @@ index a96f33c..941c1c0 100644 XFree(p); } return atom; -@@ -903,6 +1011,16 @@ getstate(Window w) - return result; } +unsigned int @@ -345,9 +335,9 @@ index a96f33c..941c1c0 100644 +} + int - gettextprop(Window w, Atom atom, char *text, unsigned int size) + getrootptr(int *x, int *y) { -@@ -1007,7 +1125,8 @@ killclient(const Arg *arg) +@@ -1018,7 +1136,8 @@ killclient(const Arg *arg) { if (!selmon->sel) return; @@ -357,7 +347,7 @@ index a96f33c..941c1c0 100644 XGrabServer(dpy); XSetErrorHandler(xerrordummy); XSetCloseDownMode(dpy, DestroyAll); -@@ -1096,6 +1215,13 @@ maprequest(XEvent *e) +@@ -1105,6 +1224,13 @@ maprequest(XEvent *e) static XWindowAttributes wa; XMapRequestEvent *ev = &e->xmaprequest; @@ -368,14 +358,13 @@ index a96f33c..941c1c0 100644 + updatesystray(); + } + - if (!XGetWindowAttributes(dpy, ev->window, &wa)) + if (!XGetWindowAttributes(dpy, ev->window, &wa) || wa.override_redirect) return; - if (wa.override_redirect) -@@ -1219,7 +1345,18 @@ propertynotify(XEvent *e) + if (!wintoclient(ev->window)) +@@ -1226,6 +1352,17 @@ propertynotify(XEvent *e) Window trans; XPropertyEvent *ev = &e->xproperty; -- if ((ev->window == root) && (ev->atom == XA_WM_NAME)) + if ((c = wintosystrayicon(ev->window))) { + if (ev->atom == XA_WM_NORMAL_HINTS) { + updatesizehints(c); @@ -387,11 +376,10 @@ index a96f33c..941c1c0 100644 + updatesystray(); + } + -+ if ((ev->window == root) && (ev->atom == XA_WM_NAME)) + if ((ev->window == root) && (ev->atom == XA_WM_NAME)) updatestatus(); else if (ev->state == PropertyDelete) - return; /* ignore */ -@@ -1269,6 +1406,19 @@ recttomon(int x, int y, int w, int h) +@@ -1276,6 +1413,19 @@ recttomon(int x, int y, int w, int h) return r; } @@ -411,7 +399,7 @@ index a96f33c..941c1c0 100644 void resize(Client *c, int x, int y, int w, int h, int interact) { -@@ -1276,6 +1426,14 @@ resize(Client *c, int x, int y, int w, int h, int interact) +@@ -1283,6 +1433,14 @@ resize(Client *c, int x, int y, int w, int h, int interact) resizeclient(c, x, y, w, h); } @@ -426,8 +414,8 @@ index a96f33c..941c1c0 100644 void resizeclient(Client *c, int x, int y, int w, int h) { -@@ -1348,6 +1506,19 @@ resizemouse(const Arg *arg) - } +@@ -1298,6 +1456,19 @@ resizeclient(Client *c, int x, int y, int w, int h) + XSync(dpy, False); } +void @@ -444,9 +432,9 @@ index a96f33c..941c1c0 100644 +} + void - restack(Monitor *m) + resizemouse(const Arg *arg) { -@@ -1437,26 +1608,37 @@ setclientstate(Client *c, long state) +@@ -1444,26 +1615,37 @@ setclientstate(Client *c, long state) } int @@ -470,11 +458,11 @@ index a96f33c..941c1c0 100644 + exists = protocols[n] == proto; + XFree(protocols); + } - } ++ } + else { + exists = True; + mt = proto; -+ } + } + if (exists) { ev.type = ClientMessage; @@ -495,7 +483,7 @@ index a96f33c..941c1c0 100644 } return exists; } -@@ -1470,7 +1652,7 @@ setfocus(Client *c) +@@ -1477,7 +1659,7 @@ setfocus(Client *c) XA_WINDOW, 32, PropModeReplace, (unsigned char *) &(c->win), 1); } @@ -504,33 +492,28 @@ index a96f33c..941c1c0 100644 } void -@@ -1558,15 +1740,22 @@ setup(void) - wmatom[WMState] = XInternAtom(dpy, "WM_STATE", False); +@@ -1566,6 +1748,10 @@ setup(void) wmatom[WMTakeFocus] = XInternAtom(dpy, "WM_TAKE_FOCUS", False); netatom[NetActiveWindow] = XInternAtom(dpy, "_NET_ACTIVE_WINDOW", False); -- netatom[NetSupported] = XInternAtom(dpy, "_NET_SUPPORTED", False); -- netatom[NetWMName] = XInternAtom(dpy, "_NET_WM_NAME", False); -+ netatom[NetSupported] = XInternAtom(dpy, "_NET_SUPPORTED", False); + netatom[NetSupported] = XInternAtom(dpy, "_NET_SUPPORTED", False); + netatom[NetSystemTray] = XInternAtom(dpy, "_NET_SYSTEM_TRAY_S0", False); + netatom[NetSystemTrayOP] = XInternAtom(dpy, "_NET_SYSTEM_TRAY_OPCODE", False); + netatom[NetSystemTrayOrientation] = XInternAtom(dpy, "_NET_SYSTEM_TRAY_ORIENTATION", False); + netatom[NetSystemTrayOrientationHorz] = XInternAtom(dpy, "_NET_SYSTEM_TRAY_ORIENTATION_HORZ", False); -+ netatom[NetWMName] = XInternAtom(dpy, "_NET_WM_NAME", False); + netatom[NetWMName] = XInternAtom(dpy, "_NET_WM_NAME", False); netatom[NetWMState] = XInternAtom(dpy, "_NET_WM_STATE", False); netatom[NetWMCheck] = XInternAtom(dpy, "_NET_SUPPORTING_WM_CHECK", False); - netatom[NetWMFullscreen] = XInternAtom(dpy, "_NET_WM_STATE_FULLSCREEN", False); +@@ -1573,6 +1759,9 @@ setup(void) netatom[NetWMWindowType] = XInternAtom(dpy, "_NET_WM_WINDOW_TYPE", False); netatom[NetWMWindowTypeDialog] = XInternAtom(dpy, "_NET_WM_WINDOW_TYPE_DIALOG", False); netatom[NetClientList] = XInternAtom(dpy, "_NET_CLIENT_LIST", False); -- /* init cursors */ + xatom[Manager] = XInternAtom(dpy, "MANAGER", False); + xatom[Xembed] = XInternAtom(dpy, "_XEMBED", False); + xatom[XembedInfo] = XInternAtom(dpy, "_XEMBED_INFO", False); -+ /* init cursors */ + /* init cursors */ cursor[CurNormal] = drw_cur_create(drw, XC_left_ptr); cursor[CurResize] = drw_cur_create(drw, XC_sizing); - cursor[CurMove] = drw_cur_create(drw, XC_fleur); -@@ -1574,6 +1763,8 @@ setup(void) +@@ -1581,6 +1770,8 @@ setup(void) scheme = ecalloc(LENGTH(colors), sizeof(Clr *)); for (i = 0; i < LENGTH(colors); i++) scheme[i] = drw_scm_create(drw, colors[i], 3); @@ -539,7 +522,7 @@ index a96f33c..941c1c0 100644 /* init bars */ updatebars(); updatestatus(); -@@ -1707,7 +1898,18 @@ togglebar(const Arg *arg) +@@ -1711,7 +1902,18 @@ togglebar(const Arg *arg) { selmon->showbar = !selmon->showbar; updatebarpos(selmon); @@ -559,7 +542,7 @@ index a96f33c..941c1c0 100644 arrange(selmon); } -@@ -1802,11 +2004,18 @@ unmapnotify(XEvent *e) +@@ -1807,11 +2009,18 @@ unmapnotify(XEvent *e) else unmanage(c, 0); } @@ -578,7 +561,7 @@ index a96f33c..941c1c0 100644 Monitor *m; XSetWindowAttributes wa = { .override_redirect = True, -@@ -1817,10 +2026,15 @@ updatebars(void) +@@ -1822,10 +2031,15 @@ updatebars(void) for (m = mons; m; m = m->next) { if (m->barwin) continue; @@ -595,7 +578,7 @@ index a96f33c..941c1c0 100644 XMapRaised(dpy, m->barwin); XSetClassHint(dpy, m->barwin, &ch); } -@@ -1996,6 +2210,125 @@ updatestatus(void) +@@ -2002,6 +2216,125 @@ updatestatus(void) if (!gettextprop(root, XA_WM_NAME, stext, sizeof(stext))) strcpy(stext, "dwm-"VERSION); drawbar(selmon); @@ -721,7 +704,7 @@ index a96f33c..941c1c0 100644 } void -@@ -2063,6 +2396,16 @@ wintoclient(Window w) +@@ -2069,6 +2402,16 @@ wintoclient(Window w) return NULL; } @@ -738,7 +721,7 @@ index a96f33c..941c1c0 100644 Monitor * wintomon(Window w) { -@@ -2116,6 +2459,22 @@ xerrorstart(Display *dpy, XErrorEvent *ee) +@@ -2122,6 +2465,22 @@ xerrorstart(Display *dpy, XErrorEvent *ee) return -1; } diff --git a/desktop/dwm/sbo-patches/enable-keypad.patch b/desktop/dwm/sbo-patches/enable-keypad.diff index 8341b12fd9aef..9aca3a516b129 100644 --- a/desktop/dwm/sbo-patches/enable-keypad.patch +++ b/desktop/dwm/sbo-patches/enable-keypad.diff @@ -1,5 +1,6 @@ ---- config.def.h 2019-06-04 20:24:48.426235490 +0100 -+++ config.h 2019-06-13 08:17:45.674540960 +0100 +diff -Naur a/config.def.h b/config.def.h +--- a/config.def.h 2022-10-04 17:38:18.000000000 +0000 ++++ b/config.def.h 2023-04-29 00:17:57.206415327 +0000 @@ -84,6 +84,16 @@ { MODKEY, XK_period, focusmon, {.i = +1 } }, { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } }, diff --git a/desktop/dwm/sbo-patches/replace-dmenu-rofi.diff b/desktop/dwm/sbo-patches/replace-dmenu-rofi.diff new file mode 100644 index 0000000000000..b37d195763871 --- /dev/null +++ b/desktop/dwm/sbo-patches/replace-dmenu-rofi.diff @@ -0,0 +1,39 @@ +diff -Naur a/config.def.h b/config.def.h +--- a/config.def.h 2022-10-04 17:38:18.000000000 +0000 ++++ b/config.def.h 2023-04-29 00:25:20.697595822 +0000 +@@ -56,12 +56,12 @@ + #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } } + + /* commands */ +-static const char *dmenucmd[] = { "dmenu_run", "-fn", dmenufont, "-nb", col_gray1, "-nf", col_gray3, "-sb", col_cyan, "-sf", col_gray4, NULL }; ++static const char *roficmd[] = { "rofi", "-sort", "-show", "run", "-theme", "dwm", NULL }; + static const char *termcmd[] = { "st", NULL }; + + static const Key keys[] = { + /* modifier key function argument */ +- { MODKEY, XK_p, spawn, {.v = dmenucmd } }, ++ { MODKEY, XK_p, spawn, {.v = roficmd } }, + { MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } }, + { MODKEY, XK_b, togglebar, {0} }, + { MODKEY, XK_j, focusstack, {.i = +1 } }, +diff -Naur a/dwm.1 b/dwm.1 +--- a/dwm.1 2022-10-04 17:38:18.000000000 +0000 ++++ b/dwm.1 2023-04-29 00:26:08.906028725 +0000 +@@ -62,7 +62,7 @@ + .TP + .B Mod1\-p + Spawn +-.BR dmenu(1) ++.BR rofi(1) + for launching other programs. + .TP + .B Mod1\-, +@@ -156,7 +156,7 @@ + dwm is customized by creating a custom config.h and (re)compiling the source + code. This keeps it fast, secure and simple. + .SH SEE ALSO +-.BR dmenu (1), ++.BR rofi (1), + .BR st (1) + .SH ISSUES + Java applications which use the XToolkit/XAWT backend may draw grey windows diff --git a/desktop/dwm/sbo-patches/replace-dmenu-rofi.patch b/desktop/dwm/sbo-patches/replace-dmenu-rofi.patch deleted file mode 100644 index 18c7905c1b952..0000000000000 --- a/desktop/dwm/sbo-patches/replace-dmenu-rofi.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff -Naur dwm-6.2/config.def.h b/config.def.h ---- dwm-6.2/config.def.h 2019-02-02 12:55:28.000000000 +0000 -+++ b/config.def.h 2019-04-13 21:19:41.455638523 +0100 -@@ -6,7 +6,6 @@ - static const int showbar = 1; /* 0 means no bar */ - static const int topbar = 1; /* 0 means bottom bar */ - static const char *fonts[] = { "monospace:size=10" }; --static const char dmenufont[] = "monospace:size=10"; - static const char col_gray1[] = "#222222"; - static const char col_gray2[] = "#444444"; - static const char col_gray3[] = "#bbbbbb"; -@@ -55,13 +54,12 @@ - #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } } - - /* 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 *roficmd[] = { "rofi", "-sort", "-show", "run", "-theme", "dwm", NULL }; - static const char *termcmd[] = { "st", NULL }; - - static Key keys[] = { - /* modifier key function argument */ -- { MODKEY, XK_p, spawn, {.v = dmenucmd } }, -+ { MODKEY, XK_p, spawn, {.v = roficmd } }, - { MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } }, - { MODKEY, XK_b, togglebar, {0} }, - { MODKEY, XK_j, focusstack, {.i = +1 } }, -diff -Naur dwm-6.2/dwm.1 b/dwm.1 ---- dwm-6.2/dwm.1 2019-02-02 12:55:28.000000000 +0000 -+++ b/dwm.1 2019-04-13 21:12:25.685674235 +0100 -@@ -62,7 +62,7 @@ - .TP - .B Mod1\-p - Spawn --.BR dmenu(1) -+.BR rofi(1) - for launching other programs. - .TP - .B Mod1\-, -@@ -156,7 +156,7 @@ - dwm is customized by creating a custom config.h and (re)compiling the source - code. This keeps it fast, secure and simple. - .SH SEE ALSO --.BR dmenu (1), -+.BR rofi (1), - .BR st (1) - .SH ISSUES - Java applications which use the XToolkit/XAWT backend may draw grey windows -diff -Naur dwm-6.2/dwm.c b/dwm.c ---- dwm-6.2/dwm.c 2019-02-02 12:55:28.000000000 +0000 -+++ b/dwm.c 2019-04-13 21:12:10.143211844 +0100 -@@ -1639,8 +1639,6 @@ - void - spawn(const Arg *arg) - { -- if (arg->v == dmenucmd) -- dmenumon[0] = '0' + selmon->num; - if (fork() == 0) { - if (dpy) - close(ConnectionNumber(dpy)); diff --git a/desktop/dwm/sbo-patches/use-mod4.patch b/desktop/dwm/sbo-patches/use-mod4.diff index 649e39cd3dc51..649e39cd3dc51 100644 --- a/desktop/dwm/sbo-patches/use-mod4.patch +++ b/desktop/dwm/sbo-patches/use-mod4.diff |