[UPDATE] x11/dwm

classic Classic list List threaded Threaded
18 messages Options
Reply | Threaded
Open this post in threaded view
|

[UPDATE] x11/dwm

Joerg Jung
Hi,

please find below an update for x11/dwm to 6.1.  This release contains
various fixes and improvements, see announcement [1] for more details.

OK?

Thanks,
Regards,
Joerg

[1] http://lists.suckless.org/dev/1511/27504.html



Index: Makefile
===================================================================
RCS file: /cvs/ports/x11/dwm/Makefile,v
retrieving revision 1.26
diff -u -p -r1.26 Makefile
--- Makefile 25 Oct 2015 14:23:07 -0000 1.26
+++ Makefile 9 Nov 2015 20:31:02 -0000
@@ -2,8 +2,7 @@
 
 COMMENT= dynamic window manager
 
-DISTNAME= dwm-6.0
-REVISION= 1
+DISTNAME= dwm-6.1
 
 CATEGORIES= x11
 
@@ -18,7 +17,7 @@ WANTLIB= X11 Xinerama c
 
 MASTER_SITES= http://dl.suckless.org/dwm/
 
-RUN_DEPENDS= x11/dmenu>=4.4 \
+RUN_DEPENDS= x11/dmenu>=4.6 \
  fonts/terminus-font
 
 MAKE_ENV= LDFLAGS="${LDFLAGS}"
Index: distinfo
===================================================================
RCS file: /cvs/ports/x11/dwm/distinfo,v
retrieving revision 1.18
diff -u -p -r1.18 distinfo
--- distinfo 18 Jan 2015 03:15:53 -0000 1.18
+++ distinfo 9 Nov 2015 20:31:02 -0000
@@ -1,2 +1,2 @@
-SHA256 (dwm-6.0.tar.gz) = srlIPeaSWe7qVoRImbsjhRWNPnmkLYKxDBQgmfyO61Y=
-SIZE (dwm-6.0.tar.gz) = 20810
+SHA256 (dwm-6.1.tar.gz) = wvbFYWfwrNvj3DfMqcGhkmDAQPLUgA41KaIa18zidf4=
+SIZE (dwm-6.1.tar.gz) = 25887
Index: patches/patch-config_def_h
===================================================================
RCS file: /cvs/ports/x11/dwm/patches/patch-config_def_h,v
retrieving revision 1.10
diff -u -p -r1.10 patch-config_def_h
--- patches/patch-config_def_h 25 Oct 2015 14:23:07 -0000 1.10
+++ patches/patch-config_def_h 9 Nov 2015 20:31:02 -0000
@@ -1,18 +1,21 @@
 $OpenBSD: patch-config_def_h,v 1.10 2015/10/25 14:23:07 jung Exp $
---- config.def.h.orig Mon Dec 19 16:02:46 2011
-+++ config.def.h Thu Oct  8 20:58:14 2015
-@@ -1,13 +1,13 @@
- /* See LICENSE file for copyright and license details. */
+--- config.def.h.orig Sun Nov  8 23:39:37 2015
++++ config.def.h Mon Nov  9 21:23:42 2015
+@@ -2,15 +2,15 @@
 
  /* appearance */
--static const char font[]            = "-*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*";
+ static const char *fonts[] = {
+- "monospace:size=10"
++ "terminus:size=8"
+ };
+-static const char dmenufont[]       = "monospace:size=10";
 -static const char normbordercolor[] = "#444444";
 -static const char normbgcolor[]     = "#222222";
 -static const char normfgcolor[]     = "#bbbbbb";
 -static const char selbordercolor[]  = "#005577";
 -static const char selbgcolor[]      = "#005577";
 -static const char selfgcolor[]      = "#eeeeee";
-+static const char font[]            = "-*-terminus-medium-*-*-*-*-*-*-*-*-*-*-*";
++static const char dmenufont[]       = "terminus:size=8";
 +static const char normbordercolor[] = "#404040";
 +static const char normbgcolor[]     = "#202020";
 +static const char normfgcolor[]     = "#c0c0c0";
@@ -21,13 +24,22 @@ $OpenBSD: patch-config_def_h,v 1.10 2015
 +static const char selfgcolor[]      = "#f0f0f0";
  static const unsigned int borderpx  = 1;        /* border pixel of windows */
  static const unsigned int snap      = 32;       /* snap pixel */
- static const Bool showbar           = True;     /* False means no bar */
-@@ -20,6 +20,8 @@ static const Rule rules[] = {
+ static const int showbar            = 1;        /* 0 means no bar */
+@@ -27,6 +27,8 @@ static const Rule rules[] = {
  /* class      instance    title       tags mask     isfloating   monitor */
- { "Gimp",     NULL,       NULL,       0,            True,        -1 },
- { "Firefox",  NULL,       NULL,       1 << 8,       False,       -1 },
-+ { "Xonix",    NULL,       NULL,       0,            True,        -1 },
-+ { NULL,       NULL,       "glxgears", 0,            True,        -1 },
+ { "Gimp",     NULL,       NULL,       0,            1,           -1 },
+ { "Firefox",  NULL,       NULL,       1 << 8,       0,           -1 },
++ { "Xonix",    NULL,       NULL,       0,            1,           -1 },
++ { NULL,       NULL,       "glxgears", 0,            1,           -1 },
  };
 
  /* layout(s) */
+@@ -55,7 +57,7 @@ static const Layout layouts[] = {
+ /* commands */
+ static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
+ static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
+-static const char *termcmd[]  = { "st", NULL };
++static const char *termcmd[]  = { "uxterm", NULL };
+
+ static Key keys[] = {
+ /* modifier                     key        function        argument */
Index: patches/patch-config_mk
===================================================================
RCS file: /cvs/ports/x11/dwm/patches/patch-config_mk,v
retrieving revision 1.9
diff -u -p -r1.9 patch-config_mk
--- patches/patch-config_mk 9 Jul 2012 16:33:40 -0000 1.9
+++ patches/patch-config_mk 9 Nov 2015 20:31:02 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-config_mk,v 1.9 2012/07/09 16:33:40 zinke Exp $
---- config.mk.orig Mon Dec 19 16:02:46 2011
-+++ config.mk Sat Jul  7 22:28:18 2012
-@@ -4,30 +4,30 @@ VERSION = 6.0
+--- config.mk.orig Sun Nov  8 23:39:37 2015
++++ config.mk Mon Nov  9 21:14:22 2015
+@@ -4,11 +4,11 @@ VERSION = 6.1
  # Customize below to fit your system
 
  # paths
@@ -15,25 +15,28 @@ $OpenBSD: patch-config_mk,v 1.9 2012/07/
 +X11INC = ${X11BASE}/include
 +X11LIB = ${X11BASE}/lib
 
- # Xinerama
- XINERAMALIBS = -L${X11LIB} -lXinerama
- XINERAMAFLAGS = -DXINERAMA
-
- # includes and libs
--INCS = -I. -I/usr/include -I${X11INC}
--LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${XINERAMALIBS}
-+INCS = -I${X11INC}
-+LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS}
+ # Xinerama, comment if you don't want it
+ XINERAMALIBS  = -lXinerama
+@@ -16,7 +16,7 @@ XINERAMAFLAGS = -DXINERAMA
+
+ # freetype
+ FREETYPELIBS = -lfontconfig -lXft
+-FREETYPEINC = /usr/include/freetype2
++#FREETYPEINC = /usr/include/freetype2
+ # OpenBSD (uncomment)
+ FREETYPEINC = ${X11INC}/freetype2
+
+@@ -25,14 +25,14 @@ INCS = -I${X11INC} -I${FREETYPEINC}
+ LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS} ${FREETYPELIBS}
 
  # flags
--CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
-+CPPFLAGS += -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
- #CFLAGS = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
--CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
-+CFLAGS += -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
- #LDFLAGS = -g ${LIBS}
--LDFLAGS = -s ${LIBS}
-+LDFLAGS += ${LIBS}
+-CPPFLAGS = -D_BSD_SOURCE -D_POSIX_C_SOURCE=2 -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
++CPPFLAGS += -D_BSD_SOURCE -D_POSIX_C_SOURCE=2 -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
+ #CFLAGS   = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
+-CFLAGS   = -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os ${INCS} ${CPPFLAGS}
+-LDFLAGS  = -s ${LIBS}
++CFLAGS   += -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os ${INCS} ${CPPFLAGS}
++LDFLAGS  += -s ${LIBS}
 
  # Solaris
  #CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Ted Unangst-6
Joerg Jung wrote:
> Hi,
>
> please find below an update for x11/dwm to 6.1.  This release contains
> various fixes and improvements, see announcement [1] for more details.
>
> OK?

so now that we finally changed the default xterm back to uxterm, they changed
it to st. needs another man page patch. :)

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Joerg Jung
On Mon, Nov 09, 2015 at 04:07:56PM -0500, Ted Unangst wrote:

