oasislinux / oasis

a small statically-linked linux system
Other
2.75k stars 84 forks source link

Interested in other display servers? I have two suggestions. #52

Closed vl-ms closed 1 month ago

vl-ms commented 1 year ago

Arcan - this project also went with Lua configuration, and can be configured to be very minimal. Most of the dependencies are optional, but overall it's quite a bit bigger than velox at the moment, mostly because of it's 15+ year history. All of the desktop environments are sets of Lua scripts, including:

  1. Durden, a traditional plain desktop environment. It can be configured to emulate the behaviour of other desktop environments if you want to.
  2. Pipeworld, a zoomable UI window manager. Remember that scene in Jurassic park? Yeah, except this is not nearly as awkward. It is also a shell-powered spreadsheet which means you can pipe stuff between windows.
  3. Safespaces, a 3D & VR desktop environment. Nuff said. There is a problem with Arcan, though: it requires some C++ code. Right now it's at least cmake. I wrote a message to letoram (main dev) about the existence of Premake, which basically serves the same purprose but involves Lua & C instead of C++, and he said that it is welcome & possible at around 0.7 release, since by that point just enough refactoring will happen for it to work out. I think the LOC will also gradually reduce with time, especially once certain in-tree libraries will be separated into additional packages (arcan-net, arcan-wayland, ...)

And there is also nano-X, previously called microwindows. It is a tiny X11 server which implemented just enough X11 to run motif. There are bigger problems with it:

  1. It might carry some Xorg deficiences (like sharing properties of all windows with all other windows, poorly implemented global clipboard, ...)
  2. It carries an MPL license, which is... weird.
  3. It has a lot of backends that are useless to us: SDL, Win32, Android, ...
  4. It is smaller (in terms of LOC) than Arcan but bigger than Velox. I suppose somebody could reimplement nano-X under ISC or BSD0 and pull out all of the unnecessary parts but what's the point? I don't think Xorg will be alive in 10 years seeing advancements on Arcan and Wayland fronts, unless we are talking about xarcan or xwayland.
alavaelian commented 1 year ago

i like this display server

michaelforney commented 1 year ago

Thanks for the suggestions. The build system of arcan is not the issue, oasis uses its own build system. The real issue is its dependency on mesa (opengl), which pulls in a ton of code (and some C++), and requires dynamic linking. harfbuzz is also C++.

I haven't looked too closely at nano-X, but I don't really see what advantages it brings over swc/velox. If it doesn't have too many dependencies and you wanted to package it and send a patch, I might consider merging it.