Re: [dev] gtk3 support for surf?

From: Michael Forney <>
Date: Sat, 11 Jan 2014 01:38:13 +0000


On Fri, 10 Jan 2014 17:05:17 +0100, FRIGN <> wrote:
> On Fri, 10 Jan 2014 18:49:13 +0100
> Markus Teich <> wrote:
> > If I can, I would like to help. Where is the code hosted? I also found swc[0]
> > written by the same guy who wrote the st port to wayland. However I feel it is
> > not really as simple as it claims to be.
> The code is hosted here[1].
> Thanks for linking me to swc! I'll check it out and combine it with my
> ideas. There really is a lot of code in that library!

I'm glad others are interested in this! In response to your comments
about it being a lot of code: writing a display server turns out to be a
lot of work, which I'm sure you will discover for yourself :) Although
perhaps it appears larger than it is; I tend to prefer working with many
small files instead of several large ones. While there are a lot of
source files, my current working tree sits at < 6k SLOC. Additionally, I
am quite open to suggestions about how certain portions could be
simplified or done differently.

I am definitely interested in combining efforts/ideas if possible. I've
been working on this off and on for about a year now, and I have learned
a lot in that time. Feel free to use swc as a reference for your project
if you want (I do believe it to be quite a bit simpler than weston).

Perhaps the biggest obstacle I've come across is how to do rendering in
a simple and efficient way, yet retain hardware support. I opted to
create a very primitive drawing library (which is also used by my st and
dmenu ports), which I am currently in the middle of a major refactor. It
currently only supports software and intel hardware rendering. There is
of course OpenGL, and while it will most likely be available on the
majority of systems, it is fairly heavyweight for the job.

> I'll definitely give you guys an update on my status, but I'm sure
> there should be a way to write a simple tiling-wm in less than 5k SLOC.

I'm of the opinion that the compositor and window manager should be
separate projects, which is why I implemented swc as a library. Look at
the number of tiling X11 window managers out there. It doesn't make
sense to have each of them implement their own compositing code.

Please let me know if you have any questions! I would be happy to help!

Michael Forney <>
Received on Sat Jan 11 2014 - 02:38:13 CET

This archive was generated by hypermail 2.3.0 : Sat Jan 11 2014 - 02:48:06 CET