For ergonomical reasons, I’ve been a long-time user of Trackballs as pointing devices instead of using regular mice. For several years now, I have been using a Logitech Trackman Marble together with a libinput tweak to use the trackball for scrolling by holding down one of the buttons while spinning the ball.

This worked well until some distributions decided to switch to using Wayland as a replacement for X.org. In the past, I have been reverting back to using X.org (by setting WaylandEnable=True in /etc/gdm/custom.conf), as Wayland does not support the required libinput configurations. I found a workaround that creates a shared library that can be preloaded to implement this, but that looked somewhat hacky to me.

But as Wayland seems to be the way forward and my latest distribution upgrade caused some weird X.org issues (my dual-screen setup did not longer work properly), I caved in and switched to Wayland again. At least all of my screens were properly detected afterwards, but scroll wheel emulation was broken. I did some research if the libinput support in Wayland had improved in that regard in the meanwhile, but it seems it doesn’t.

However, I found a solution for enabling mouse wheel emulation in Wayland/GNOME3 on the Arch Linux Wiki: simply run the following command in a terminal window:

gsettings set org.gnome.desktop.peripherals.trackball scroll-wheel-emulation-button 8

Now button 8 (the small button above the left button) acts both as a “back” button (e.g. when browsing web pages) as well as the modifier that turns the trackball into a scroll wheel, just like before. Nifty!

I recently added Delta Chat to my ever-growing collection of instant messaging applications. What intrigued me was the simplicity and the use of well-established protocols like IMAP and SMTP – chat messages are sent and stored like email messages, with built-in encryption (based on Autocrypt, which is supported by Enigmail already as well). This allows me to send messages to everyone having an email address, and they don’t actually need to install the DeltaChat client to reply!

The concept of “chat over email” seems to be gaining some traction; from what I have gathered, the Delta Chat implementation may become the reference implementation for the Chat Over IMAP (COI) protocol that the Open-Xchange folks are working on for their own OX Talk application.

As I use mailbox.org as my private email provider, I wanted to make use of a nifty feature they support: email sub-addresses (sometimes also called “plus addresses”), which allows me to append a custom string at the end of the local part, e.g. firstname.lastname+foo@mailbox.org. This makes it possible to have a dedicated email address for chat messages and being able to filter them right into the DeltaChat IMAP folder that the chat client creates.

Setting this up in the Delta Chat Android app is fairly simple. As a plus address cannot be used for the server login, you need to open Delta Chat’s advanced server settings and use the email address without the plus extension as the login name for both the Inbox and Outbox settings.

Delta Chat Server Settings

That’s all you need to do on the client side. In order to enable server-side filtering in mailbox.org, log into their web interface and go to Settings -> Mail -> Filter Rules and click Add new rule. Now create two conditions:

  • Header: Exists, Name: “Chat-Version”
  • Any recipient: Contains: “<your plus address>”

This rule should apply if any condition is met, the action should be to file the message into the “DeltaChat” folder.

Using these settings, incoming chat messages sent from other DeltaChat users will not clutter up your Inbox anymore. In fact, you can disable the monitoring of your Inbox in the Delta Chat app now: Settings -> Advanced -> Watch Inbox folder (disabled)

Disabled “Watch Inbox folder” setting in Delta Chat

Last weekend, I traveled to the beautiful city of Brno in the Czech Republic, to attend at speak at the DevConf.CZ open source conference. I had submitted a talk about our ongoing work on the Ceph Manager Dashboard and was very happy that it got accepted, as I haven’t been to a DevConf before.

The conference took place in the lecture halls of the Faculty of Information Technology at Brno University of Technology, which provided a very nice venue with lots of rooms and infrastructure (the WiFi was a tad bit slow, but usable). Still, some talks were so popular that the rooms were full and the session chairs had to block others from entering (something that other conferences like FOSDEM also suffer from). Fortunately, many of the sessions were recorded, so there is an opportunity to watch them later.

The overall organization of the conference was excellent, the organizers had really thought of everything and it was a pleasure to attend this event from a speaker/participant point of view. There was a cloak room, badges that clearly indicated your preference of being photographed or your preferred level of engagement in conversations with other attendees. Food was also available in good variety (both free and several paid-for additional options provided by food trucks). The organizers had also set up a group chat on Telegram, which was used to spread information to all participants quickly.

IMG_20190126_105129_231

My talk Ceph Management and Monitoring with the Dashboard was scheduled for Saturday, 16:00, so I had some time to attend other sessions before and afterwards.

