Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Creating a window manager for Linux [closed]

Tags:

I want to create a simple stacking window manager (in C) for private use, mainly for the purpose of learning and challenging myself.

I've looked through twm's source code which has relatively few bells and whistles but it seems very low level since it's not based on a widget toolkit.1 Would using a toolkit such as GTK+ be preferable? I'm afraid that some of the code and libraries in twm might be too antiquated (edit: deprecated) and I want the window manager to use relatively modern libraries. For the sake of understanding I would also be interested in suggestions how to start a window manager from scratch — there aren't many tutorials for this purpose.

Update: For those thinking of similar projects: I ended up using Common Lisp and the CLX library. tinywm-lisp served as a basis and the brilliant CLFSWM and Stumpwm were a great help. For reference I used the CLX — Common LISP X Interface (PDF warning) and #xlib on Freenode.

like image 826
Iceland_jack Avatar asked Aug 12 '10 22:08

Iceland_jack


People also ask

What is the most lightweight window manager?

IceWM is a small, fast, lightweight Window Manager designed to resemble Microsoft Windows. It provides basic, standards compliant window management and a TaskBar. It is very configurable, with many options. So many, in fact, that dispite several attempts, there is no good, intuitive configuration program for it.

How do tiling window managers work?

In computing, a tiling window manager is a window manager with an organization of the screen into mutually non-overlapping frames, as opposed to the more common approach (used by stacking window managers) of coordinate-based stacking of overlapping objects (windows) that tries to fully emulate the desktop metaphor.

How do I switch between windows managers in Linux?

To change your display manager, you can use the command dpkg-reconfigure followed by an installed display manager. After running the command dpkg-reconfigure, you'll see the screen shown above with a brief description of display managers.


1 Answers

Whatever you do, use XCB and not Xlib. It' modern, asynchronous, simpler and gives you direct access to the X11 protocol.

like image 110
Serge Avatar answered Sep 20 '22 05:09

Serge