Roadmap 2019

Norman Feske norman.feske at
Tue Dec 25 19:18:28 CET 2018

Hi Cedric,

your enthusiasm is a beautiful sight. I find your perspective as a
newcomer immensely interesting. Thank you very much for joining the
discussion. :-)

> I'll now 'do my part' with Genode though: will open a
> micro-blog in a few days about my technical forays into Genode,
> my mistakes and misunderstandings and how I solve them.. So
> that others will save time. Including some additional thoughts
> on this email thread -- to help keep this message short(er than
> a novel). Once I have more exciting news items in store, I'll
> give my micro-blog wider circulation, on the haiku forums (they
> don't have a gigantic readorship, but they are very
> enthusiastic early-adopter types so likely worth the effort).
> Waiting until I announce "our flagship app runs on Genode" will
> carry more weight.

That sounds fantastic. Just out of curiosity, how does the
idea that I mentioned in my reply to Guide resonate with you?

> This might relate to a similar topic I have in mind these days:
> if e.g. the genode team does not come up with an "official"
> desktop but leaves it to the community to do (several)
> implementations, we might end up with the fragmentation that is
> prevalent in the Linux world: there are many "distros", which I
> hear are more or less (sometimes "less") compatible with each
> other.
> The way this decision making difficulty has always been
> addressed in the Be/Haiku world is something like, "choose
> reasonable defaults", "allow some (limited) easy
> customisations", and "keep power-user customisation accessible
> but under the hood".

I agree that we should learn from the experience with the fragmented
Linux world and the much more coherent Haiku world.

We ultimately should strive for a agreed-upon official way. Right now,
however, I feel that it's still too early to take informed decisions. So
may we take 2019 as the year for desktop experimentation?

> Concrete ideas for "spreading the word" on packages:
> The single biggest issue I have with the 'depot' system and
> packages in Genode, is the lack of an introductory paragraph,
> explaining what each package is about. Small potatoes, right?
> Power users probably know software names by heart in their
> sleep? But there are lots of intermediate-style users who
> don't. It does make a difference.

Thank you for making this point.

> Regarding the need to "get the word out" re. the existence of
> packages, and the fact that people's efforts tend to remain
> below-the-radar:
> There should be a central depot manager, with a very easy way
> to add third-party repos (depots).
> E.g. in the example I am familiar with,
> one just has to invoke Tools > Manage Depots, add a new depot
> URL, and you may immediately download (and run) whatever is in
> that depot.
> Those URLs are not 'auto discovered' though, one still has to
> read up about them e.g. in a discussion forum: someone would
> announce "I've created my own depot with my own app builds,
> here it is, use at your own risk". Then it's up to you to
> copy-paste the depot's address in the depot manager. Either
> that or, using a terminal, I'd type "pkgman add
> http...some-repo-here", and pkgman downloads the metadata and
> from now on "pkgman search foo" will return results also from
> that newly added repo (depot).

This is actually very similar to what I had in mind for Sculpt.

> Qt seems to have become almost an industry standard.. But the
> documentation alone is dozens of MB big; at least that's how
> big it shows in the haiku depots here:
> [...]
> For that, and for other reasons I guess it will not be used by
> Genode as its "native" API of course. Looking at the nitpicker
> code seems to confirm that in spades.

In my reply to Guido, I described my personal stance. In short, your
impression is correct.

> To my (biased) eyes, the Be/Haiku API (organized in "kits")
> compares favorably to what I have seen in my coding life (incl.
> Java: the JDK is so broad and powerful.. but also of a more
> difficult access). There are some imperfections (BMessenger in
> the app kit, some aspects of the InterfaceKit, the Media Kit)
> that should obviously be fixed by whoever uses that API as
> inspiration. But it could indeed provide some inspiration to
> Genode. Developer should be able to tap classes like BButton,
> BMenu, BListView, automatic font-sensitive layout and the like.
> Modernized, cleaned up of deprecated calls, wrapped in
> namespaces instead of polluting the top namespace of course.
> Reading the source code of demo/scout and of sculpt/ I see lots
> of familiar things (repaint() is what I call Invalidate(),
> Window and NitPicker_Connection seem to be what I call a
> BWindow ..etc) but there's a big gap to fill.
> [...]
> Anyway, work will start soon on 'porting' the kits to Genode..

Wow! That is intriguing.

> Will do some micro-blogging about it, post screenshots (still
> haven't found how to do a screen grab in Sculpt BTW.. now
> realizing maybe this is un-implemented on purpose, as it poses
> a security risk?) and the like, in case it's of value.

Indeed. However, we have a rough plan to enable features like
screenshots and screen recording. Maybe, these are worth considering for
the road map?

> - I've gone "cross platform", my apps can be compiled against both Haiku and Genode with little if-def'ing, thanks to adding a 
> compatibility layer 'bridging' the userland API I'm used to and which (to me) is close to perfection.
> - The systems we are selling are running TT-CC on Genode, customers are happy.
> - I've started using Genode for non-coding day to day tasks (reading the news with arora? relaxing with Midwinter on dosbox ?).
> - I've made some progress toward using Genode as a "self hosted" coding system.
> - I've convinced at least a few in the Haiku community to take a look at Genode, and that working together could be a win-win rather 
> than a competition or a zero sum game.
> - Tapping that "reservoir" of early adopter types proves to be a good idea, bringing developer and user resources to built momentum (to 
> both OSes).
> - I wrote some code and uploaded it to (probably MIT-licensed) that can be useful to others for day to day use of Genode 
> (lots of potential for writing apps, with the right SDK.. With the Be/Haiku API  I can build a skeleton app in a day; maybe others would 
> follow suit ..etc).

That reads like a very exciting adventure. :-)


Dr.-Ing. Norman Feske
Genode Labs ·

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

More information about the users mailing list