> Joerg Jung wrote:
> > Hi,
> >
> > please find below an update for x11/dwm to 6.1.  This release contains
> > various fixes and improvements, see announcement [1] for more details.
> >
> > OK?
>
> so now that we finally changed the default xterm back to uxterm, they changed
> it to st. needs another man page patch. :)

You are right. Updated diff including man page patch below.


Index: Makefile
===================================================================
RCS file: /cvs/ports/x11/dwm/Makefile,v
retrieving revision 1.26
diff -u -p -r1.26 Makefile
--- Makefile 25 Oct 2015 14:23:07 -0000 1.26
+++ Makefile 9 Nov 2015 21:30:56 -0000
@@ -2,8 +2,7 @@
 
 COMMENT= dynamic window manager
 
-DISTNAME= dwm-6.0
-REVISION= 1
+DISTNAME= dwm-6.1
 
 CATEGORIES= x11
 
@@ -18,7 +17,7 @@ WANTLIB= X11 Xinerama c
 
 MASTER_SITES= http://dl.suckless.org/dwm/
 
-RUN_DEPENDS= x11/dmenu>=4.4 \
+RUN_DEPENDS= x11/dmenu>=4.6 \
  fonts/terminus-font
 
 MAKE_ENV= LDFLAGS="${LDFLAGS}"
Index: distinfo
===================================================================
RCS file: /cvs/ports/x11/dwm/distinfo,v
retrieving revision 1.18
diff -u -p -r1.18 distinfo
--- distinfo 18 Jan 2015 03:15:53 -0000 1.18
+++ distinfo 9 Nov 2015 21:30:56 -0000
@@ -1,2 +1,2 @@
-SHA256 (dwm-6.0.tar.gz) = srlIPeaSWe7qVoRImbsjhRWNPnmkLYKxDBQgmfyO61Y=
-SIZE (dwm-6.0.tar.gz) = 20810
+SHA256 (dwm-6.1.tar.gz) = wvbFYWfwrNvj3DfMqcGhkmDAQPLUgA41KaIa18zidf4=
+SIZE (dwm-6.1.tar.gz) = 25887
Index: patches/patch-config_def_h
===================================================================
RCS file: /cvs/ports/x11/dwm/patches/patch-config_def_h,v
retrieving revision 1.10
diff -u -p -r1.10 patch-config_def_h
--- patches/patch-config_def_h 25 Oct 2015 14:23:07 -0000 1.10
+++ patches/patch-config_def_h 9 Nov 2015 21:30:56 -0000
@@ -1,18 +1,21 @@
 $OpenBSD: patch-config_def_h,v 1.10 2015/10/25 14:23:07 jung Exp $
---- config.def.h.orig Mon Dec 19 16:02:46 2011
-+++ config.def.h Thu Oct  8 20:58:14 2015
-@@ -1,13 +1,13 @@
- /* See LICENSE file for copyright and license details. */
+--- config.def.h.orig Sun Nov  8 23:39:37 2015
++++ config.def.h Mon Nov  9 21:23:42 2015
+@@ -2,15 +2,15 @@
 
  /* appearance */
--static const char font[]            = "-*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*";
+ static const char *fonts[] = {
+- "monospace:size=10"
++ "terminus:size=8"
+ };
+-static const char dmenufont[]       = "monospace:size=10";
 -static const char normbordercolor[] = "#444444";
 -static const char normbgcolor[]     = "#222222";
 -static const char normfgcolor[]     = "#bbbbbb";
 -static const char selbordercolor[]  = "#005577";
 -static const char selbgcolor[]      = "#005577";
 -static const char selfgcolor[]      = "#eeeeee";
-+static const char font[]            = "-*-terminus-medium-*-*-*-*-*-*-*-*-*-*-*";
++static const char dmenufont[]       = "terminus:size=8";
 +static const char normbordercolor[] = "#404040";
 +static const char normbgcolor[]     = "#202020";
 +static const char normfgcolor[]     = "#c0c0c0";
@@ -21,13 +24,22 @@ $OpenBSD: patch-config_def_h,v 1.10 2015
 +static const char selfgcolor[]      = "#f0f0f0";
  static const unsigned int borderpx  = 1;        /* border pixel of windows */
  static const unsigned int snap      = 32;       /* snap pixel */