The session schedule was packed and I had a tough time to choose which ones to attend. I ended up with attending the following sessions:

  • Growing Your Career: From Tactical to Strategic — The topic sounded interesting, but I only attended this panel discussion for about 20 minutes, as it was too painful for me to watch how a single lapel microphone was frequently handed over from one panelist to another one so they could be heard. Even a handheld mike would have been an improvement…
  • A Greybeard’s Worst Nightmare — in this session, Daniel Riek summarized the pains of packaging modern applications, the proliferation of custom solutions for distributing software and libraries and how they could be addressed in the modern world of container technologies. Good food for thought, it certainly resonated well with some experiences we have been going through in the openATTIC and Ceph Manager Dashboard project.
  • Open leadership: An invitation to all — this presentation resonated very well with me and I was able to capture a number of good ideas on how to improve my own skills. I liked the style of this session, which was more an open conversation than a head-on presentation. To my knowledge it wasn’t recorded, but the slides are worthwhile checking out.
  • Ceph data services in a hybrid cloud world — Sage Weil, founder and lead developer of the Ceph project talked about the challenges of syncing and moving data across multiple clouds and explained some of the existing and future solutions that Ceph brings to the table to resolve these. I found this session very insightful and it was interesting to learn more about the project’s future plans in this area. I guess our work on the Ceph Manager Dashboard isn’t finished any time soon!
  • Active/Active NFS Serving over CephFS — Jeff Layton gave a very detailed into his work on making it possible to set up NFS services based on NFS Ganesha with CephFS on the backend in a scalable way, this was very insightful (see his blog post for an example on how to set this up). Unfortunately his live demo failed during the presentation with processes getting stuck, but I actually saw the demo before his session and it certainly impressed me!

Unfortunately I could only attend the conference on Saturday, as I was traveling to and back from the event by train on Friday and Sunday. I wished I could have stayed for more! I will definitely plan to go back there some time.

I took a few pictures during the event, which can be found on Flickr :

DevConf.CZ, Brno (CZ), 2019-01-26

More pictures can also be found here and here.

In summary, I had a great time at DevConf.CZ and I can only highly recommend to plan on attending it if you get a chance!

Der Open Source Business Award, kurz OSBAR, ist der Innovationspreis des Open Source Business Alliance Vereins. Auch in diesem Jahr werden wieder innovative und interessante Open Source-Projekte gesucht, die sich für diesen Preis bewerben wollen.

Ich freue mich sehr, dieses Jahr Teil der Jury zu sein und bin schon sehr auf die Einreichungen gespannt. Am 16.11. findet in Berlin der Open Source Day (ODS) der OSB Alliance statt; dort können die Bewerber ihr Projekt persönlich vorstellen. Anschließend läuft die Bewertung der Einreichungen. Am 6.12. werden dann im Rahmen der OPEN-Konferenz in Stuttgart die Gewinner bekannt gegeben.

Die Teilnahme ist sehr einfach und ist eine tolle Gelegenheit, den Bekanntheitsgrad eines Projekts zu steigern. In diesem Sinne: mitmachen, man kann nur gewinnen!

I never thought I’d ever say this, but I must admit that I have become quite a fan of Microsoft’s Visual Studio Code IDE, which is available for a wide range of platforms, including Linux.

However, the installation user experience was still somewhat arcane – one had to manually download the RPM package from their web site to install the software. Once a new version was available, the user receives a notification within the application, which redirects him to the website for downloading and updating the latest RPM manually again.

Therefore it didn’t take long for the community to request the creation of a dedicated yum repository, to keep the package updated automatically.

This issue has now been resolved: a yum repo has now been created. Until github issue 20895 has been fixed, this still requires setting up the required repository configuration manually though, but hopefully this will be addressed soon as well.

Until then, here’s how to enable the yum repo on Fedora Linux (Fedora 25 in my case):

Create a file /etc/yum.repos.d/vscode.repo with the following content:

[code]
name=Visual Studio Code
baseurl=https://packages.microsoft.com/yumrepos/vscode
enabled=1
gpgcheck=1
gpgkey=https://packages.microsoft.com/keys/microsoft.asc

Now you can install the package with the following command:

$ sudo dnf install code

Upon the first run, you will be requested to import the GPG build key used for signing the package.

Once a new updates becomes available, running dnf update will pull and install the updated package automatically.

Thanks to the developers at Microsoft for making this step much easier now!