On Sunday, 18 March 2018 11:43:00 CET, Ilmari Lauhakangas wrote:
Thanks also to
Raphael Catolino for the original Docker work and for still
keeping at it. This is valuable not only for KDE, but for
LibreOffice as well while we evaluate this thing.
So I was just playing with the Janitor service. The KDE container is rather
broken (no desktop shell packages installed, so you don't get a desktop or
anything, and if the screen locker comes up, then there's no way to enter a
password -- keypresses are not registered), so I tried the Thunderbird
container instead.
What you get is noVNC in a browser tab, to a container instance just for
you. You get a checkout of the sources of Thunderbird, plus whatever
development tools you need to edit, build, and test Thunderbird. Well, I
assume so -- TB itself has no README, INSTALL or HACKING file, and running
configure tells me that the mail application is missing. But, in theory, if
I knew how to work on TB, I could.
So it's really cool, actually: "I want to help with <foo>" translates to
"start browser and point at foo-on-janitor", and assuming foo is set up
there, bam, start hacking already.
It is not really clear how one would submit changes afterwards -- I guess
it would be useful to have a "log in to GH" or "log in to KDE Phab" link on
the desktop to make that kind of thing clear to drive-by contributors.
Afterwards, you can just delete the container and it's gone. This could be
*really* useful for those drive-by contributors, or people asking "how do I
get started?" There is a risk, in the sense that pushing one container with
one set of tools and one underlying distro *might* skew the kind of
contributors we get.
I suppose we should do FreeBSD + Clang + Plasma as a devel container, then
new contributors will write non-Linuxism, non-GCCism code without noticing
what's underneath, right? (I kid, I kid .. syscall numbers don't match up).
Right now the service is invite-only, and some of the user-handling is a
little weird. Once you're in the system, logging in (in the web browser, to
be able to manage your containers) works like this:
- enter email address in login page
- get email, which has a one-time link which logs you in
- click on link, and use the resulting browser tab for managing
The (web) UI has a couple of quirks, mainly that clicking on things changes
the cursor to "forbidden" while things happen, which can take quite a
while. So sometimes it's click, wait, wait, hope that it completed. I
understand there are multiple improvements to the web-UI in the works.
My plan right now is to play with the KDE docker file until I get a feel
for what's actually there, and to massage it (or rather, I'll suggest
changes to R.Catolino, who maintains that particular dockerfile) towards
some kind of "you want this workflow" setup. I somehow doubt that setting
up a container for all possible kinds of KDE development is useful (you can
already sort of see this in Janitor -- it's not like Rust, Firefox and
Thunderbird are all jammed into one container, either). So in first
instance, I'll be aiming for an up-to-date (-ish) Plasma desktop with dev
tools installed ready to work on KMyMoney and Okular (an arbitrary
selection).
[ade]