- static const Bool showbar           = True;     /* False means no bar */
-@@ -20,6 +20,8 @@ static const Rule rules[] = {
+ static const int showbar            = 1;        /* 0 means no bar */
+@@ -27,6 +27,8 @@ static const Rule rules[] = {
  /* class      instance    title       tags mask     isfloating   monitor */
- { "Gimp",     NULL,       NULL,       0,            True,        -1 },
- { "Firefox",  NULL,       NULL,       1 << 8,       False,       -1 },
-+ { "Xonix",    NULL,       NULL,       0,            True,        -1 },
-+ { NULL,       NULL,       "glxgears", 0,            True,        -1 },
+ { "Gimp",     NULL,       NULL,       0,            1,           -1 },
+ { "Firefox",  NULL,       NULL,       1 << 8,       0,           -1 },
++ { "Xonix",    NULL,       NULL,       0,            1,           -1 },
++ { NULL,       NULL,       "glxgears", 0,            1,           -1 },
  };
 
  /* layout(s) */
+@@ -55,7 +57,7 @@ static const Layout layouts[] = {
+ /* commands */
+ static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
+ static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
+-static const char *termcmd[]  = { "st", NULL };
++static const char *termcmd[]  = { "uxterm", NULL };
+
+ static Key keys[] = {
+ /* modifier                     key        function        argument */
Index: patches/patch-config_mk
===================================================================
RCS file: /cvs/ports/x11/dwm/patches/patch-config_mk,v
retrieving revision 1.9
diff -u -p -r1.9 patch-config_mk
--- patches/patch-config_mk 9 Jul 2012 16:33:40 -0000 1.9
+++ patches/patch-config_mk 9 Nov 2015 21:30:56 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-config_mk,v 1.9 2012/07/09 16:33:40 zinke Exp $
---- config.mk.orig Mon Dec 19 16:02:46 2011
-+++ config.mk Sat Jul  7 22:28:18 2012
-@@ -4,30 +4,30 @@ VERSION = 6.0
+--- config.mk.orig Sun Nov  8 23:39:37 2015
++++ config.mk Mon Nov  9 21:14:22 2015
+@@ -4,11 +4,11 @@ VERSION = 6.1
  # Customize below to fit your system
 
  # paths
@@ -15,25 +15,28 @@ $OpenBSD: patch-config_mk,v 1.9 2012/07/
 +X11INC = ${X11BASE}/include
 +X11LIB = ${X11BASE}/lib
 
- # Xinerama
- XINERAMALIBS = -L${X11LIB} -lXinerama
- XINERAMAFLAGS = -DXINERAMA
-
- # includes and libs
--INCS = -I. -I/usr/include -I${X11INC}
--LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${XINERAMALIBS}
-+INCS = -I${X11INC}
-+LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS}
+ # Xinerama, comment if you don't want it
+ XINERAMALIBS  = -lXinerama
+@@ -16,7 +16,7 @@ XINERAMAFLAGS = -DXINERAMA
+
+ # freetype
+ FREETYPELIBS = -lfontconfig -lXft
+-FREETYPEINC = /usr/include/freetype2
++#FREETYPEINC = /usr/include/freetype2
+ # OpenBSD (uncomment)
+ FREETYPEINC = ${X11INC}/freetype2
+
+@@ -25,14 +25,14 @@ INCS = -I${X11INC} -I${FREETYPEINC}
+ LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS} ${FREETYPELIBS}
 
  # flags
--CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
-+CPPFLAGS += -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
- #CFLAGS = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
--CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
-+CFLAGS += -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
- #LDFLAGS = -g ${LIBS}
--LDFLAGS = -s ${LIBS}
-+LDFLAGS += ${LIBS}
+-CPPFLAGS = -D_BSD_SOURCE -D_POSIX_C_SOURCE=2 -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
++CPPFLAGS += -D_BSD_SOURCE -D_POSIX_C_SOURCE=2 -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
+ #CFLAGS   = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
+-CFLAGS   = -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os ${INCS} ${CPPFLAGS}
+-LDFLAGS  = -s ${LIBS}
++CFLAGS   += -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os ${INCS} ${CPPFLAGS}
++LDFLAGS  += -s ${LIBS}
 
  # Solaris
  #CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
Index: patches/patch-dwm_1
===================================================================
RCS file: patches/patch-dwm_1
diff -N patches/patch-dwm_1
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-dwm_1 9 Nov 2015 21:30:56 -0000
@@ -0,0 +1,21 @@
+$OpenBSD$
+--- dwm.1.orig Mon Nov  9 22:25:40 2015
++++ dwm.1 Mon Nov  9 22:26:32 2015
+@@ -57,7 +57,7 @@ click on a tag label adds/removes that tag to/from the
+ .TP
+ .B Mod1\-Shift\-Return
+ Start
+-.BR st(1).
++.BR uxterm(1).
+ .TP
+ .B Mod1\-,
+ Focus previous screen, if any.
+@@ -151,7 +151,7 @@ dwm is customized by creating a custom config.h and (r
+ code. This keeps it fast, secure and simple.
+ .SH SEE ALSO
+ .BR dmenu (1),
+-.BR st (1)
++.BR uxterm (1)
+ .SH BUGS
+ Java applications which use the XToolkit/XAWT backend may draw grey windows
+ only. The XToolkit/XAWT backend breaks ICCCM-compliance in recent JDK 1.5 and early

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Ingo Schwarze
Hi Joerg,

Joerg Jung wrote on Mon, Nov 09, 2015 at 10:31:10PM +0100:

> Index: patches/patch-dwm_1
> ===================================================================
> RCS file: patches/patch-dwm_1
> diff -N patches/patch-dwm_1
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-dwm_1 9 Nov 2015 21:30:56 -0000
> @@ -0,0 +1,21 @@
> +$OpenBSD$
> +--- dwm.1.orig Mon Nov  9 22:25:40 2015
> ++++ dwm.1 Mon Nov  9 22:26:32 2015
> +@@ -57,7 +57,7 @@ click on a tag label adds/removes that tag to/from the
> + .TP
> + .B Mod1\-Shift\-Return
> + Start
> +-.BR st(1).
> ++.BR uxterm(1).

The line

  .BR uxterm(1).

makes no sense.  You don't need a font alternation macro if you
just have one single argument.

From .Xr, mandoc -Tman produces just "uxterm(1)" without any
markup.  The man(7) manual recommends ".BR uxterm ( 1 ).",
i.e. keeping the punctuation out of bold face.  But for
consistency with the rest of the page, you probably want

  .BR uxterm (1).

Oh well, there is no consistent style for man(7) manuals, anyway.

This is not a comment on the port update - the words "man page patch"
just triggered my curiosity.  :-)

Yours,
  Ingo


> + .TP
> + .B Mod1\-,
> + Focus previous screen, if any.
> +@@ -151,7 +151,7 @@ dwm is customized by creating a custom config.h and (r
> + code. This keeps it fast, secure and simple.
> + .SH SEE ALSO
> + .BR dmenu (1),
> +-.BR st (1)
> ++.BR uxterm (1)
> + .SH BUGS
> + Java applications which use the XToolkit/XAWT backend may draw grey windows
> + only. The XToolkit/XAWT backend breaks ICCCM-compliance in recent JDK 1.5 and early
>

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Joerg Jung

> On 10 Nov 2015, at 02:48, Ingo Schwarze <[hidden email]> wrote:
>
> From .Xr, mandoc -Tman produces just "uxterm(1)" without any
> markup.  The man(7) manual recommends ".BR uxterm ( 1 ).",
> i.e. keeping the punctuation out of bold face.  But for
> consistency with the rest of the page, you probably want
>
>  .BR uxterm (1).

Ok, I will adjust it and add the space before I commit.

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Joerg Jung
In reply to this post by Ted Unangst-6

> On 09 Nov 2015, at 22:07, Ted Unangst <[hidden email]> wrote:
> Joerg Jung wrote:
>>
>> please find below an update for x11/dwm to 6.1.  This release contains
>> various fixes and improvements, see announcement [1] for more details.
>>
>> OK?
>
> so now that we finally changed the default xterm back to uxterm, they changed
> it to st. needs another man page patch. :)

I wonder what dwm users think about the following proposal:

Remove the uxterm patch and keep st as the default terminal.
If you are a dwm/dmenu suckless user on your desktop you are
probably also fine with using st.

st has become rather stable and usable. A lot of issues are
fixed and most terminal applications seem to work just fine.

Other “desktop environments” also all start their own terminals
(e.g. gnome, kde, xfce, …).

Or does this go one step too far?!  What do you think?
Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Dmitrij D. Czarkoff-2
Joerg Jung said:
> Remove the uxterm patch and keep st as the default terminal.

Although I am not dwm user any more, this makes sense to me.

FWIW I used to have a local patch that made dwm inspect env variable
TERMINAL and call whatever it contains.

--
Dmitrij D. Czarkoff

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Jack J. Woehr
In reply to this post by Joerg Jung
Joerg Jung wrote:
> I wonder what dwm users think about the following proposal: Remove the uxterm patch and keep st as the default terminal

dwm user here.

Since we can always change that in seconds and recompile, hardly matters.

OT, have you tried to run NetBeans 6.9.1 under dwm? It loads but is invisible on my dwm setup.

--
Jack J. Woehr     # Science is more than a body of knowledge. It's a way of
www.well.com/~jax # thinking, a way of skeptically interrogating the universe
www.softwoehr.com # with a fine understanding of human fallibility. - Carl Sagan

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Joerg Jung

> On 10 Nov 2015, at 14:58, Jack J. Woehr <[hidden email]> wrote:
>
> Joerg Jung wrote:
>> I wonder what dwm users think about the following proposal: Remove the uxterm patch and keep st as the default terminal
>
> dwm user here.
>
> Since we can always change that in seconds and recompile, hardly matters.

Ok, noted.

> OT, have you tried to run NetBeans 6.9.1 under dwm? It loads but is invisible on my dwm setup.

Sorry, but no :)

Java applications are well known for having problems with dwm (and
other tiling window managers).

There are various workarounds and fixes you can try, see BUGS
section in dwm(1) or http://tools.suckless.org/wmname.

> --
> Jack J. Woehr     # Science is more than a body of knowledge. It's a way of
> www.well.com/~jax # thinking, a way of skeptically interrogating the universe
> www.softwoehr.com # with a fine understanding of human fallibility. - Carl Sagan
>

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Ted Unangst-6
In reply to this post by Joerg Jung
Joerg Jung wrote:

>
> > On 09 Nov 2015, at 22:07, Ted Unangst <[hidden email]> wrote:
> > Joerg Jung wrote:
> >>
> >> please find below an update for x11/dwm to 6.1.  This release contains
> >> various fixes and improvements, see announcement [1] for more details.
> >>
> >> OK?
> >
> > so now that we finally changed the default xterm back to uxterm, they changed
> > it to st. needs another man page patch. :)
>
> I wonder what dwm users think about the following proposal:
>
> Remove the uxterm patch and keep st as the default terminal.
> If you are a dwm/dmenu suckless user on your desktop you are
> probably also fine with using st.
>
> st has become rather stable and usable. A lot of issues are
> fixed and most terminal applications seem to work just fine.
>
> Other “desktop environments” also all start their own terminals
> (e.g. gnome, kde, xfce, …).
>
> Or does this go one step too far?!  What do you think?

