This something that interests me but sadly not something I could help with<br><br>On Saturday, April 18, 2015, Carsten Mattner <<a href="mailto:carstenmattner@gmail.com">carstenmattner@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Sounds like a good project to me and I'd like to see the results.<br>
<br>
On Thu, Apr 16, 2015 at 11:30 PM, Auke Booij <<a href="javascript:;" onclick="_e(event, 'cvml', 'auke@tulcod.com')">auke@tulcod.com</a>> wrote:<br>
> Would this currently be considered an unrealistic project, or a<br>
> project not worth investing time in?<br>
><br>
> I should probably add that the wayland API is considered stable. It is<br>
> certainly stable enough for GNOME, KDE, enlightenment, and numerous<br>
> other window managers to be in active development (and very far, at<br>
> that). The key "xdg-shell" protocol is still under development, but<br>
> for the (technically rather limited) use case of WaylandMonad, no<br>
> substantial changes are being introduced.<br>
><br>
> On 14 April 2015 at 14:41, Auke Booij <<a href="javascript:;" onclick="_e(event, 'cvml', 'auke@tulcod.com')">auke@tulcod.com</a>> wrote:<br>
>> A few weeks ago, I sent in a Google Summer of Code application for the<br>
>> <a href="http://haskell.org" target="_blank">haskell.org</a> organization to work on porting Xmonad to wayland. The<br>
>> haskell organization has asked me to find a mentor for my application,<br>
>> which is the main reason for this email.<br>
>><br>
>> If you are<br>
>> 1. an adult (sorry kids, Google's rules)<br>
>> 2. experienced with the Xmonad source<br>
>> 3. interested in wayland<br>
>> 4. willing to spend some time this summer on mentoring me<br>
>> then please contact me or someone in the haskell community to discuss<br>
>> mentoring options. The deadline for proposal matching is the 24th of<br>
>> April, so please contact me within this week (or better yet, as soon<br>
>> as possible).<br>
>><br>
>> Without a mentor, I cannot get accepted for GSoC. I am already up to<br>
>> speed on wayland, so I think any Xmonad developer with some free time<br>
>> would make a great mentor.<br>
>><br>
>> I attached my GSoC application below.<br>
>><br>
>> Any comment on making Xmonad work on wayland is welcome as well. My<br>
>> current plan is to fork Xmonad and replace all the X bits by wayland<br>
>> bits - see also my proposal below.<br>
>><br>
>> Greetings,<br>
>> Auke.<br>
>><br>
>><br>
>> Abstract<br>
>> ===<br>
>> XMonad has, for a long time, been a flagship product of the Haskell<br>
>> community. With the arrival of wayland, XMonad is bound to look stuck<br>
>> in the past, and it's time for a port. Thanks to my previous work on<br>
>> wayland-related haskell libraries, this is now a viable project.<br>
>><br>
>> Proposal<br>
>> ===<br>
>><br>
>> Background<br>
>> ---<br>
>> X11 has long been the de facto standard way for applications to<br>
>> display graphical user interfaces on the screen. For various reasons,<br>
>> a new project called wayland has been started, that can be seen as a<br>
>> successor of the X ecosystem, or at least can be seen as something<br>
>> that will play a very important role. Among others, GNOME is already<br>
>> working on wayland support, and plans to make it fully supported by<br>
>> version 3.18. This shows the relevance of wayland.<br>
>><br>
>> XMonad is a flagship product of the Haskell community that is often<br>
>> cited as an example of the applicability of Haskell: its real world<br>
>> value. XMonad is a compositor (aka window manager) for the X11<br>
>> ecosystem.<br>
>><br>
>> In the new wayland ecosystem, one cannot reuse X11 compositors: they<br>
>> need to be partially rewritten.<br>
>><br>
>> Goal<br>
>> ---<br>
>> I intend to fork XMonad and make it into a wayland compositor. Since<br>
>> the general ideas behind the X11 and the wayland protocol are not too<br>
>> different, this should be doable: we are still working with pointers<br>
>> and windows and input and output and renderings and messages. However,<br>
>> the wayland setup is technically very different from X11, since the<br>
>> central X11 server has been replaced by the compositor itself, and<br>
>> this means some very foundational code will need to be rewritten.<br>
>><br>
>> I am the author of hayland [1], the haskell bindings to the wayland C<br>
>> library, as well as haskell-xkbcommon [2], the haskell bindings to the<br>
>> xkbcommon C library. With these two projects in place, the time is<br>
>> ripe for a wayland compositor written in haskell: the preliminaries<br>
>> are mostly there.<br>
>><br>
>> As part of this project, I will have to invest some time in these two<br>
>> bindings projects as well (since they are quite new and have had<br>
>> little testing). For this reason, I intend to keep the scope of this<br>
>> project limited, and focus on getting some version of XMonad running<br>
>> on Wayland.<br>
>><br>
>> I do not intend to change the architecture of XMonad, except wherever<br>
>> this would not require much more investment of time, and only as<br>
>> wished by the community. In other words: if you have anything that I<br>
>> should change about XMonad, and it is easy to switch to this new<br>
>> thing, then I'll use it. Any serious architectural changes will need<br>
>> to take place in a later stage.<br>
>><br>
>> Deliverables<br>
>> ---<br>
>> - A working wayland compositor written in wayland, based on XMonad<br>
>> - Documentation of the source code (i.e. a technical document), user<br>
>> documentation (where this differs from XMonad)<br>
>> - Roadmap for further work: how should this project be continued into<br>
>> a next iteration of the XMonad project?<br>
>><br>
>> Roadmap<br>
>> ---<br>
>> April/May: properly work my way through the XMonad source, and<br>
>> document things that will need changing<br>
>><br>
>> June: Hack until it's working<br>
>><br>
>> June+July: More hacking, also documentation<br>
>><br>
>> August: Prepare a proper release, clean up code<br>
>><br>
>> Bio<br>
>> ---<br>
>> I am currently studying for a Master of Logic in Amsterdam, and have a<br>
>> Master of Advanced Studies in Mathematics from Cambridge, UK, a BSc in<br>
>> Applied Mathematics and a BSc in Electrical Engineering (both from TU<br>
>> Delft).<br>
>><br>
>> I have previously successfully finished GSoC (2010, with Gentoo) and<br>
>> SOCIS (in 2013, with PyBRML) (SOCIS is a GSoC-like program managed by<br>
>> the European Space Agency).<br>
>><br>
>> I am the author of hayland [1], the haskell bindings to the wayland C<br>
>> library, as well as haskell-xkbcommon [2], the haskell bindings to the<br>
>> xkbcommon C library.<br>
>><br>
>><br>
>><br>
>> The name of this fork is up for discussion.<br>
>><br>
>> [1] <a href="https://github.com/tulcod/haskell-wayland" target="_blank">https://github.com/tulcod/haskell-wayland</a><br>
>><br>
>> [2] <a href="https://github.com/tulcod/haskell-xkbcommon" target="_blank">https://github.com/tulcod/haskell-xkbcommon</a><br>
> _______________________________________________<br>
> xmonad mailing list<br>
> <a href="javascript:;" onclick="_e(event, 'cvml', 'xmonad@haskell.org')">xmonad@haskell.org</a><br>
> <a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad</a><br>
_______________________________________________<br>
xmonad mailing list<br>
<a href="javascript:;" onclick="_e(event, 'cvml', 'xmonad@haskell.org')">xmonad@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/xmonad</a><br>
</blockquote>