Last year I purchased an e-bike upgrade kit for my mother in law. We decided to install it on a bicycle she originally bought back in the 80s, which I fixed and refurbished a couple of years ago and used until September 2022 when I bought myself a Dutch Cortina U4. When I used this bicycle, I installed a lightweight Shutter Precision dynamo hub and compatible lights, XLC at the front, Büchel at…
My attempt to travel to the UK by train last year didn’t go quite as well as I expected. As I mentioned in that blog post, the NightJet to Brussels was cancelled, forcing me to fly instead. This disappointed me so much that I actually unpublished the blog post minutes after it was originally put online. The timing was nearly perfect: I type make publish and I get an email from ÖBB saying they…
Two weeks ago I decided to make myself a combined birthday and Christmas present and upgrade my coffee gear. I’ve got my first espresso machine back in 2013, it was a cheap Saeco Philips Poemia, which made reasonably drinkable coffee, but not being able to make good coffee made me increasingly unhappy about it. However, since it worked, I wasn’t motivated enough to change anything — until it…
This post was written in August 2021. Just as I was going to publish it, I received an email from ÖBB stating that due to a railway strike in Germany my night train would be cancelled. Since the rest of the trip has already been booked well in advance, I had to take a plane to Charleroi and a bus to Brussels to catch my Eurostar. Ultimately, I ended up publishing it in April 2022, just as I’m…
Following dkg ’s example , I decided to finally transition to my new ed25519 / cv25519 key. Unlike Daniel, I’m not yet trying to split identities, but I’m using this chance to drop old identities I no longer use. My new key only has my main email address and the Debian one, and only those versions of my name I still want around. My old PGP key (at the moment in the Debian keyring) is:
I’ve just made my blog available on the Fediverse, at least partially. Yesterday while browsing Hacker News, I saw Carl Schwan ’s post Adding comments to your static blog with Mastodon ( m ) about him replacing Disqus with replies posted at Mastodon. Just on Monday I was thinking, why can’t blogs participate in Fediverse? I tried to use WriteFreely as a replacement for Pelican, only to find it…
Recently, I needed to package a Rust crate libslirp for a Apertis, a Debian derivative . libslirp is used by the newly release UML backend of debos , our Debian image build tool. Unfortunately, this crate hasn’t yet been properly packaged for Debian proper, so I could not simply pull the packaging from Debian. Even worse, its build dependencies haven’t all been packaged yet. Most importantly, I…
I have a Thinkpad and I also have two external keyboards I occasionally use with it: one at home when I decide to work at my desk with a bigger monitor, another one at a shared office I rent. They have quite different physical layouts: the one I use at home is a Thinkpad keyboard which roughly mirrors the layout of Thinkpad X230, the other one is Sun Type 6. I want to be able to use any of them…
As a response to Antonio Terceiro’s blog post , I’m publishing some FFmpeg commands I’ve been using recently. Embedding subtitles Sometimes you have a video with subtitles in multiple languages and you don’t want to clutter the directory with a lot of similarly-named files — or maybe you want to be able to easily transfer the video and subtitles at once. In this case, it may be useful to embed to…
Here’s a recap of my train journey based on the Twitter thread I kept posting as I travelled. To FOSDEM… The departure from Bratislava was as planned : Ready to depart from Bratislava hl. st. Half an hour in Vienna was just enough for me to grab some coffee and breakfast and board the train to Frankfurt without a hurry: Boarding a Deutsche Bahn ICE to Frankfurt am Main
A couple of days ago a colleague at Collabora asked me to help create a Debian package for the tool he needed to complete his task. The tool happened to be an NXP code signing tool, used to sign OS images to be run on i.MX systems using ‘ High Assurance Boot ’. As it often happens, the tool was distributed in a manner typical for many big corporations: no direct link to the tarball, custom…
I’ve always loved train journeys, but with flygskam changing people’s travel preferences across Europe (and possibly worldwide, though probably not that much), I decided to take train to FOSDEM this time. When I first went to FOSDEM which, just in case you don’t know, happens each February in Brussels at ULB , I flew with Ryanair from Bratislava to Charleroi because it was cheaper. After repeating…
Rust has an exciting concept of enumeration types, which is much more powerful than enums in other languages. Notably C has the weakest type of enum, since there’s no type checking of any kind, and enum values can be used interchangeably with integers: :::c enum JobState { PENDING, STARTED, FAILED, COMPLETED }; You can opt for manually assigning integers instead of leaving this to the compiler,…
As I previously announced , I’m organising a BSP in Bratislava during the weekend following FOSDEM. It will be happening at the same time as the BSP in Berlin , so if it’s not practical or possible for you to come to Berlin, consider coming around here. The venue this time is Lab.cafe , café/coworking space/maker space in the centre of Bratislava in the building of the old market hall.
Yesterday I have discovered resvg , an MPL 2.0-licensed SVG rendering and optimisation library and a tool, written in Rust. It is said to be faster than some SVG renderers while currently slower than librsvg. It aims to support the static subset of SVG better than other libraries: The author writes: One of the major differences from other rendering libraries is that resvg does a lot of…
The Software Freedom Conservancy is having the last 7 days to collect the remaining less than $14 000 of the fundraiser generously matched by Private Internet Access . All donations up to $90 000 will be matched until 15 January. Conservancy is an organisation sponsoring nearly 50 free software projects helping them, most importantly with accounting, paying developers and defending their…
Hostapd and wpa-supplicant 2.7 have been in Debian experimental for some time already, with snapshots available since May 2018 , and the official release since 3 December 2018 . I’ve been using those 2.7 snapshots myself since May, but I do realise my x250 with an Intel Wi-Fi card is probably not the most representative example of hardware wpa-supplicant would often run on, so before I upload 2.7…
This morning I have decided that this is the time. The time to finally remove the binary vconfig utility (which used to help people configure VLANs ) from Debian. But fear not, the command isn’t going anywhere (yet), since almost six years ago I’ve written a shell script that replaces it, using ip(8) instead of the old and deprecated API. If you’re still using vconfig, please give it a test and…
As the maintainer of GNU indent , I have just released version 2.2.12 ( signature ), the first release GNU indent saw in eight years. Highlights include: New options: -pal / --pointer-align-left and -par / –pointer-align-right` -fnc / --fix-nested-comment -gts / --gettext-strings -slc / --single-line-conditionals -as / --align-with-spaces -ut / --use-tabs -nut / --no-tabs -sar /…
On Friday, I will be attending LVEE (Linux Vacation Eastern Europe) once again after a few years of missing it for various reasons. I will be presenting a talk on my experience of working with LAVA ; the talk is based on a talk given by my colleague Guillaume Tucker , who helped me a lot when I was ramping up on LAVA. Since the conference is not well known outside, well, a part of Eastern Europe,…
More than 1½ years since the first release of git-crecord , I’m preparing a big update. Not aware how exactly many people are using it, I neglected the maintenance for some time, but last month I’ve decided I need to take action and fix some issues I’ve known since the first release. First of all, I’ve fixed a few minor issues with setup.py -based installer some users reported. Second, I’ve ported…
Three years ago on this day I joined Collabora to work on free software full-time. It still feels a bit like yesterday, despite so much time passing since then. In this post, I’m going to reconstruct the events of that year. Back in 2015, I worked for Alcatel-Lucent, who had a branch in Bratislava. I can’t say I didn’t like my job — quite contrary, I found it quite…
5 years ago I wrote inputplug , a tiny daemon which connects to your X server and monitors its input devices, running an external command each time a device is connected or disconnected. I have used a custom keyboard layout and a fairly non-standard settings for my pointing devices since 2012. I always annoyed me those settings would be re-set every time the device was disconnected and reconnected…
Hi from MiniDebConf in Hamburg! As you may have noticed, I don’t update this blog often. One of the reasons why this was happening was that until now it was incredibly difficult to write posts. The software I used, Octopress (based on Jekyll) was based on Ruby, and it required quite specific versions of its dependencies. I had the workspace deployed on one of my old laptops, but when I attempted…
Of all proprietary chatting systems, Slack has always seemed one of the worst to me. Not only it’s a closed proprietary system with no sane clients, open source or not, but it not just one walled garden, as Facebook or WhatsApp are, but a constellation of walled gardens, isolated from each other. To be able to participate in multiple Slack communities, the user has to create multiple accounts and…
In case you, just like me, want to have a heavily customised keyboard layout configuration, possibly with different layouts on different input devices (I recommend inputplug to make that work), you probably don’t want your desktop environment to mess with your settings or, worse, re-set them to some default from time to time. Unfortunately, that’s exactly what gnome-settings-daemon does by default…
In December last year, OpenEmbebbed introduced automatic debug packages . Prior to that, you’d need to manually construct FILES_${PN}-dbg variable in your recipe. If you need to retain manual control over precisely what does into debug packages, set an undocumented NOAUTOPACKAGEDEBUG variable to 1 , the same way Qt recipe does: NOAUTOPACKAGEDEBUG = "1" FILES_${PN}-dev =…
Yesterday I was fixing an issue with one of the servers behind kallithea-scm.org : the hook intended to propagage pushes from Our Own Kallithea to Bitbucket stopped working. Until yesterday, that server was using Debian’s flavour of System V init and djb’s dæmontools to keep things running. To make the hook asynchronous, I wrote a service to be managed to dæmontools, so that concurrency issued…
If you bought an North India travel guide by Vanessa Betts and Victoria McCulloch, and tried to figure out where is ‘Phulud’ and how to get there from Deogarh (and how to get to Deogarh itself from Udaipur), don’t waste your time googling, as it’s not Phulud, but Phulad . It does seem that the narrow gauge journey from Deogarh to Phulad is indeed beautiful: Meanwhile, I have also found this very…
I haven’t yet blogged about this (as normally I don’t blog often), but I joined Collabora in June last year. Since then, I had an opportunity to work with OpenEmbedded again, write a kernel patch, learn lots of things about systemd (in particular, how to stop worrying about it taking over the world and so on), and do lots of other things. As one would expect when working for a free…
Holger Levsen writes about the public transport map of Managua, Nicaragua, which is, according to him, the first detailed map of Managua’s bus network: If you haven’t been to Managua, you might not be able to immediatly appreciate the usefulness of this. Up until now, there has been no map nor timetable for the bus system, which as you can see now easily and from far away, is actually…
The Software Freedom Conservancy are desperately looking for financial support after one of their corporate supporters have stopped their sponsorship. This week, there’s an anonymous pledge to match donations from new supporters. Becoming an SFC supporter will help them fight for our software freedom. I have signed up for a monthly donation, and I suggest you do so too here .
If you have configured your laptop’s power button to act as sleep button using acpid , then installed systemd or systemd-shim and pressed the button only to find your laptop to shut down after it wakes up from sleep, set these options in /etc/systemd/logind.conf : [Login] HandlePowerKey=ignore HandleSuspendKey=ignore HandleHibernateKey=ignore HandleLidSwitch=ignore
Today I decided to try some translation tools I could install on my laptop locally to translate Kallithea , so I’d not need to be on-line to use Michal Čihař’s wonderful Weblate . The first tool I tried was Gtranslator . I edited about 5 strings, and then wanted to commit my changes. To my surprise, the diff was huge. Apart from obvious changes in the file header, like changing the…
This post is almost a carbon copy of the Kallithea 0.2 release notes. Kallithea project have just released Kallithea 0.2. Kallithea is a Python-based GPLv3 source code management software for web-based hosting of Mercurial and Git repositories. This release brings many changes since 0.1. Notably, pull requests system have been improved, making contributing changes more robust. The visual…
mk-configure is a project which tries to be autotools done right. Instead of supporting an exceedingly large number of platforms, modern and ancient, at costs of generated unreadable multi-kilobyte shell scripts, mk-configure aims at better support of less platforms, but those which are really in use today. One of the main differences of this project is that it avoids code generation as much as…
In 2011, I first tried to fix a Debian bug #547587 . The bug was about hook script result codes not being checked, so if a script fails, this isn’t detected. Unfortunately, just checking the return code wasn’t enough, as lots of scripts didn’t care about their return code at all, so I had to unapply the patch. Now, after 2.5 years, I think it’s time to try again, as most of…
Strangely enough, running hgk (a port of gitk to Mercurial, also known as hg view ) with Tk 8.4 crashes my X server. Updating both Tk and the X doesn’t help. I don’t feel like I want to debug X now, but probably that’s what I have to do :( Backtrace: 0: /usr/bin/X (xorg_backtrace+0x49) [0xb7712ed9] 1: /usr/bin/X (0xb7572000+0x1a4c64) [0xb7716c64] 2: linux-gate.so.1…
Yesterday I played with LXC a bit, and I liked it, as LXC provides a very lightweight isolation of processes, much like enchanced chroot. However, I realised, I don’t always need the chroot-like part of LXC, sometimes what I need is just to make sure the process is unable to see the other processes and talk to them in any other way except the filesystem, but I don’t want a whole…
Once upon a time, GTK+ 3.0 was released. That release brought at least one Bad Thing™: incompatibility with GTK+ 2.x themes. At the same time, previously popular Clearlooks theme hasn’t been ported. Many people didn’t like that, but only one decided to DTRT — to do the Right Thing. Jean-Philippe Fleury wrote Clearlooks-Phénix (originally, Clearwaita), a GTK+ 3 theme which was supposed…
It turnes out moving to a different city takes more time and effort than I originally expected, so I’m skipping FOSDEM this year. That’s unlike I originally planned to spend the beginning of February — I had my flight booked already, but apparently that’s not the best idea ever to go travelling right in the middle of relocation :)
Few days ago I was discussing my last blog post with a colleague of mine, Lukaš Tvrdý , and he’s mentioned that it actually is possible to harmlessly decrypt the TrueCrypted filesystem in online mode, resize it, and encrypt it back again. Well, I decided to try, because I have had some problems with that setup. Apart from init script reordering I had to make (not covered in the post, as I…
After I have changed my job recently I had to meet the security policies which are enforced in the company I’m now working for. First of all, I’m not allowed to use my own laptop, and the company-provided laptop has Windows installed. As my job is, unfortunately, not directly related to Linux, I’m not allowed to re-install the OS. However, working in the comfortable environment…
I’d like to bring some attention to activity of a person mostly known as Bohdan Zograf. If you Google that name, you’ll find that he seems to be a person who knows Belarusian language very well, and is interested in translating as many texts as he can into Belarusian for no money. Unfortunately, he isn’t. Trust me, I’m really a native speaker, I was born in Minsk, Belarus,…
Strange and interesting thing has happened to me recently. I’m a user of Dell D620 laptop, which has Intel’s HDA controller and Sigmatel’s STAC9200 codec. This has always worked perfectly fine, and in my mixer I could see at least two volume controls: Master and PCM. Changing volume using both worked. Once I’ve upgraded my Linux 3.2 to 3.4, and have noticed that Master…
It’s a well-known problem that Android offers no easy way to completely remove the primary Google account, at least sometimes. Well, there’s one not really easy for people not involved with computer stuff, but at least it works. Once you have adb shell working, you need to log into your Android device and type sqlite3 /data/system/accounts.db . That’s the place where accounts are…
A new version of ifupdown has been uploaded to experimental yesterday, which brings some important changes. First of all, now it’s possible to specify default values for various interface configuration options. This eliminates the need of hard coding of them in C source, as Ubuntu has been doing for some time. End users are not affected by this change at all, of course. Second, now ifup…
Those who had chance to be in the ‘Stolitsa’ shopping mall in the centre of Minsk yesterday, could enjoy a wonderful performance which was happening there. There’s a grand piano installed in the central hall of this mall. I guess that piano was supposed to advertise some company which sells them, but that day there was something completely different. That piano wasn’t…
Recenly I’ve decided to register at Sixxs to be able to use IPv6 at my new location as they seem to use tunnelling protocol which bypasses NAT, so that was exactly what I needed. I’m a long time HE.NET user, so I expected the same quality of service and ease of use. I went to their website and filled in the registration form. Soon I got the reply: ‘User Rejected’