I've never liked st. I don't love xterm, per se, but despite the mind numbing
code it mostly seems to work. In particular, I like scrollback and I don't
want to run 32 different tmux sessions to get the same effect. Maybe they're
fixed, but I also had some screen drawing glitches in st a year or so ago.

Now I'm also old and cranky and I think gterm, kterm, eterm, etc. are all
stupid ideas too, but I'm not using dwm because I want to buy into the
suckless desktop environment. I just want a window manager.

(All that said, since I had to build 6.1 by myself to test, I also changed the
font to ubuntu mono to match my xterms, so maybe I will just keep building it
myself the way I like, so my opinion doesn't count.)

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Dutch Ingraham
On Tue, Nov 10, 2015 at 04:24:00PM -0500, Ted Unangst wrote:

> Joerg Jung wrote:
> >
> > > On 09 Nov 2015, at 22:07, Ted Unangst <[hidden email]> wrote:
> > > Joerg Jung wrote:
> > >>
> > >> please find below an update for x11/dwm to 6.1.  This release contains
> > >> various fixes and improvements, see announcement [1] for more details.
> > >>
> > >> OK?
> > >
> > > so now that we finally changed the default xterm back to uxterm, they changed
> > > it to st. needs another man page patch. :)
> >
> > I wonder what dwm users think about the following proposal:
> >
> > Remove the uxterm patch and keep st as the default terminal.
> > If you are a dwm/dmenu suckless user on your desktop you are
> > probably also fine with using st.
> >
> > st has become rather stable and usable. A lot of issues are
> > fixed and most terminal applications seem to work just fine.
> >
> > Other “desktop environments” also all start their own terminals
> > (e.g. gnome, kde, xfce, …).
> >
> > Or does this go one step too far?!  What do you think?
>
> I've never liked st. I don't love xterm, per se, but despite the mind numbing
> code it mostly seems to work. In particular, I like scrollback and I don't
> want to run 32 different tmux sessions to get the same effect. Maybe they're
> fixed, but I also had some screen drawing glitches in st a year or so ago.
>
> Now I'm also old and cranky and I think gterm, kterm, eterm, etc. are all
> stupid ideas too, but I'm not using dwm because I want to buy into the
> suckless desktop environment. I just want a window manager.
>
> (All that said, since I had to build 6.1 by myself to test, I also changed the
> font to ubuntu mono to match my xterms, so maybe I will just keep building it
> myself the way I like, so my opinion doesn't count.)
>
My preference is vanilla.

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Gleydson Soares-3
In reply to this post by Joerg Jung
On Tue, Nov 10, 2015 at 11:30:02AM +0100, Joerg Jung wrote:

>
> > On 09 Nov 2015, at 22:07, Ted Unangst <[hidden email]> wrote:
> > Joerg Jung wrote:
> >>
> >> please find below an update for x11/dwm to 6.1.  This release contains
> >> various fixes and improvements, see announcement [1] for more details.
> >>
> >> OK?
> >
> > so now that we finally changed the default xterm back to uxterm, they changed
> > it to st. needs another man page patch. :)
>
> I wonder what dwm users think about the following proposal:
>
> Remove the uxterm patch and keep st as the default terminal.
> If you are a dwm/dmenu suckless user on your desktop you are
> probably also fine with using st.
>
> st has become rather stable and usable. A lot of issues are
> fixed and most terminal applications seem to work just fine.
>
> Other “desktop environments” also all start their own terminals
> (e.g. gnome, kde, xfce, …).
>
> Or does this go one step too far?!  What do you think?
here is a proposal [1]
the idea of dwm is that user can edit your own def.h and rebuild it.

we should zap the patch and add our modified config.def.h to files/ directory
so others can to edit/override it with your own version....
?

diff includes man page bit pointed out by ingo@

[1] - shutupandhack.org/~gsoares/openbsd/dwm-6.1_.diff

?

Index: Makefile
===================================================================
RCS file: /cvs/ports/x11/dwm/Makefile,v
retrieving revision 1.26
diff -u -p -u -p -r1.26 Makefile
--- Makefile 25 Oct 2015 14:23:07 -0000 1.26
+++ Makefile 10 Nov 2015 22:25:41 -0000
@@ -2,8 +2,7 @@
 
 COMMENT= dynamic window manager
 
-DISTNAME= dwm-6.0
-REVISION= 1
+DISTNAME= dwm-6.1
 
 CATEGORIES= x11
 
@@ -18,12 +17,16 @@ WANTLIB= X11 Xinerama c
 
 MASTER_SITES= http://dl.suckless.org/dwm/
 
-RUN_DEPENDS= x11/dmenu>=4.4 \
+RUN_DEPENDS= x11/dmenu>=4.6 \
  fonts/terminus-font
 
 MAKE_ENV= LDFLAGS="${LDFLAGS}"
 FAKE_FLAGS= DESTDIR=""
 
 NO_TEST= Yes
+
+pre-configure:
+ cd  ${WRKSRC}/ && cp config.def.h config.def.h.orig
+ cp ${FILESDIR}/config.def.h ${WRKSRC}
 
 .include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/x11/dwm/distinfo,v
