Wikipedia article

I just did a quick edit on the wiki, adding the Pinephone as a target for Sculpt. I also added Sculpt onto the Pinephone page. However it seems to me I ought to do a lot more fundamental work on the Genode page.

  • Lots of the references point at old pages. There are hardly any references from the current decade, giving the impression that Genode was relevant in the 2010s. Some of these references are tenuous.
  • The very prominent section called “Criticism”. I think most articles now adopt a “reception” section instead that contains both praise and criticism. C++, XML and local namespacing might deserve a paragraph each - at best - under a sub-heading of “criticisms” or “design choices”.
  • Sculpt Mobile probably deserves its own subheading nested within the Sculpt section.
  • The language is that rather plodding pedantic style a lot of wiki contributors (including me to start with) fall into. Obviously the writing style needs to reflect academic standards of Wikipedia, but I think that within those bounds it could be more engaging.

So heads up: I would like to re-write quite a lot of it. I am quite keen especially to update references to newer sources or - better still - delete them where they are tenuous.

3 Likes

Example of the terrible use of language: here is the Sculpt section:

The Genode project publishes a desktop operating system named Sculpt that targets contemporary consumer laptops.[24] as well as the Pinephone[25]. Sculpt is a small base system with automatic device detection and configuration, some GUI control interfaces, and frontends to the Genode package manager. The system does not feature a full desktop environment, but requires users to deploy virtual machines hosting traditional OSes for a fully featured desktop. Sculpt is distinguished from the Genode operating system framework in that it relies heavily on dynamic reconfiguration using privileged control components in contrast to specialized systems with static policies.

Who even refers to “a contemporary consumer laptop”? I think the claimed need for virtual machines to do tasks (which is bound to scare off the curious who might otherwise try Sculpt) is greatly reduced with the porting of Qt apps, and in any case outside the scope of a brief summary. As for the last sentence, does any of us understand it? Probably not the normal person refering to Wikipedia.

Wikipedia is one of the first places someone might look if they hear of Genode and want a summary, and Wikipedia deserves better. This is all the more disappointing given that Genode project itself is awash with high quality and very readable documentation!

1 Like

I have made a draft of what I think is an improvement. Essentially it modifies the copy on Geode.org homepage for the introduction, the site’s ‘about’ page for “features” and the Sculpt download page for the “Sculpt” section. I decided it was better starting point than trying to rehabilitate the existent text, after struggling to write copy from scratch.

I would like some reassurance that re-using site copy - with my own modifications and additions to comply with Wikipedia style - is okay with Genode labs?

1 Like

Thank you so much @squizzler for taking this initiative! I appreciate it a lot. In fact, I always shared your sentiment but did not dare to edit the page to avoid smelling of self promotion. But truth being told, the Wikipedia page actually saddened me a bit.

You are in a fairly perfect position to make edits because your view on the project is untainted, while you have a lot of insight since you have followed our work for such a long time.

Thanks for asking about the repurposing of text from our website. I’m perfectly happy with that and want to assure you that I trust your judgement. Your tasteful Genode-related postings across a variety of projects and communities speak for themselves.

2 Likes

Thank you, also I am blushing from the praise :blush:

So now the “edit” (actually full re-write) has gone live. If you need to make corrections or clarifications of course you are at liberty do so, otherwise chat in the page’s talk area, or comment here. Further thoughts are:

  • “Reception” section is currently rather flippant; that at least replaces the rap sheet titled “criticism”. I hope better reviews are forthcoming that can be cited.
  • Sculpt probably needs its own page in the fullness of time.

Quick-take feedback: the reference to Qt is in the sentence next to Leitzentrale, glancing readers might be led to believe that Leitzentrale is implemented in Qt?

I wonder if something like this would be apropos somewhere in the wiki (with supporting hyperlinks to the relevant mailing-list posts): “due to its extreme modularity and re-usability, Genode has been considered as the basis for reviving or re-implementing other OSes, including OS/2, RiscOS, BeOS, etc – something that few other systems can claim, except maybe Linux”

Good call. There are a a couple of winkles I had previously spotted and I will add this to the list of small edits tomorrow.

It is not a use case I am really aware of aside, of course, from your own HoG. Probably because I do not participate in the mailing list. Perhaps a subject for a Genodians article to summarise the discussion which in turn be cited (I used another genodians post to make a reference: it is great because it directs the curious straight into the Genode rabbithole!)? I’ll consider in the meantime starting a wiki page chat.

Edit: I think there might be value in a “use cases” or “practical applications” section to talk about the different things genode can be / is used for, ranging from academic research to embedded, to smartphone, etc. OS recreation could be one, here there is an example at least :slight_smile:.

2 Likes

I wanted to put the highlights in the “features” section. Do you think I should use those on the Genode homepage “about”

CPU architectures: x86 (32 and 64 bit), ARM (32 and 64 bit), RISC-V

Kernels: most members of the L4 family (NOVA, seL4, Fiasco.OC, OKL4 v2.1, L4ka::Pistachio, L4/Fiasco), Linux, and a custom kernel.
Virtualization: VirtualBox (on NOVA), a custom virtual machine monitor for ARM, and a custom runtime for Unix software
Over 100 ready-to-use components

… Or the much more verbose equivalent in Genode Foundations?

CPU architectures

Genode supports the x86 (32 and 64 bit), ARM (32 and 64 bit), and RISC-V (64 bit) CPU architectures. On x86, modern architectural features such as IOMMUs and hardware virtualization can be utilized. On ARM, Genode is able to take advantage of TrustZone and virtualization technology.[1]

Kernels

Genode can be deployed on a variety of different kernels including most members of the L4 family (NOVA, seL4, Fiasco.OC, OKL4 v2.1, L4ka::Pistachio, L4/Fiasco). Furthermore, it can be used on top of the Linux kernel to attain rapid development-test cycles during development. Additionally, the framework is accompanied with a custom microkernel that has been specifically developed for Genode and thereby further reduces the complexity of the trusted computing base compared to other kernels.[1]

Virtualization

Genode supports virtualization at different levels:

Using NOVA or Genode's custom kernel, faithful virtualization via VirtualBox allows for the execution of unmodified guest operating systems as Genode subsystems. Alternatively, the Seoul virtual machine monitor can be used to run unmodified Linux-based guest OSes.
On ARM, Genode can be used as TrustZone monitor, or as a virtual machine monitor that facilitates ARM's virtualization extensions.[1]
Building blocks

The Framework consists of hundreds of ready-to-use components such as:

Device drivers for most common PC peripherals including networking, storage, display, USB, PS/2, Intel wireless, Intel GPUs, and audio.
Device drivers for a variety of ARM-based SoCs, in particular the NXP i.MX family.
A GUI stack including a low-complexity GUI server, window management, and widget toolkits such as Qt5.
Networking components such as TCP/IP stacks and packet-level network services.
Applications based on the POSIX interface, including GNU coreutils, bash, GCC, binutils, and findutils.[1]

I think the former is more concise.

Neither one works perfectly, imo. For a features section I would lean closer to the second, while if this was being added to the blurb at the top of the page I would lean closer to the first.

1 Like

I’ve gone with the second one - as you suggest this could be further edited in future.

Sculpt now sits as sub-heading in “releases” section - better IMO to think of it as a “disto”. I am fidgeting around with where it belongs, until it earns its own page!

Incidentally I have recently added Genode as a supported OS to both Pinephone and i.MX pages. As Tesco (a UK supermarket chain) says in its adverts, every little helps!

3 Likes