File:  [NetBSD Developer Wiki] / wikisrc / projects / project / move-beyond-twm.mdwn
Revision 1.3: download - view: text, annotated - select for diffs
Sat Sep 26 14:26:25 2020 UTC (2 years, 2 months ago) by nia
Branches: MAIN
CVS tags: HEAD

[[!template id=project

title="Move beyond TWM"


done_by="Youri Mouton, Nia Alarie"



***Update***: This project is completed. ctwm was imported in 2015 by
Youri, and Nia wrote a reworked config and made in the default in 2020.

Right now if you install NetBSD with native X11 you get the same
default X session that X has shipped forever, complete with TWM. Just
like it's 1989.

Obviously this behavior can be improved after installation by adding
suitable packages and choosing a different window manager, or
installing one of the full desktop environments. Veteran NetBSD users
know how to do this. Veteran Unix and X users who aren't veteran
NetBSD users can figure it out pretty easily. Most such people have an
X setup they've been using for years that they can and do just plop
into place on a new machine.

This project does not affect those users, even the ones who for some
crazy reason *want* to use twm. It also does not affect users who just
want to install GNOME, KDE, or whatever other desktop.

The goal of this project is to provide a less knobby default X
environment for users who are willing to run plain X rather than a
full desktop but do not have their own X setup.

The project is: choose a window manager suitable for replacing twm in
base; import it into base; and update the default X config to provide
a decent default session using it.

Note that it needs to be a mainstream window manager; tiling window
managers and other exotica are not really suitable for the purpose. It
should also not depend on anything that isn't in base (that is, base
with native X), it should be smallish and not a bloatmonster, and
ideally it should be BSD-licensed.

Based on the window managers in pkgsrc, there are two chief
candidates: fluxbox and golem. Each has pluses and minuses. Some of
these are:

* golem is prettier and fully themeable
* golem is written in C, fluxbox in C++
* golem is a lot smaller (less than 1/10th the code size)
* golem currently needs some work, chiefly on the config system; fluxbox appears to be ready to go
* golem is just about dead upstream; fluxbox is not very active but is still getting occasional releases

Currently it looks like golem is a better choice, especially since
ideally we'd like to pick something that will run decently on
older/slower ports. But it requires more work.

Note that we could (AFAIK) become upstream for golem; this is not
necessarily a bad thing.

There might be other possible choices; these two are the ones in
pkgsrc that seem viable.

CVSweb for NetBSD wikisrc <> software: FreeBSD-CVSweb