retrieving revision 1.18
diff -u -p -u -p -r1.18 distinfo
--- distinfo 18 Jan 2015 03:15:53 -0000 1.18
+++ distinfo 10 Nov 2015 22:25:41 -0000
@@ -1,2 +1,2 @@
-SHA256 (dwm-6.0.tar.gz) = srlIPeaSWe7qVoRImbsjhRWNPnmkLYKxDBQgmfyO61Y=
-SIZE (dwm-6.0.tar.gz) = 20810
+SHA256 (dwm-6.1.tar.gz) = wvbFYWfwrNvj3DfMqcGhkmDAQPLUgA41KaIa18zidf4=
+SIZE (dwm-6.1.tar.gz) = 25887
Index: files/config.def.h
===================================================================
RCS file: files/config.def.h
diff -N files/config.def.h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ files/config.def.h 10 Nov 2015 22:25:41 -0000
@@ -0,0 +1,115 @@
+/* See LICENSE file for copyright and license details. */
+
+/* appearance */
+static const char *fonts[] = {
+ "terminus:size=8"
+};
+static const char dmenufont[]       = "terminus:size=8";
+static const char normbordercolor[] = "#404040";
+static const char normbgcolor[]     = "#202020";
+static const char normfgcolor[]     = "#c0c0c0";
+static const char selbordercolor[]  = "#8888ff";
+static const char selbgcolor[]      = "#404040";
+static const char selfgcolor[]      = "#f0f0f0";
+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 */
+
+/* tagging */
+static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
+
+static const Rule rules[] = {
+ /* xprop(1):
+ * WM_CLASS(STRING) = instance, class
+ * WM_NAME(STRING) = title
+ */
+ /* class      instance    title       tags mask     isfloating   monitor */
+ { "Gimp",     NULL,       NULL,       0,            1,           -1 },
+ { "Firefox",  NULL,       NULL,       1 << 8,       0,           -1 },
+ { "Xonix",    NULL,       NULL,       0,            1,           -1 },
+ { NULL,       NULL,       "glxgears", 0,            1,           -1 },
+};
+
+/* layout(s) */
+static const float mfact     = 0.55; /* factor of master area size [0.05..0.95] */
+static const int nmaster     = 1;    /* number of clients in master area */
+static const int resizehints = 1;    /* 1 means respect size hints in tiled resizals */
+
+static const Layout layouts[] = {
+ /* symbol     arrange function */
+ { "[]=",      tile },    /* first entry is default */
+ { "><>",      NULL },    /* no layout function means floating behavior */
+ { "[M]",      monocle },
+};
+
+/* key definitions */
+#define MODKEY Mod1Mask
+#define TAGKEYS(KEY,TAG) \
+ { MODKEY,                       KEY,      view,           {.ui = 1 << TAG} }, \
+ { MODKEY|ControlMask,           KEY,      toggleview,     {.ui = 1 << TAG} }, \
+ { MODKEY|ShiftMask,             KEY,      tag,            {.ui = 1 << TAG} }, \
+ { MODKEY|ControlMask|ShiftMask, KEY,      toggletag,      {.ui = 1 << TAG} },
+
+/* helper for spawning shell commands in the pre dwm-5.0 fashion */
+#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", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
+static const char *termcmd[]  = { "uxterm", NULL };
+
+static Key keys[] = {
+ /* modifier                     key        function        argument */
+ { MODKEY,                       XK_p,      spawn,          {.v = dmenucmd } },
+ { MODKEY|ShiftMask,             XK_Return, spawn,          {.v = termcmd } },
+ { MODKEY,                       XK_b,      togglebar,      {0} },
+ { MODKEY,                       XK_j,      focusstack,     {.i = +1 } },
+ { MODKEY,                       XK_k,      focusstack,     {.i = -1 } },
+ { MODKEY,                       XK_i,      incnmaster,     {.i = +1 } },
+ { MODKEY,                       XK_d,      incnmaster,     {.i = -1 } },
+ { MODKEY,                       XK_h,      setmfact,       {.f = -0.05} },
+ { MODKEY,                       XK_l,      setmfact,       {.f = +0.05} },
+ { MODKEY,                       XK_Return, zoom,           {0} },
+ { MODKEY,                       XK_Tab,    view,           {0} },
+ { MODKEY|ShiftMask,             XK_c,      killclient,     {0} },
+ { MODKEY,                       XK_t,      setlayout,      {.v = &layouts[0]} },
+ { MODKEY,                       XK_f,      setlayout,      {.v = &layouts[1]} },
+ { MODKEY,                       XK_m,      setlayout,      {.v = &layouts[2]} },
+ { MODKEY,                       XK_space,  setlayout,      {0} },
+ { MODKEY|ShiftMask,             XK_space,  togglefloating, {0} },
+ { MODKEY,                       XK_0,      view,           {.ui = ~0 } },
+ { MODKEY|ShiftMask,             XK_0,      tag,            {.ui = ~0 } },
+ { MODKEY,                       XK_comma,  focusmon,       {.i = -1 } },
+ { MODKEY,                       XK_period, focusmon,       {.i = +1 } },
+ { MODKEY|ShiftMask,             XK_comma,  tagmon,         {.i = -1 } },
+ { MODKEY|ShiftMask,             XK_period, tagmon,         {.i = +1 } },
+ TAGKEYS(                        XK_1,                      0)
+ TAGKEYS(                        XK_2,                      1)
+ TAGKEYS(                        XK_3,                      2)
+ TAGKEYS(                        XK_4,                      3)
+ TAGKEYS(                        XK_5,                      4)
+ TAGKEYS(                        XK_6,                      5)
+ TAGKEYS(                        XK_7,                      6)
+ TAGKEYS(                        XK_8,                      7)
+ TAGKEYS(                        XK_9,                      8)
+ { MODKEY|ShiftMask,             XK_q,      quit,           {0} },
+};
+
+/* button definitions */
+/* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
+static Button buttons[] = {
+ /* click                event mask      button          function        argument */
+ { ClkLtSymbol,          0,              Button1,        setlayout,      {0} },
+ { ClkLtSymbol,          0,              Button3,        setlayout,      {.v = &layouts[2]} },
+ { ClkWinTitle,          0,              Button2,        zoom,           {0} },
+ { ClkStatusText,        0,              Button2,        spawn,          {.v = termcmd } },
+ { ClkClientWin,         MODKEY,         Button1,        movemouse,      {0} },
+ { ClkClientWin,         MODKEY,         Button2,        togglefloating, {0} },
+ { ClkClientWin,         MODKEY,         Button3,        resizemouse,    {0} },
+ { ClkTagBar,            0,              Button1,        view,           {0} },
+ { ClkTagBar,            0,              Button3,        toggleview,     {0} },
+ { ClkTagBar,            MODKEY,         Button1,        tag,            {0} },
+ { ClkTagBar,            MODKEY,         Button3,        toggletag,      {0} },
+};
+
Index: patches/patch-config_def_h
===================================================================
RCS file: patches/patch-config_def_h
diff -N patches/patch-config_def_h
--- patches/patch-config_def_h 25 Oct 2015 14:23:07 -0000 1.10
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,33 +0,0 @@
-$OpenBSD: patch-config_def_h,v 1.10 2015/10/25 14:23:07 jung Exp $
---- config.def.h.orig Mon Dec 19 16:02:46 2011
-+++ config.def.h Thu Oct  8 20:58:14 2015
-@@ -1,13 +1,13 @@
- /* See LICENSE file for copyright and license details. */
-
- /* appearance */
--static const char font[]            = "-*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*";
--static const char normbordercolor[] = "#444444";
--static const char normbgcolor[]     = "#222222";
--static const char normfgcolor[]     = "#bbbbbb";
--static const char selbordercolor[]  = "#005577";
--static const char selbgcolor[]      = "#005577";
--static const char selfgcolor[]      = "#eeeeee";
-+static const char font[]            = "-*-terminus-medium-*-*-*-*-*-*-*-*-*-*-*";
-+static const char normbordercolor[] = "#404040";
-+static const char normbgcolor[]     = "#202020";
-+static const char normfgcolor[]     = "#c0c0c0";
-+static const char selbordercolor[]  = "#8888ff";
-+static const char selbgcolor[]      = "#404040";
-+static const char selfgcolor[]      = "#f0f0f0";
- static const unsigned int borderpx  = 1;        /* border pixel of windows */
- static const unsigned int snap      = 32;       /* snap pixel */
- static const Bool showbar           = True;     /* False means no bar */
-@@ -20,6 +20,8 @@ static const Rule rules[] = {
- /* class      instance    title       tags mask     isfloating   monitor */
- { "Gimp",     NULL,       NULL,       0,            True,        -1 },
- { "Firefox",  NULL,       NULL,       1 << 8,       False,       -1 },
-+ { "Xonix",    NULL,       NULL,       0,            True,        -1 },
-+ { NULL,       NULL,       "glxgears", 0,            True,        -1 },
- };
-
- /* layout(s) */
Index: patches/patch-config_mk
===================================================================
RCS file: /cvs/ports/x11/dwm/patches/patch-config_mk,v
retrieving revision 1.9
diff -u -p -u -p -r1.9 patch-config_mk
--- patches/patch-config_mk 9 Jul 2012 16:33:40 -0000 1.9
+++ patches/patch-config_mk 10 Nov 2015 22:25:41 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-config_mk,v 1.9 2012/07/09 16:33:40 zinke Exp $
---- config.mk.orig Mon Dec 19 16:02:46 2011
-+++ config.mk Sat Jul  7 22:28:18 2012
-@@ -4,30 +4,30 @@ VERSION = 6.0
+--- config.mk.orig Sun Nov  8 23:39:37 2015
++++ config.mk Mon Nov  9 21:14:22 2015
+@@ -4,11 +4,11 @@ VERSION = 6.1
  # Customize below to fit your system
 
  # paths
@@ -15,25 +15,28 @@ $OpenBSD: patch-config_mk,v 1.9 2012/07/
 +X11INC = ${X11BASE}/include
 +X11LIB = ${X11BASE}/lib
 
- # Xinerama
- XINERAMALIBS = -L${X11LIB} -lXinerama
- XINERAMAFLAGS = -DXINERAMA
-
- # includes and libs
--INCS = -I. -I/usr/include -I${X11INC}
--LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${XINERAMALIBS}
-+INCS = -I${X11INC}
-+LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS}
+ # Xinerama, comment if you don't want it
+ XINERAMALIBS  = -lXinerama
+@@ -16,7 +16,7 @@ XINERAMAFLAGS = -DXINERAMA
+
+ # freetype
+ FREETYPELIBS = -lfontconfig -lXft
+-FREETYPEINC = /usr/include/freetype2
++#FREETYPEINC = /usr/include/freetype2
+ # OpenBSD (uncomment)
+ FREETYPEINC = ${X11INC}/freetype2
+
+@@ -25,14 +25,14 @@ INCS = -I${X11INC} -I${FREETYPEINC}
+ LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS} ${FREETYPELIBS}
 
  # flags
--CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
-+CPPFLAGS += -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
- #CFLAGS = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
--CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
-+CFLAGS += -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
- #LDFLAGS = -g ${LIBS}
--LDFLAGS = -s ${LIBS}
-+LDFLAGS += ${LIBS}
+-CPPFLAGS = -D_BSD_SOURCE -D_POSIX_C_SOURCE=2 -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
++CPPFLAGS += -D_BSD_SOURCE -D_POSIX_C_SOURCE=2 -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
+ #CFLAGS   = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
+-CFLAGS   = -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os ${INCS} ${CPPFLAGS}
+-LDFLAGS  = -s ${LIBS}
++CFLAGS   += -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os ${INCS} ${CPPFLAGS}
++LDFLAGS  += -s ${LIBS}
 
  # Solaris
  #CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
Index: patches/patch-dwm_1
===================================================================
RCS file: patches/patch-dwm_1
diff -N patches/patch-dwm_1
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-dwm_1 10 Nov 2015 22:25:41 -0000
@@ -0,0 +1,21 @@
+$OpenBSD$
+--- dwm.1.orig Sun Nov  8 19:39:37 2015
++++ dwm.1 Mon Nov  9 20:04:23 2015
+@@ -57,7 +57,7 @@ click on a tag label adds/removes that tag to/from the
+ .TP
+ .B Mod1\-Shift\-Return
+ Start
+-.BR st(1).
++.BR uxterm (1).
+ .TP
+ .B Mod1\-,
+ Focus previous screen, if any.
+@@ -151,7 +151,7 @@ dwm is customized by creating a custom config.h and (r
+ code. This keeps it fast, secure and simple.
+ .SH SEE ALSO
+ .BR dmenu (1),
+-.BR st (1)
++.BR uxterm (1)
+ .SH BUGS
+ Java applications which use the XToolkit/XAWT backend may draw grey windows
+ only. The XToolkit/XAWT backend breaks ICCCM-compliance in recent JDK 1.5 and early
Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Joerg Jung
In reply to this post by Ted Unangst-6
On Tue, Nov 10, 2015 at 04:24:00PM -0500, Ted Unangst wrote:

> Joerg Jung wrote:
> >
> > > On 09 Nov 2015, at 22:07, Ted Unangst <[hidden email]> wrote:
> > > Joerg Jung wrote:
> > >>
> > >> please find below an update for x11/dwm to 6.1.  This release contains
> > >> various fixes and improvements, see announcement [1] for more details.
> > >>
> > >> OK?
> > >
> > > so now that we finally changed the default xterm back to uxterm, they changed
> > > it to st. needs another man page patch. :)
> >
> > I wonder what dwm users think about the following proposal:
> >
> > Remove the uxterm patch and keep st as the default terminal.
> > If you are a dwm/dmenu suckless user on your desktop you are
> > probably also fine with using st.
> >
> > st has become rather stable and usable. A lot of issues are
> > fixed and most terminal applications seem to work just fine.
> >
> > Other “desktop environments” also all start their own terminals
> > (e.g. gnome, kde, xfce, …).
> >
> > Or does this go one step too far?!  What do you think?
>
> I've never liked st. I don't love xterm, per se, but despite the mind numbing
> code it mostly seems to work. In particular, I like scrollback and I don't
> want to run 32 different tmux sessions to get the same effect.

Yep, that is a very valid argument.

> Maybe they're fixed, but I also had some screen drawing glitches in st
> a year or so ago.

I think they are fixed.
 
> Now I'm also old and cranky and I think gterm, kterm, eterm, etc. are all
> stupid ideas too, but I'm not using dwm because I want to buy into the
> suckless desktop environment. I just want a window manager.

...but, but you got already a menubar, statusbar, and nine
virtual desktops! :)

> (All that said, since I had to build 6.1 by myself to test, I also changed the
> font to ubuntu mono to match my xterms, so maybe I will just keep building it
> myself the way I like, so my opinion doesn't count.)

I'm thinking about removing terminus font as dependency and instead keep
upstreams "monospace" font setting as default.  Then you and others may
not need to build it anymore and can just adjust ~/fonts.conf as needed.

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Stuart Henderson-6
Seems like this program could do with a configuration file!

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Joerg Jung
In reply to this post by Gleydson Soares-3
On Tue, Nov 10, 2015 at 07:44:06PM -0300, Gleydson Soares wrote:

> On Tue, Nov 10, 2015 at 11:30:02AM +0100, Joerg Jung wrote:
> >
> > > On 09 Nov 2015, at 22:07, Ted Unangst <[hidden email]> wrote:
> > > Joerg Jung wrote:
> > >>
> > >> please find below an update for x11/dwm to 6.1.  This release contains
> > >> various fixes and improvements, see announcement [1] for more details.
> > >>
> > >> OK?
> > >
> > > so now that we finally changed the default xterm back to uxterm, they changed
> > > it to st. needs another man page patch. :)
> >
> > I wonder what dwm users think about the following proposal:
> >
> > Remove the uxterm patch and keep st as the default terminal.
> > If you are a dwm/dmenu suckless user on your desktop you are
> > probably also fine with using st.
> >
> > st has become rather stable and usable. A lot of issues are
> > fixed and most terminal applications seem to work just fine.
> >
> > Other “desktop environments” also all start their own terminals
> > (e.g. gnome, kde, xfce, …).
> >
> > Or does this go one step too far?!  What do you think?
>
> here is a proposal [1]
> the idea of dwm is that user can edit your own def.h and rebuild it.

Right. The same approach is used in others as well, e.g.
tabbed, dmenu, surf, ...

So this is not only needed by dwm but all suckless ports and leads to a
suckless bsd.port.mk module.

> we should zap the patch and add our modified config.def.h to files/ directory
> so others can to edit/override it with your own version....
> ?

Mhhmmm... this way you have always M's in your tree, because
config.def.h is committed.
Better not commit it to have '?' instead of 'M's?
And what about using patches instead, like this:

pre-configure:
        cd ${WRKSRC} && patch -p0 < ${FILESDIR}/config.def.h.diff

However, I think this is a good starting point, but might be not enough.
Think of package updates/upgrades: You will loose the customizations
with them.

I already discussed a similar approach with czarkoff@ at u2k15, here are
some of our thoughts:

1. first, we need a directory were root user can put (config.def.h)
   patches he wants to have applied on top of existing port
        - should be something standardized like /usr/ports/mypatches or
          /etc/ports/patches or whatever... no matter, let's call this
          dir $PATCHES for now

2. secondly, we need a bsd.port.mk module which uses/applies these
   patches from $PATCHES folder
        - so, sub-folders for ports are needed, e.g. $PATCHES/dwm
        - the module might also "bump" the port, and introduce a
          "-custom flavor", e.g. dwm-6.0p1-custom.tgz

3. once the ports infrastructure is there and working, the pkg_* tools
   can be adjusted: e.g. if pkg_add -u finds a dwm -custom installed, it
   should issue a rebuild with user patches applied from ports tree

I think 1.+2. are easy and we should start with it.
The 3. is much more complicated and others like espie might not like it.

...

But maybe this all goes to far and is not worthwhile, and we should
instead just handle all suckless ports as you proposed below -- simply
put all own patches/files in files/ dir and force users to manually
rebuilt from port after upgrades... fine with me as well, as long as
all suckless ports treated similar.

> diff includes man page bit pointed out by ingo@
>
> [1] - shutupandhack.org/~gsoares/openbsd/dwm-6.1_.diff
>
> ?

> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/x11/dwm/Makefile,v
> retrieving revision 1.26
> diff -u -p -u -p -r1.26 Makefile
> --- Makefile 25 Oct 2015 14:23:07 -0000 1.26
> +++ Makefile 10 Nov 2015 22:25:41 -0000
> @@ -2,8 +2,7 @@
>  
>  COMMENT= dynamic window manager
>  
> -DISTNAME= dwm-6.0
> -REVISION= 1
> +DISTNAME= dwm-6.1
>  
>  CATEGORIES= x11
>  
> @@ -18,12 +17,16 @@ WANTLIB= X11 Xinerama c
>  
>  MASTER_SITES= http://dl.suckless.org/dwm/
>  
> -RUN_DEPENDS= x11/dmenu>=4.4 \
> +RUN_DEPENDS= x11/dmenu>=4.6 \
>   fonts/terminus-font
>  
>  MAKE_ENV= LDFLAGS="${LDFLAGS}"
>  FAKE_FLAGS= DESTDIR=""
>  
>  NO_TEST= Yes
> +
> +pre-configure:
> + cd  ${WRKSRC}/ && cp config.def.h config.def.h.orig
> + cp ${FILESDIR}/config.def.h ${WRKSRC}
>  
>  .include <bsd.port.mk>
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/x11/dwm/distinfo,v
> retrieving revision 1.18
> diff -u -p -u -p -r1.18 distinfo
> --- distinfo 18 Jan 2015 03:15:53 -0000 1.18
> +++ distinfo 10 Nov 2015 22:25:41 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (dwm-6.0.tar.gz) = srlIPeaSWe7qVoRImbsjhRWNPnmkLYKxDBQgmfyO61Y=
> -SIZE (dwm-6.0.tar.gz) = 20810
> +SHA256 (dwm-6.1.tar.gz) = wvbFYWfwrNvj3DfMqcGhkmDAQPLUgA41KaIa18zidf4=
> +SIZE (dwm-6.1.tar.gz) = 25887
> Index: files/config.def.h
> ===================================================================
> RCS file: files/config.def.h
> diff -N files/config.def.h
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ files/config.def.h 10 Nov 2015 22:25:41 -0000
> @@ -0,0 +1,115 @@
> +/* See LICENSE file for copyright and license details. */
> +
> +/* appearance */
> +static const char *fonts[] = {
> + "terminus:size=8"
> +};
> +static const char dmenufont[]       = "terminus:size=8";
> +static const char normbordercolor[] = "#404040";
> +static const char normbgcolor[]     = "#202020";
> +static const char normfgcolor[]     = "#c0c0c0";
> +static const char selbordercolor[]  = "#8888ff";
> +static const char selbgcolor[]      = "#404040";
> +static const char selfgcolor[]      = "#f0f0f0";
> +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 */
> +
> +/* tagging */
> +static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
> +
> +static const Rule rules[] = {
> + /* xprop(1):
> + * WM_CLASS(STRING) = instance, class
> + * WM_NAME(STRING) = title
> + */
> + /* class      instance    title       tags mask     isfloating   monitor */
> + { "Gimp",     NULL,       NULL,       0,            1,           -1 },
> + { "Firefox",  NULL,       NULL,       1 << 8,       0,           -1 },
> + { "Xonix",    NULL,       NULL,       0,            1,           -1 },
> + { NULL,       NULL,       "glxgears", 0,            1,           -1 },
> +};
> +
> +/* layout(s) */
> +static const float mfact     = 0.55; /* factor of master area size [0.05..0.95] */
> +static const int nmaster     = 1;    /* number of clients in master area */
> +static const int resizehints = 1;    /* 1 means respect size hints in tiled resizals */
> +
> +static const Layout layouts[] = {
> + /* symbol     arrange function */
> + { "[]=",      tile },    /* first entry is default */
> + { "><>",      NULL },    /* no layout function means floating behavior */
> + { "[M]",      monocle },
> +};
> +
> +/* key definitions */
> +#define MODKEY Mod1Mask
> +#define TAGKEYS(KEY,TAG) \
> + { MODKEY,                       KEY,      view,           {.ui = 1 << TAG} }, \
> + { MODKEY|ControlMask,           KEY,      toggleview,     {.ui = 1 << TAG} }, \
> + { MODKEY|ShiftMask,             KEY,      tag,            {.ui = 1 << TAG} }, \
> + { MODKEY|ControlMask|ShiftMask, KEY,      toggletag,      {.ui = 1 << TAG} },
> +
> +/* helper for spawning shell commands in the pre dwm-5.0 fashion */
> +#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", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
> +static const char *termcmd[]  = { "uxterm", NULL };
> +
> +static Key keys[] = {
> + /* modifier                     key        function        argument */
> + { MODKEY,                       XK_p,      spawn,          {.v = dmenucmd } },
> + { MODKEY|ShiftMask,             XK_Return, spawn,          {.v = termcmd } },
> + { MODKEY,                       XK_b,      togglebar,      {0} },
> + { MODKEY,                       XK_j,      focusstack,     {.i = +1 } },
> + { MODKEY,                       XK_k,      focusstack,     {.i = -1 } },
> + { MODKEY,                       XK_i,      incnmaster,     {.i = +1 } },
> + { MODKEY,                       XK_d,      incnmaster,     {.i = -1 } },
> + { MODKEY,                       XK_h,      setmfact,       {.f = -0.05} },
> + { MODKEY,                       XK_l,      setmfact,       {.f = +0.05} },
> + { MODKEY,                       XK_Return, zoom,           {0} },
> + { MODKEY,                       XK_Tab,    view,           {0} },
> + { MODKEY|ShiftMask,             XK_c,      killclient,     {0} },
> + { MODKEY,                       XK_t,      setlayout,      {.v = &layouts[0]} },
> + { MODKEY,                       XK_f,      setlayout,      {.v = &layouts[1]} },
> + { MODKEY,                       XK_m,      setlayout,      {.v = &layouts[2]} },
> + { MODKEY,                       XK_space,  setlayout,      {0} },
> + { MODKEY|ShiftMask,             XK_space,  togglefloating, {0} },
> + { MODKEY,                       XK_0,      view,           {.ui = ~0 } },
> + { MODKEY|ShiftMask,             XK_0,      tag,            {.ui = ~0 } },
> + { MODKEY,                       XK_comma,  focusmon,       {.i = -1 } },
> + { MODKEY,                       XK_period, focusmon,       {.i = +1 } },
> + { MODKEY|ShiftMask,             XK_comma,  tagmon,         {.i = -1 } },
> + { MODKEY|ShiftMask,             XK_period, tagmon,         {.i = +1 } },
> + TAGKEYS(                        XK_1,                      0)
> + TAGKEYS(                        XK_2,                      1)
> + TAGKEYS(                        XK_3,                      2)
> + TAGKEYS(                        XK_4,                      3)
> + TAGKEYS(                        XK_5,                      4)
> + TAGKEYS(                        XK_6,                      5)
> + TAGKEYS(                        XK_7,                      6)
> + TAGKEYS(                        XK_8,                      7)
> + TAGKEYS(                        XK_9,                      8)
> + { MODKEY|ShiftMask,             XK_q,      quit,           {0} },
> +};
> +
> +/* button definitions */
> +/* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
> +static Button buttons[] = {
> + /* click                event mask      button          function        argument */
> + { ClkLtSymbol,          0,              Button1,        setlayout,      {0} },
> + { ClkLtSymbol,          0,              Button3,        setlayout,      {.v = &layouts[2]} },
> + { ClkWinTitle,          0,              Button2,        zoom,           {0} },
> + { ClkStatusText,        0,              Button2,        spawn,          {.v = termcmd } },
> + { ClkClientWin,         MODKEY,         Button1,        movemouse,      {0} },
> + { ClkClientWin,         MODKEY,         Button2,        togglefloating, {0} },
> + { ClkClientWin,         MODKEY,         Button3,        resizemouse,    {0} },
> + { ClkTagBar,            0,              Button1,        view,           {0} },
> + { ClkTagBar,            0,              Button3,        toggleview,     {0} },
> + { ClkTagBar,            MODKEY,         Button1,        tag,            {0} },
> + { ClkTagBar,            MODKEY,         Button3,        toggletag,      {0} },
> +};
> +
> Index: patches/patch-config_def_h
> ===================================================================
> RCS file: patches/patch-config_def_h
> diff -N patches/patch-config_def_h
> --- patches/patch-config_def_h 25 Oct 2015 14:23:07 -0000 1.10
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,33 +0,0 @@
> -$OpenBSD: patch-config_def_h,v 1.10 2015/10/25 14:23:07 jung Exp $
> ---- config.def.h.orig Mon Dec 19 16:02:46 2011
> -+++ config.def.h Thu Oct  8 20:58:14 2015
> -@@ -1,13 +1,13 @@
> - /* See LICENSE file for copyright and license details. */
> -
> - /* appearance */
> --static const char font[]            = "-*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*";
> --static const char normbordercolor[] = "#444444";
> --static const char normbgcolor[]     = "#222222";
> --static const char normfgcolor[]     = "#bbbbbb";
> --static const char selbordercolor[]  = "#005577";
> --static const char selbgcolor[]      = "#005577";
> --static const char selfgcolor[]      = "#eeeeee";
> -+static const char font[]            = "-*-terminus-medium-*-*-*-*-*-*-*-*-*-*-*";
> -+static const char normbordercolor[] = "#404040";
> -+static const char normbgcolor[]     = "#202020";
> -+static const char normfgcolor[]     = "#c0c0c0";
> -+static const char selbordercolor[]  = "#8888ff";
> -+static const char selbgcolor[]      = "#404040";
> -+static const char selfgcolor[]      = "#f0f0f0";
> - static const unsigned int borderpx  = 1;        /* border pixel of windows */
> - static const unsigned int snap      = 32;       /* snap pixel */
> - static const Bool showbar           = True;     /* False means no bar */
> -@@ -20,6 +20,8 @@ static const Rule rules[] = {
> - /* class      instance    title       tags mask     isfloating   monitor */
> - { "Gimp",     NULL,       NULL,       0,            True,        -1 },
> - { "Firefox",  NULL,       NULL,       1 << 8,       False,       -1 },
> -+ { "Xonix",    NULL,       NULL,       0,            True,        -1 },
> -+ { NULL,       NULL,       "glxgears", 0,            True,        -1 },
> - };
> -
> - /* layout(s) */
> Index: patches/patch-config_mk
> ===================================================================
> RCS file: /cvs/ports/x11/dwm/patches/patch-config_mk,v
> retrieving revision 1.9
> diff -u -p -u -p -r1.9 patch-config_mk
> --- patches/patch-config_mk 9 Jul 2012 16:33:40 -0000 1.9
> +++ patches/patch-config_mk 10 Nov 2015 22:25:41 -0000
> @@ -1,7 +1,7 @@
>  $OpenBSD: patch-config_mk,v 1.9 2012/07/09 16:33:40 zinke Exp $
> ---- config.mk.orig Mon Dec 19 16:02:46 2011
> -+++ config.mk Sat Jul  7 22:28:18 2012
> -@@ -4,30 +4,30 @@ VERSION = 6.0
> +--- config.mk.orig Sun Nov  8 23:39:37 2015
> ++++ config.mk Mon Nov  9 21:14:22 2015
> +@@ -4,11 +4,11 @@ VERSION = 6.1
>   # Customize below to fit your system
>  
>   # paths
> @@ -15,25 +15,28 @@ $OpenBSD: patch-config_mk,v 1.9 2012/07/
>  +X11INC = ${X11BASE}/include
>  +X11LIB = ${X11BASE}/lib
>  
> - # Xinerama
> - XINERAMALIBS = -L${X11LIB} -lXinerama
> - XINERAMAFLAGS = -DXINERAMA
> -
> - # includes and libs
> --INCS = -I. -I/usr/include -I${X11INC}
> --LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${XINERAMALIBS}
> -+INCS = -I${X11INC}
> -+LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS}
> + # Xinerama, comment if you don't want it
> + XINERAMALIBS  = -lXinerama
> +@@ -16,7 +16,7 @@ XINERAMAFLAGS = -DXINERAMA
> +
> + # freetype
> + FREETYPELIBS = -lfontconfig -lXft
> +-FREETYPEINC = /usr/include/freetype2
> ++#FREETYPEINC = /usr/include/freetype2
> + # OpenBSD (uncomment)
> + FREETYPEINC = ${X11INC}/freetype2
> +
> +@@ -25,14 +25,14 @@ INCS = -I${X11INC} -I${FREETYPEINC}
> + LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS} ${FREETYPELIBS}
>  
>   # flags
> --CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
> -+CPPFLAGS += -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
> - #CFLAGS = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
> --CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
> -+CFLAGS += -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
> - #LDFLAGS = -g ${LIBS}
> --LDFLAGS = -s ${LIBS}
> -+LDFLAGS += ${LIBS}
> +-CPPFLAGS = -D_BSD_SOURCE -D_POSIX_C_SOURCE=2 -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
> ++CPPFLAGS += -D_BSD_SOURCE -D_POSIX_C_SOURCE=2 -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
> + #CFLAGS   = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
> +-CFLAGS   = -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os ${INCS} ${CPPFLAGS}
> +-LDFLAGS  = -s ${LIBS}
> ++CFLAGS   += -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os ${INCS} ${CPPFLAGS}
> ++LDFLAGS  += -s ${LIBS}
>  
>   # Solaris
>   #CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
> Index: patches/patch-dwm_1
> ===================================================================
> RCS file: patches/patch-dwm_1
> diff -N patches/patch-dwm_1
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-dwm_1 10 Nov 2015 22:25:41 -0000
> @@ -0,0 +1,21 @@
> +$OpenBSD$
> +--- dwm.1.orig Sun Nov  8 19:39:37 2015
> ++++ dwm.1 Mon Nov  9 20:04:23 2015
> +@@ -57,7 +57,7 @@ click on a tag label adds/removes that tag to/from the
> + .TP
> + .B Mod1\-Shift\-Return
> + Start
> +-.BR st(1).
> ++.BR uxterm (1).
> + .TP
> + .B Mod1\-,
> + Focus previous screen, if any.
> +@@ -151,7 +151,7 @@ dwm is customized by creating a custom config.h and (r
> + code. This keeps it fast, secure and simple.
> + .SH SEE ALSO
> + .BR dmenu (1),
> +-.BR st (1)
> ++.BR uxterm (1)
> + .SH BUGS
> + Java applications which use the XToolkit/XAWT backend may draw grey windows
> + only. The XToolkit/XAWT backend breaks ICCCM-compliance in recent JDK 1.5 and early

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Ted Unangst-6
Joerg Jung wrote:
> So this is not only needed by dwm but all suckless ports and leads to a
> suckless bsd.port.mk module.

Now we're going a bit far afield. For today, I'm ok with the update as is,
with the man page bits.

I do like the consistency our port offers, vs reflecting whatever the whim of
the day is for upstream. If anything, having a patch in patches made it easier
for me to change the font, since I can just edit the patch instead of trying
to generate a new one.

I'll note that anybody who does wish to override the terminal can easily put a
symlink in ~/bin/uxterm that points anywhere they like.

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Joerg Jung
In reply to this post by Joerg Jung
On Tue, Nov 10, 2015 at 11:44:20PM +0100, Joerg Jung wrote:
> On Tue, Nov 10, 2015 at 04:24:00PM -0500, Ted Unangst wrote:
>
> > (All that said, since I had to build 6.1 by myself to test, I also changed the
> > font to ubuntu mono to match my xterms, so maybe I will just keep building it
> > myself the way I like, so my opinion doesn't count.)
>
> I'm thinking about removing terminus font as dependency and instead keep
> upstreams "monospace" font setting as default.  Then you and others may
> not need to build it anymore and can just adjust ~/fonts.conf as needed.

I decided to keep the terminus font and the same look & feel to stay in
sync with the other suckless ports.  I think users can easily override
the font without re-compiling the port, using something like the snippet
below in ~/.fonts.conf

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match>
        <test name="family" qual="any">
                <string>Terminus</string>
        </test>
        <edit name="family" mode="assign" binding="same">
                <string>Inconsolata</string>
        </edit>
</match>
</fontconfig>

Reply | Threaded
Open this post in threaded view
|

Re: [UPDATE] x11/dwm

Joerg Jung
In reply to this post by Ted Unangst-6
On Tue, Nov 10, 2015 at 06:33:56PM -0500, Ted Unangst wrote:
> Joerg Jung wrote:
> > So this is not only needed by dwm but all suckless ports and leads to a
> > suckless bsd.port.mk module.
>
> Now we're going a bit far afield. For today, I'm ok with the update as is,
> with the man page bits.

Ok, I committed it as is for now.  All other discussed non-trivial
changes might be tackled later.  Need to think about this for a while,
maybe someone else comes up with something meanwhile.
 
> I do like the consistency our port offers,

I kept this consistency for now, old habbits... yalla yalla :)

> vs reflecting whatever the whim of
> the day is for upstream. If anything, having a patch in patches made it easier
> for me to change the font, since I can just edit the patch instead of trying
> to generate a new one.

This argument does not count, as you see only half of the config options
(the ones which we adjusted from vanilla).

> I'll note that anybody who does wish to override the terminal can easily put a
> symlink in ~/bin/uxterm that points anywhere they like.