<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Martin Pitt</title>
    <link>https://piware.de/</link>
    <description>Recent content on Martin Pitt</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Fri, 13 Feb 2026 00:00:00 +0000</lastBuildDate>
    
	<atom:link href="https://piware.de/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>Revisiting Google Cloud Performance for KVM-based CI</title>
      <link>https://piware.de/post/2026-02-13-google-cloud-platform-nested-virtualization-revisited/</link>
      <pubDate>Fri, 13 Feb 2026 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2026-02-13-google-cloud-platform-nested-virtualization-revisited/</guid>
      <description>Summary from 2022 Back then, I evaluated Google Cloud Platform for running Cockpit&amp;rsquo;s integration tests. Nested virtualization on GCE was way too slow, crashy, and unreliable for our workload. Tests that ran in 35-45 minutes on bare metal (my laptop) took over 2 hours with 15 failures, timeouts, and crashes. The nested KVM simply wasn&amp;rsquo;t performant enough.
On today&amp;rsquo;s Day of Learning, I gave this another shot, and was pleasantly surprised.</description>
    </item>
    
    <item>
      <title>Learning about MCP servers and AI-assisted GitHub issue triage</title>
      <link>https://piware.de/post/2025-11-14-mcp-servers/</link>
      <pubDate>Fri, 14 Nov 2025 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2025-11-14-mcp-servers/</guid>
      <description>Today is another Red Hat day of learning. I&amp;rsquo;ve been hearing about MCP (Model Context Protocol) servers for a while now &amp;ndash; the idea of giving AI assistants standardized &amp;ldquo;eyes and arms&amp;rdquo; to interact with external tools and data sources. I tried it out, starting with a toy example and then moving on to something actually useful for my day job.
First steps: Querying photo EXIF data I started with a local MCP server to query my photo library.</description>
    </item>
    
    <item>
      <title>InstructLab evaluation with Ansible and Wordle</title>
      <link>https://piware.de/post/2025-05-09-instructlab/</link>
      <pubDate>Fri, 09 May 2025 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2025-05-09-instructlab/</guid>
      <description>During this quarter, all employees are asked to become familiar with using AI technologies. In the last months I explored using AI for code editing and pull request reviews, but I wrote about that separately.
But today is another Red Hat day of learning, so I looked at something more hands-on: Install and run InstructLab on my own laptop again, and experiment with it.
TL/DR: This just reinforced my experience from the last two years about AI being too bad and too expensive for what I would expect it to do.</description>
    </item>
    
    <item>
      <title>Testing sourcery.ai and GitHub Copilot for cockpit PR reviews</title>
      <link>https://piware.de/post/2025-05-09-sourcery/</link>
      <pubDate>Fri, 09 May 2025 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2025-05-09-sourcery/</guid>
      <description>Goal In the Cockpit team we spend a lot of our time on PR reviews. That&amp;rsquo;s time well spent &amp;ndash; we all learn from each other, it keeps the code quality high and ourselves honest. But most certainly there is room for optimization: There are always silly or boring things like typos, inconsistent formatting, or inefficient algorithms; and humans also have selective and subjective sight, i.e. are often missing things.</description>
    </item>
    
    <item>
      <title>Learning web components and PatternFly Elements</title>
      <link>https://piware.de/post/2024-11-08-patternfly-elements/</link>
      <pubDate>Fri, 08 Nov 2024 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2024-11-08-patternfly-elements/</guid>
      <description>Today at Red Hat is day of learning again! I used the occasion to brush up my knowledge about web components and taking a look at PatternFly Elements. I&amp;rsquo;ve leered at that for a long time already &amp;ndash; using &amp;ldquo;regular&amp;rdquo; PatternFly requires React, and thus all the npm, bundler, build system etc. baggage around it.
In Cockpit we support writing your own plugins with a simple static .html and .</description>
    </item>
    
    <item>
      <title>A quarter on the Red Hat OSCI and Testing Farm team</title>
      <link>https://piware.de/post/2022-12-19-quarter-in-osci-tf/</link>
      <pubDate>Mon, 19 Dec 2022 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2022-12-19-quarter-in-osci-tf/</guid>
      <description>For the last quarter I have worked in Red Hat&amp;rsquo;s Testing Farm (TFT) and &amp;ldquo;Operating System CI&amp;rdquo; (OSCI) and teams, on a temporary rotation. TFT develops and runs the Testing Farm (TF) infrastructure, an API which you tell &amp;ldquo;go run a test with $these parameters, it allocates a bunch of cloud instances, sets them up, runs your test, and returns the result. OSCI builds upon this to implement Fedora&amp;rsquo;s and RHEL&amp;rsquo;s gating tests for package updates, image builds, upgrades, and so on.</description>
    </item>
    
    <item>
      <title>Evaluating Rust&#39;s http/websocket frameworks</title>
      <link>https://piware.de/post/2022-12-11-rust-webserver-comparison/</link>
      <pubDate>Sat, 10 Dec 2022 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2022-12-11-rust-webserver-comparison/</guid>
      <description>I spent this day of learning on evaluating the three popular high-level Rust frameworks for HTTP/websocket servers. At some point we want/need to rewrite Cockpit&amp;rsquo;s web server, and Rust feels like a natural choice for this (besides Python).
My goal was to write a little webserver which can do the following:
 /hello: simple http GET, with optional User-Agent: header inspection: curl http://localhost:3030/hello/myname replies with &amp;ldquo;Hello myname from from curl/7.</description>
    </item>
    
    <item>
      <title>Learning asynchronous programming in Rust</title>
      <link>https://piware.de/post/2022-09-16-async-rust/</link>
      <pubDate>Fri, 16 Sep 2022 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2022-09-16-async-rust/</guid>
      <description>I recently found myself needing to write a dynamic reverse HTTP/websocket proxy. After some prototyping it is now time to write something real. To prepare myself for that, I devoted today&amp;rsquo;s Red Hat Day of Learning to another aspect of Rust: asynchronous programming, and learning about tokio. There is really no getting around tokio in the Rust world of networking.
I started with the small book &amp;ldquo;Asynchronous Programming in Rust&amp;rdquo;. Honestly I found this a bit hard to follow, as it quickly dives into a lot of technical details, which I don&amp;rsquo;t have yet.</description>
    </item>
    
    <item>
      <title>Writing a simple time tracker in Rust</title>
      <link>https://piware.de/post/2022-06-10-rust-time-tracker/</link>
      <pubDate>Fri, 10 Jun 2022 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2022-06-10-rust-time-tracker/</guid>
      <description>Today was another Red Hat Day of Learning. Half a year ago I started learning Rust, but have not really done much with it since then. I did try to port simple-term, but that was quickly thwarted by the unmaintained and broken vte Rust binding for GTK3 &amp;ndash; that issue is still way over my head, I didn&amp;rsquo;t make much progress after two hours of monkey patching.
I have used gtimelog to track my work for my entire professional life (since 2004).</description>
    </item>
    
    <item>
      <title>Evaluating Google Cloud for Integration Testing</title>
      <link>https://piware.de/post/2022-03-04-google-cloud-platform-for-ci/</link>
      <pubDate>Fri, 04 Mar 2022 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2022-03-04-google-cloud-platform-for-ci/</guid>
      <description>Cockpit CI demands Testing Cockpit is not an easy task &amp;ndash; each pull request gets tested by over 300 browser integration test cases on a dozen operating systems. Each per-OS test suite starts hundreds of virtual machines, and many of them exercise them quite hard: provoking crashes, rebooting, attaching storage or network devices, or changing boot loader arguments.
With these requirements we absolutely depend on a working /dev/kvm in the test environment, and a performant host to run all these tests in a reasonable time.</description>
    </item>
    
    <item>
      <title>Learning Rust: Interfacing with C</title>
      <link>https://piware.de/post/2021-08-27-rust-and-c/</link>
      <pubDate>Fri, 27 Aug 2021 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2021-08-27-rust-and-c/</guid>
      <description>Why Rust? I had spent the last two rainy days of my summer vacation on learning Rust. Rust is becoming ever-more popular and is even making its way into the Linux kernel &amp;ndash; so it feels like something I should know a little about.
There have been a lot of new languages in the recent years, like Kotlin or Go. None of them are particularly attractive to me personally, as their strenghts and &amp;ldquo;selling points&amp;rdquo; just don&amp;rsquo;t apply enough to what I do &amp;ndash; so far, that has been covered rather well between C, Python, and JavaScript.</description>
    </item>
    
    <item>
      <title>Deploying Prometheus/Grafana, learning metrics</title>
      <link>https://piware.de/post/2021-05-21-learning-metrics/</link>
      <pubDate>Fri, 21 May 2021 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2021-05-21-learning-metrics/</guid>
      <description>In the Cockpit team we recently started to generate and export metrics about our CI, and collect/graph them by a Red Hat internal Prometheus and Grafana instance. But I am not happy with this yet, as it does not yet answer all the questions that we have for it. Also, it is not accessible outside of Red Hat.
On today&amp;rsquo;s Red Hat Day of Learning I wanted to get to know how to deploy these components and learn more about the PromQL language.</description>
    </item>
    
    <item>
      <title>Three months of Inbox Zero</title>
      <link>https://piware.de/post/2021-03-27-inbox-zero-habit/</link>
      <pubDate>Sat, 27 Mar 2021 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2021-03-27-inbox-zero-habit/</guid>
      <description>Email: A source of stress Email has been a significant source of stress for me. Canonical, Red Hat, Debian and free software projects all are a firehose of announcements, discussions, bug reports, review requests, questions, and work tasks every day.
I am fairly good and efficient at quickly deleting the 90% irrelevant email, but the type of &amp;ldquo;10 seconds for the sender to write, half a day of work for me to act upon&amp;rdquo; emails pile up, break my motivation, and cause annoyance and refusal.</description>
    </item>
    
    <item>
      <title>First look at snowpack</title>
      <link>https://piware.de/post/2021-02-05-snowpack/</link>
      <pubDate>Fri, 05 Feb 2021 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2021-02-05-snowpack/</guid>
      <description>Today is another Red Hat Day of Learning. A while ago I heard about snowpack, a new contender for the trusty old webpack to build modern web projects. Today I finally managed to take a quick look at it.
Even with webpack --watch one often needs to wait several seconds up to half a minute with some larger cockpit pages, so the promised split-second builds certainly sound attractive. At first sight it also makes more opinionated choices about sensible defaults, so that one hopefully does not have to write such a wall of boilerplate.</description>
    </item>
    
    <item>
      <title>A quarter on the Red Hat Installer team</title>
      <link>https://piware.de/post/2020-12-15-quarter-on-anaconda/</link>
      <pubDate>Tue, 15 Dec 2020 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2020-12-15-quarter-on-anaconda/</guid>
      <description>Work rotation Today is may last day at work for this year. I spent the last quarter working in the Red Hat Installer team, on a temporary rotation. They needed some help with their testing workflows and CI, it was a good chance of reducing &amp;ldquo;bus factor 1&amp;rdquo; activities in my home team (Cockpit), and for me personally it was a great opportunity to make new friends and learn new stuff.</description>
    </item>
    
    <item>
      <title>Public lightweight sway developer desktop with OSTree and podman/toolbox</title>
      <link>https://piware.de/post/2020-12-13-ostree-sway/</link>
      <pubDate>Sun, 13 Dec 2020 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2020-12-13-ostree-sway/</guid>
      <description>Introduction One and a half year ago I switched to a self-built OSTree based minimal i3 desktop and never looked back. Despite running Fedora updates-testing and finding/reporting lots of regressions, I have never had a situation where a simple rpm-ostree rollback would not have saved the day. There is zero cruft accumulating, neither due to upgrade drift from config files nor due to piling up added/changed files in /usr. And development or trying something out are now more flexible and comfortable than ever, mostly thanks to the progress in the container space.</description>
    </item>
    
    <item>
      <title>Learning meson</title>
      <link>https://piware.de/post/2020-11-06-meson/</link>
      <pubDate>Fri, 06 Nov 2020 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2020-11-06-meson/</guid>
      <description>Last Friday at Red Hat the fourth Day of Learning happened. This time I picked the meson build system. More and more projects have switched to it, like systemd more than 3 years ago, or most of GNOME. Back then I was really impressed by how much faster a systemd build became with meson &amp;ndash; but now I actually want to learn it, peek behind the curtain, be able to contribute to projects that use it, and to know if a conversion makes sense.</description>
    </item>
    
    <item>
      <title>Synced plaintext TODO and notes</title>
      <link>https://piware.de/post/2020-09-26-todo-notes/</link>
      <pubDate>Sat, 26 Sep 2020 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2020-09-26-todo-notes/</guid>
      <description>Being a paper hater, I have kept all my work and private notes in digital form pretty much forever. The tools have changed over the times of course, but I&amp;rsquo;m really happy with my current system now.
I am a strong proponent of plain-text formats for just about everything, due to being simple, efficient, universal, implemementation/tool agnostic, and effectively trackable in revision control. I spend my entire work life as a software developer in vim and mutt, so it&amp;rsquo;s just straightforward to do the same for notes and TODO lists.</description>
    </item>
    
    <item>
      <title>First steps with neural networks and NumPy</title>
      <link>https://piware.de/post/2020-08-30-neural-networks-first-steps/</link>
      <pubDate>Sun, 30 Aug 2020 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2020-08-30-neural-networks-first-steps/</guid>
      <description>Motivation Last Friday at Red Hat we have another &amp;ldquo;Day of Learning&amp;rdquo;, the third one now. As will all repeated things, as an engineer I want to automate things &amp;ndash; so this time I wanted to look into machine learning 😉. This was also an excuse to finally learn about NumPy, as that&amp;rsquo;s such a generic and powerful tool to have on one&amp;rsquo;s belt.
At school in my 11th grade, I worked on speaker dependent single word speech recognition as my scientific project.</description>
    </item>
    
    <item>
      <title>Hello Android development world</title>
      <link>https://piware.de/post/2020-05-29-android-hello-world/</link>
      <pubDate>Fri, 29 May 2020 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2020-05-29-android-hello-world/</guid>
      <description>Motivation Today at Red Hat we have another &amp;ldquo;Day of Learning&amp;rdquo;. To this day I have never touched Android development, just installing various flavours and configuring it. But I&amp;rsquo;ve been curious about it for a while now, mostly to be able to fix a little thing here and there in all the great things available on F-Droid. So today was an excellent opportunity!
SDK Installation The first thing to do is to install Android Studio.</description>
    </item>
    
    <item>
      <title>Die große Vier-Null</title>
      <link>https://piware.de/post/2020-04-14-40-geburtstag/</link>
      <pubDate>Tue, 14 Apr 2020 19:00:00 +0200</pubDate>
      
      <guid>https://piware.de/post/2020-04-14-40-geburtstag/</guid>
      <description>Da wacht man nun eines schönen Morgens auf, und schwupps ist man vierzig!
Zu meinem 30. gabs damals ein großes Go-Kart-Rennen und eine Party mit Familie und Freunden. Auch dieses Jahr wollte ich das wieder wenigstens ein bisschen feiern, aber wegen der COVID-19-Pandemie und die damit einhergehenden Kontaktsperren und Ausgangsbeschränkungen lief der Tag sehr ruhig ab. Annett hat mir wieder einen tollen Kuchen gebacken (Zupfkuchen mit Rharbarber 😋), und meine Eltern haben in einer lokalen Konditorei eine tolle Torte bestellt:</description>
    </item>
    
    <item>
      <title>First steps in system-wide Linux tracing</title>
      <link>https://piware.de/post/2020-02-28-bpftrace/</link>
      <pubDate>Fri, 28 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2020-02-28-bpftrace/</guid>
      <description>Motivation Today at Red Hat we have a &amp;ldquo;Learn something new&amp;rdquo; day. After so many years of doing software development, I&amp;rsquo;m quite well versed in tools like strace, gdb, or good old printf() debugging to examine how an individual process (mis)behaves. But I occasionally run into situations where a system-wide scope of examination is necessary.
For example, when I was working on optimizing Ubuntu&amp;rsquo;s power usage ages ago, I wanted to hunt down processes which were opening/reading/writing files and thus waking up the hard disk.</description>
    </item>
    
    <item>
      <title>Hardening Cockpit with systemd (socket activation)³</title>
      <link>https://piware.de/post/2019-10-15-cockpit-systemd-activation-cubed/</link>
      <pubDate>Tue, 15 Oct 2019 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2019-10-15-cockpit-systemd-activation-cubed/</guid>
      <description>Background A major future goal for Cockpit is support for client-side TLS authentication, primarily with smart cards. I created a Proof of Concept and a demo long ago, but before this can be called production-ready, we first need to harden Cockpit&amp;rsquo;s web server cockpit-ws to be much more tamper-proof than it is today.
This heavily uses systemd&amp;rsquo;s socket activation. I believe we are now using this in quite a unique and interesting way that helped us to achieve our goal rather elegantly and robustly.</description>
    </item>
    
    <item>
      <title>Lightweight i3 developer desktop with OSTree and chroots</title>
      <link>https://piware.de/post/2019-07-14-ostree-i3/</link>
      <pubDate>Sun, 14 Jul 2019 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2019-07-14-ostree-i3/</guid>
      <description>Introduction I&amp;rsquo;ve always liked a clean, slim, lightweight, and robust OS on my laptop (which is my only PC) &amp;ndash; I&amp;rsquo;ve been running the i3 window manager for years, with some custom configuration to enable the Fn keys and set up my preferred desktop session layout. Initially on Ubuntu, for the last two and a half years under Fedora (since I moved to Red Hat). I started with a minimal server install and then had a post-install script that installed the packages that I need, restore my /etc files from git, and some other minor bits.</description>
    </item>
    
    <item>
      <title>Gavi&#39;s Song sheet music with TuxGuitar and LilyPond</title>
      <link>https://piware.de/post/2018-09-16-gavis-song/</link>
      <pubDate>Sun, 16 Sep 2018 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2018-09-16-gavis-song/</guid>
      <description>A year or two ago I bought Lindsey Stirling&amp;rsquo;s Album Brave Enough. It&amp;rsquo;s wonderful all around, but I really fell in love with Gavi&amp;rsquo;s Song.
Three weeks ago I took a stab at playing this on my guitar. It&amp;rsquo;s technically not actually that difficult &amp;ndash; After listening to the original and trying to repeat it for several days, I can now actually play through it without too many hiccups (still far from being YouTube&amp;rsquo;able, though).</description>
    </item>
    
    <item>
      <title>Privacy Statement</title>
      <link>https://piware.de/privacy/</link>
      <pubDate>Thu, 24 May 2018 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/privacy/</guid>
      <description>Scope of This Notice This Privacy Statement is intended to describe this web site&amp;rsquo;s privacy practices and provide information about the choices you have regarding the ways in which information collected by this web site is used and disclosed.
Commitment to Privacy At the piware.de web site, your privacy is important to me. To better protect your privacy, I have provided this Statement explaining my information practices and the choices you can make about the way your personal information is collected, used and disclosed.</description>
    </item>
    
    <item>
      <title>De-Googling my phone, reloaded</title>
      <link>https://piware.de/post/2018-05-21-android-degoogle-2/</link>
      <pubDate>Mon, 21 May 2018 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2018-05-21-android-degoogle-2/</guid>
      <description>Three weeks ago I blogged about how to get rid of non-free Google services and moving to free software on my Android phone. I&amp;rsquo;ve got a lot of feedback via email, lwn, and Google+, many thanks to all of you for helpful hints! As this is obviously important to many people, I want to tie up some lose ends and publish the results of these discussions.
Alternative apps and stores  Yalp is a free app that is able to search, install, and update installed apps from the Google Play Store.</description>
    </item>
    
    <item>
      <title>De-Googling my phone</title>
      <link>https://piware.de/post/2018-05-01-android-degoogle/</link>
      <pubDate>Tue, 01 May 2018 00:00:00 +0000</pubDate>
      
      <guid>https://piware.de/post/2018-05-01-android-degoogle/</guid>
      <description>I&amp;rsquo;ve been a professional Free Software developer in the GNU/Linux area for 14 years now, and a hobbyist developer and user for much longer. For some reason that never extended much to the smartphone world, beyond running LineageOS on my older phones (my current Sony Xperia is still under warranty and I&amp;rsquo;m fine with the officially supported Android), and various stabs at using the Ubuntu phone (RIP!).
On a few long weekends this year it got a hold of me, and I had a look over the Google fence to see how Free Software is doing on Android and how to reduce my dependency on Google Play Services and Google apps.</description>
    </item>
    
    <item>
      <title>Migration from PhantomJS to Chrome DevTools Protocol</title>
      <link>https://piware.de/post/2017-12-21-phantomjs-to-chromium/</link>
      <pubDate>Thu, 21 Dec 2017 09:26:37 +0100</pubDate>
      
      <guid>https://piware.de/post/2017-12-21-phantomjs-to-chromium/</guid>
      <description>Being a web interface, Cockpit has a comprehensive integration test suite which exercises all of its functionality on a real web browser that is driven by the tests. Until recently we used PhantomJS for this, but there was an ever-increasing pressure to replace it.
Why replace PhantomJS? Phantom&amp;rsquo;s engine is becoming really outdated: it cannot understand even simple ES6 constructs like Set, arrow functions, or promises, which have been in real browsers for many years; this currently blocks hauling in some new code from the welder project.</description>
    </item>
    
    <item>
      <title>Nordwest-USA-Reise</title>
      <link>https://piware.de/post/2017-09-03-nordwest-usa/</link>
      <pubDate>Sat, 09 Sep 2017 13:33:36 +0200</pubDate>
      
      <guid>https://piware.de/post/2017-09-03-nordwest-usa/</guid>
      <description>Annett und ich waren drei Wochen im Nordwesten der USA unterwegs und sind wieder wohlbehalten zuhause gelandet. Die ersten zwei Wochen war eine organisierte Gruppenreise von Wittmann Travel und Karawane, und da wir nun schon mal dort waren haben wir noch eine Woche verlängert.
Zentrales Ereignis war die totale Sonnenfinsternis am 21. August, und rundherum die vielen Nationalparks in der Gegend. Es war ein sehr intensives und wunderschönes Erlebnis! Hier ist unser Reisetagebuch, garniert mit ein paar ausgewählten Fotos.</description>
    </item>
    
    <item>
      <title>Cockpit is now in Ubuntu backports</title>
      <link>https://piware.de/post/2017-05-19-cockpit-in-ubuntu-lts/</link>
      <pubDate>Fri, 19 May 2017 16:49:23 +0200</pubDate>
      
      <guid>https://piware.de/post/2017-05-19-cockpit-in-ubuntu-lts/</guid>
      <description>Hot on the heels of landing Cockpit in Debian unstable and Ubuntu 17.04, the Ubuntu backport request got approved (thanks Iain!), which means that installing cockpit on Ubuntu 16.04 LTS or 16.10 is now also a simple apt install cockpit away. I updated the installation instructions accordingly.
Enjoy, and let us know about problems!</description>
    </item>
    
    <item>
      <title>Cockpit is now just an apt install away</title>
      <link>https://piware.de/post/2017-05-09-cockpit-in-debian-ubuntu/</link>
      <pubDate>Tue, 09 May 2017 10:51:23 +0200</pubDate>
      
      <guid>https://piware.de/post/2017-05-09-cockpit-in-debian-ubuntu/</guid>
      <description>Cockpit has now been in Debian unstable and Ubuntu 17.04 and devel, which means it&amp;rsquo;s now a simple
$ sudo apt install cockpit  away for you to try and use. This metapackage pulls in the most common plugins, which are currently NetworkManager and udisks/storaged. If you want/need, you can also install cockpit-docker (if you grab docker.io from jessie-backports or use Ubuntu) or cockpit-machines to administer VMs through libvirt. Cockpit upstream also has a rather comprehensive Kubernetes/Openstack plugin, but this isn&amp;rsquo;t currently packaged for Debian/Ubuntu as kubernetes itself is not yet in Debian testing or Ubuntu.</description>
    </item>
    
    <item>
      <title>Breaking the Hundred Commits mark in Cockpit</title>
      <link>https://piware.de/post/2017-03-16-cockpit-100-commits/</link>
      <pubDate>Thu, 16 Mar 2017 09:24:10 +0100</pubDate>
      
      <guid>https://piware.de/post/2017-03-16-cockpit-100-commits/</guid>
      <description>It has now been two and a half months since I started working at Red Hat in the Cockpit team. I just noticed that after yesterday&amp;rsquo;s 135 release frenzy I now have more than a hundred commits in it!
$ git shortlog | grep Pitt Martin Pitt (111):  Of course amongst them are lots of trivialities, simple tweaks, and packaging improvements (all this Debian/Ubuntu packaging experience got to be worth for something ☺).</description>
    </item>
    
    <item>
      <title>systemd 233 about to be released, please help testing</title>
      <link>https://piware.de/post/2017-02-25-test-systemd-pre-233/</link>
      <pubDate>Sat, 25 Feb 2017 13:41:42 +0100</pubDate>
      
      <guid>https://piware.de/post/2017-02-25-test-systemd-pre-233/</guid>
      <description>systemd 233 is scheduled to be released next week, and there is only a handful of small issues left. As usual there are tons of improvements and fixes, but the most intrusive one probably is another attempt to move from legacy cgroup v1 to a &amp;ldquo;hybrid&amp;rdquo; setup where the new unified (cgroup v2) hierarchy is mounted at /sys/fs/cgroup/unified/ and the legacy one stays at /sys/fs/cgroup/ as usual. This should provide an easier path for software like Docker or LXC to migrate to the unified hiearchy, but even that hybrid mode broke some bits.</description>
    </item>
    
    <item>
      <title>Migrated blog from WordPress to Hugo</title>
      <link>https://piware.de/post/2017-02-06-migrated-blog-from-wordpress/</link>
      <pubDate>Mon, 06 Feb 2017 21:04:54 +0100</pubDate>
      
      <guid>https://piware.de/post/2017-02-06-migrated-blog-from-wordpress/</guid>
      <description>My WordPress blog got hacked two days ago and now twice today. This morning I purged MySQL and restored a good backup from three days ago, changed all DB and WordPress passwords (both the old and new ones were long and autogenerated ones), but not even an hour after the redeploy the hack was back. (It can still be seen on Planet Debian and Planet Ubuntu. Neither the Apache logs nor the Journal had anything obvious, nor were there any new files in global or user www directories, so I&amp;rsquo;m a bit stumped how this happened.</description>
    </item>
    
    <item>
      <title>The alphabet and pitti end here: Last day at Canonical</title>
      <link>https://piware.de/2016/12/last-day-at-canonical/</link>
      <pubDate>Tue, 13 Dec 2016 11:38:37 +0000</pubDate>
      
      <guid>https://piware.de/2016/12/last-day-at-canonical/</guid>
      <description>I&amp;#8217;ve had the pleasure of working on Ubuntu for 12½ years now, and during that time used up an entire Latin alphabet of release names! (Well, A and C are still free, but we used H and W twice, so on average.. ☺ ) This has for sure been the most exciting time in my life with tons of good memories! Very few highlights:
 Getting some spam mail from a South African multi-millionaire about a GREAT OPPORTUNITY Joining #warthogs (my first IRC experience) and collecting my first bounties for &amp;#8220;derooting&amp;#8221; Debian (i.</description>
    </item>
    
    <item>
      <title>An &lt;adjective of your choice&gt; day for freedom</title>
      <link>https://piware.de/2016/06/an-adjective-of-your-choice-day-for-freedom/</link>
      <pubDate>Fri, 24 Jun 2016 08:51:33 +0000</pubDate>
      
      <guid>https://piware.de/2016/06/an-adjective-of-your-choice-day-for-freedom/</guid>
      <description>I don&amp;rsquo;t want to criticize the outcome of the UK&amp;rsquo;s EU referendum &amp;#8212; first of all I&amp;rsquo;m not wiser than everyone else, and second in a democracy you always have the right to decide both ways. Freedom absolutely includes the freedom to hurt yourself and do bad decisions (note, I&amp;rsquo;m explicitly not saying &amp;#8212; or even knowing! &amp;#8212; which is which!).
What concerns me though, is how the course of political debates at large and this referendum in particular have been going.</description>
    </item>
    
    <item>
      <title>autopkgtest 4.0: Simplified CLI, deprecating “adt”</title>
      <link>https://piware.de/2016/06/autopkgtest-4-0-simplified-cli-deprecating-adt/</link>
      <pubDate>Thu, 09 Jun 2016 20:24:39 +0000</pubDate>
      
      <guid>https://piware.de/2016/06/autopkgtest-4-0-simplified-cli-deprecating-adt/</guid>
      <description>Historically, the &amp;#8220;adt-run&amp;#8221; command line has allowed multiple tests; as a consequence, arguments like --binary or --override-control were position dependent, which confused users a lot (#795274, #785068, #795274, LP #1453509). On the other hand I don&amp;#8217;t know anyone or any CI system which actually makes use of the &amp;#8220;multiple tests on a single command line&amp;#8221; feature.
The command line also was a bit confusing in other ways, like the explicit --built-tree vs.</description>
    </item>
    
    <item>
      <title>Results from proposed-migration virtual sprint</title>
      <link>https://piware.de/2016/01/results-from-proposed-migration-virtual-sprint/</link>
      <pubDate>Fri, 22 Jan 2016 11:20:35 +0000</pubDate>
      
      <guid>https://piware.de/2016/01/results-from-proposed-migration-virtual-sprint/</guid>
      <description>This week from Tuesday to Thursday four Canonical Foundations team members held a virtual sprint about the proposed-migration infrastructure. It&amp;#8217;s been a loooong three days and nightshifts, but it was absolutely worth it. Thanks to Brian, Barry, and Robert for your great work!
I started the sprint on Tuesday with a presentation (slides) about the design and some details about the involved components, and showed how to deploy the whole thing locally in juju-local.</description>
    </item>
    
    <item>
      <title>What’s new in autopkgtest: LXD, MaaS, apt pinning, and more</title>
      <link>https://piware.de/2015/12/whats-new-in-autopkgtest-lxd-maas-apt-pinning-and-more/</link>
      <pubDate>Thu, 17 Dec 2015 21:21:07 +0000</pubDate>
      
      <guid>https://piware.de/2015/12/whats-new-in-autopkgtest-lxd-maas-apt-pinning-and-more/</guid>
      <description>The last two major autopkgtest releases (3.18 from November, and 3.19 fresh from yesterday) bring some new features that are worth spreading.
New LXD virtualization backend 3.19 debuts the new adt-virt-lxd virtualization backend. In case you missed it, LXD is an API/CLI layer on top of LXC which introduces proper image management, seamlessly use images and containers on remote locations, intelligently caching them locally, automatically configure performant storage backends like zfs or btrfs, and just generally feels really clean and much simpler to use than the &amp;#8220;classic&amp;#8221; LXC.</description>
    </item>
    
    <item>
      <title>autopkgtest 3.14 “now twice as rebooty”</title>
      <link>https://piware.de/2015/05/autopkgtest-3-14-now-twice-as-rebooty/</link>
      <pubDate>Wed, 06 May 2015 10:11:45 +0000</pubDate>
      
      <guid>https://piware.de/2015/05/autopkgtest-3-14-now-twice-as-rebooty/</guid>
      <description>Almost every new autopkgtest release brings some small improvements, but 3.14 got some reboot related changes worth pointing out.
First of all, I simplified and unified the implementation of rebooting across all runners that support it (ssh, lxc, and qemu). If you use a custom setup script for adt-virt-ssh you might have to update it: Previously, the setup script needed to respond to a reboot function to trigger a reboot, wait for the testbed to go down, and come back up.</description>
    </item>
    
    <item>
      <title>Polarlichtreise nach Lappland</title>
      <link>https://piware.de/post/2015-03-29-polarlichtreise-nach-lappland/</link>
      <pubDate>Sun, 29 Mar 2015 17:38:30 +0000</pubDate>
      
      <guid>https://piware.de/post/2015-03-29-polarlichtreise-nach-lappland/</guid>
      <description>Wir sind wieder zurück aus unserem tollen Winterurlaub! Es ging nach Lappland in Nord-Finnland und Nord-Norwegen. Das ganze Fotoalbum gibt es auch zu sehen.
Am Montag den 16. März starten wir unsere Reise nach Lappland, vom Flughafen München über Helsinki bis nach Ivalo. Auf dem Flug bekommt man schon einen guten Eindruck von Finnland: Außer an den südlichen Küstengebieten ist das Land sehr dünn bevölkert, und der ganze Norden besteht fast nur aus einem Flickenteppich aus Wald, Seen, und Flüssen.</description>
    </item>
    
    <item>
      <title>Snappy package for Robot Operating System tutorial</title>
      <link>https://piware.de/2015/01/snappy-package-for-robot-operating-system-tutorial/</link>
      <pubDate>Tue, 20 Jan 2015 14:21:44 +0000</pubDate>
      
      <guid>https://piware.de/2015/01/snappy-package-for-robot-operating-system-tutorial/</guid>
      <description>ROS what? Robot Operating System (ROS) is a set of libraries, services, protocols, conventions, and tools to write robot software. It&amp;#8217;s about seven years old now, free software, and a growing community, bringing Linux into the interesting field of robotics. They primarily target/support running on Ubuntu (current Indigo ROS release runs on 14.04 LTS on x86), but they also have some other experimental platforms like Ubuntu ARM and OS X.</description>
    </item>
    
    <item>
      <title>Ramblings from LinuxCon/Plumbers 2014</title>
      <link>https://piware.de/2014/10/ramblings-from-linuxconplumbers-2014/</link>
      <pubDate>Fri, 17 Oct 2014 16:53:29 +0000</pubDate>
      
      <guid>https://piware.de/2014/10/ramblings-from-linuxconplumbers-2014/</guid>
      <description>I&amp;#8217;m on my way home from Düsseldorf where I attended the LinuxCon Europe and Linux Plumber conferences. I was quite surprised how huge LinuxCon was, there were about 1.500 people there! Certainly much more than last year in New Orleans.
Containers (in both LXC and docker flavors) are the Big Thing everybody talks about and works with these days; there was hardly a presentation where these weren&amp;#8217;t mentioned at all, and (what felt like) half of the presentations were either how to improve these, or how to use these technologies to solve problems.</description>
    </item>
    
    <item>
      <title>Running autopkgtests in the cloud</title>
      <link>https://piware.de/2014/10/running-autopkgtests-in-the-cloud/</link>
      <pubDate>Fri, 10 Oct 2014 07:25:01 +0000</pubDate>
      
      <guid>https://piware.de/2014/10/running-autopkgtests-in-the-cloud/</guid>
      <description>It&amp;#8217;s great to see more and more packages in Debian and Ubuntu getting an autopkgtest. We now have some 660, and soon we&amp;#8217;ll get another ~ 4000 from Perl and Ruby packages. Both Debian&amp;#8217;s and Ubuntu&amp;#8217;s autopkgtest runner machines are currently static manually maintained machines which ache under their load. They just don&amp;#8217;t scale, and at least Ubuntu&amp;#8217;s runners need quite a lot of handholding.
This needs to stop. To quote Tim &amp;#8220;The Tool Man&amp;#8221; Taylor: We need more power!</description>
    </item>
    
    <item>
      <title>autopkgtest 3.5: Reboot support, Perl/Ruby implicit tests</title>
      <link>https://piware.de/2014/09/autopkgtest-3-5-reboot-support-perlruby-implicit-tests/</link>
      <pubDate>Mon, 15 Sep 2014 08:23:59 +0000</pubDate>
      
      <guid>https://piware.de/2014/09/autopkgtest-3-5-reboot-support-perlruby-implicit-tests/</guid>
      <description>Last week&amp;#8217;s autopkgtest 3.5 release (in Debian sid and Ubuntu Utopic) brings several new features which I&amp;#8217;d like to announce.
Tests that reboot For testing low-level packages like init or the kernel it is sometimes desirable to reboot the testbed in the middle of a test. For example, I added a new boot_and_services systemd autopkgtest which configures grub to boot with systemd as pid 1, reboots, and then checks that the most important services like lightdm, D-BUS, NetworkManager, and cron come up as expected.</description>
    </item>
    
    <item>
      <title>vim config for Markdown&#43;LaTeX pandoc editing</title>
      <link>https://piware.de/2014/07/vim-config-for-markdownlatex-pandoc-editing/</link>
      <pubDate>Thu, 24 Jul 2014 09:34:52 +0000</pubDate>
      
      <guid>https://piware.de/2014/07/vim-config-for-markdownlatex-pandoc-editing/</guid>
      <description>I have used LaTeX and latex-beamer for pretty much my entire life of document and presentation production, i. e. since about my 9th school grade. I&amp;#8217;ve always found the LaTeX syntax a bit clumsy, but with good enough editor shortcuts to insert e. g. \begin{itemize} \item...\end{itemize} with just two keystrokes, it has been good enough for me.
A few months ago a friend of mine pointed out pandoc to me, which is just simply awesome.</description>
    </item>
    
    <item>
      <title>autopkgtest 3.2: CLI cleanup, shell command tests, click improvements</title>
      <link>https://piware.de/2014/07/autopkgtest-3-2-cli-cleanup-shell-command-tests-click-improvements/</link>
      <pubDate>Tue, 22 Jul 2014 06:16:56 +0000</pubDate>
      
      <guid>https://piware.de/2014/07/autopkgtest-3-2-cli-cleanup-shell-command-tests-click-improvements/</guid>
      <description>Yesterday&amp;#8217;s autopkgtest 3.2 release brings several changes and improvements that developers should be aware of.
Cleanup of CLI options, and config files Previous adt-run versions had rather complex, confusing, and rarely (if ever?) used options for filtering binaries and building sources without testing them. All of those (--instantiate, --sources-tests, --sources-no-tests, --built-binaries-filter&amp;lt;code&amp;gt;, &amp;lt;code&amp;gt;--binaries-forbuilds, and --binaries-fortests) now went away. Now there is only -B/--no-built-binaries left, which disables building/using binaries for the subsequent unbuilt tree or dsc arguments (by default they get built and their binaries used for tests), and I added its opposite --built-binaries for completeness (although you most probably never need this).</description>
    </item>
    
    <item>
      <title>deb, click, schroot, LXC, QEMU, phone, cloud: One autopkgtest to Rule Them All!</title>
      <link>https://piware.de/2014/07/deb-click-schroot-lxc-qemu-phone-cloud-one-autopkgtest-to-rule-them-all/</link>
      <pubDate>Tue, 01 Jul 2014 15:15:13 +0000</pubDate>
      
      <guid>https://piware.de/2014/07/deb-click-schroot-lxc-qemu-phone-cloud-one-autopkgtest-to-rule-them-all/</guid>
      <description>We currently use completely different methods and tools of building test beds and running tests for Debian vs. Click packages, for normal uploads vs. CI airline landings vs. upstream project merge proposal testing, and keep lots of knowledge about Click package test metadata external and not easily accessible/discoverable.
Today I released autopkgtest 3.0 (and 3.0.1 with a few minor updates) which is a major milestone in unifying how we run package tests both locally and in production CI.</description>
    </item>
    
    <item>
      <title>Booting Ubuntu with systemd: Now in Utopic</title>
      <link>https://piware.de/2014/04/booting-ubuntu-with-systemd-now-in-utopic/</link>
      <pubDate>Mon, 28 Apr 2014 17:40:53 +0000</pubDate>
      
      <guid>https://piware.de/2014/04/booting-ubuntu-with-systemd-now-in-utopic/</guid>
      <description>Hot on the heels of my previous annoucement of my systemd PPA for trusty, I&amp;#8217;m now happy to announce that the latest systemd 204-10ubuntu1 just landed in Utopic, after sorting out enough of the current uninstallability in -proposed. The other fixes (bluez, resolvconf, lightdm, etc.) already landed a few days ago. Compared to the PPA these have a lot of other fixes and cleanups, due to the excellent hackfest that we held last weekend.</description>
    </item>
    
    <item>
      <title>Booting Ubuntu with systemd: Test packages available</title>
      <link>https://piware.de/2014/04/booting-ubuntu-with-systemd-test-packages-available/</link>
      <pubDate>Tue, 22 Apr 2014 16:54:44 +0000</pubDate>
      
      <guid>https://piware.de/2014/04/booting-ubuntu-with-systemd-test-packages-available/</guid>
      <description>On the last UDS we talked about migrating from upstart to systemd to boot Ubuntu, after Mark announced that Ubuntu will follow Debian in that regard. There&amp;#8217;s a lot of work to do, but it parallelizes well once developers can run systemd on their workstations or in VMs easily and the system boots up enough to still be able to work with it.
So today I merged our systemd package with Debian again, dropped the systemd-services split (which wasn&amp;#8217;t accepted by Debian and will be unnecessary now), and put it into my systemd PPA.</description>
    </item>
    
    <item>
      <title>Creating a local swift server on Ubuntu for testing</title>
      <link>https://piware.de/2014/03/creating-a-local-swift-server-on-ubuntu-for-testing/</link>
      <pubDate>Tue, 11 Mar 2014 16:25:07 +0000</pubDate>
      
      <guid>https://piware.de/2014/03/creating-a-local-swift-server-on-ubuntu-for-testing/</guid>
      <description>Our current autopkgtest machinery uses Jenkins (a private and a public one) and lots of &amp;#8220;rsync state files between hosts&amp;#8221;, both of which have reached a state where they fall over far too often. It&amp;#8217;s flakey, hard to maintain, and hard to extend with new test execution slaves (e. g. for new architectures, or using different test runners). So I&amp;#8217;m looking into what it would take to replace this with something robust, modern, and more lightweight.</description>
    </item>
    
    <item>
      <title>What’s the autopilot widget that I want?</title>
      <link>https://piware.de/2013/11/whats-the-autopilot-widget-that-i-want/</link>
      <pubDate>Mon, 25 Nov 2013 13:47:37 +0000</pubDate>
      
      <guid>https://piware.de/2013/11/whats-the-autopilot-widget-that-i-want/</guid>
      <description>Today&amp;#8217;s autopilot release provides a new feature for test case writers. Unless the widget you want to test has a direct object name (GtkBuilder ID/Qt objectName), it is often not that easy to find a widget in a deeply nested hierarchy in autopilot vis.
With the new version, if you have some parent widget (like the containing dialog) w in your test, you can now call w.print_tree() to dump the paths and properties of that widget and all its children to stdout.</description>
    </item>
    
    <item>
      <title>How to watch system D-BUS method calls</title>
      <link>https://piware.de/2013/09/how-to-watch-system-d-bus-method-calls/</link>
      <pubDate>Thu, 26 Sep 2013 08:56:12 +0000</pubDate>
      
      <guid>https://piware.de/2013/09/how-to-watch-system-d-bus-method-calls/</guid>
      <description>The current default D-BUS configuration (at least on Ubuntu) disallows monitoring method calls on the system D-BUS (dbus-monitor --system), which makes debugging rather cumbersome; this has worked years ago, but apparently got changed for security reasons. It took me a half an hour to figure out how to enable this for debugging, and as this has annoyingly little Google juice (I didn&amp;#8217;t find any solution), let&amp;#8217;s add some.
The trick seems to be to set a global policy to be able to eavesdrop any method call after the individual /etc/dbus-1/system.</description>
    </item>
    
    <item>
      <title>Run autopilot test in autopkgtest</title>
      <link>https://piware.de/2013/08/run-autopilot-test-in-autopkgtest/</link>
      <pubDate>Fri, 30 Aug 2013 07:47:29 +0000</pubDate>
      
      <guid>https://piware.de/2013/08/run-autopilot-test-in-autopkgtest/</guid>
      <description>I recently created a test for digicam photo import for Shotwell (using autopilot and umockdev), and made that run as an autopkgtest. It occurred to me that this might be interesting for other desktop applications as well.
The community QA team has written some autopkgtests for desktop applications such as evince, nautilus, or Firefox. We run them regularly in Jenkins on real hardware in a full desktop environment, so that they can use the full desktop integration (3D, indicators, D-BUS services, etc).</description>
    </item>
    
    <item>
      <title>umockdev 0.4: Mocking phone calls</title>
      <link>https://piware.de/2013/07/umockdev-0-4-mocking-phone-calls/</link>
      <pubDate>Tue, 30 Jul 2013 06:18:37 +0000</pubDate>
      
      <guid>https://piware.de/2013/07/umockdev-0-4-mocking-phone-calls/</guid>
      <description>umockdev 0.3 introduced the notion of an &amp;#8220;umockdev script&amp;#8221;, i. e. recording the read()s and write()s that happen on a device node such as ttyUSB0. With that one can successfully run ModemManager in an umockdev testbed to pretend that one has e. g. an USB 3G stick.
However, this didn&amp;#8217;t yet apply to the Ubuntu phone stack, where ofonod talks to Android&amp;#8217;s &amp;#8220;rild&amp;#8221; (Radio Interface Layer Daemon) through the Unix socket /dev/socket/rild.</description>
    </item>
    
    <item>
      <title>umockdev 0.3: record and replay of tty devices</title>
      <link>https://piware.de/2013/07/umockdev-0-3-record-and-replay-of-tty-devices/</link>
      <pubDate>Fri, 12 Jul 2013 10:49:30 +0000</pubDate>
      
      <guid>https://piware.de/2013/07/umockdev-0-3-record-and-replay-of-tty-devices/</guid>
      <description>I&amp;#8217;m happy to announce a new release 0.3 of umockdev.
The big new feature is the ability to fake character devices and provide recording and replaying of communications on them. This work is driven by our need to create automatic tests for the Ubuntu phone stack, i. e. pretending that we have a 3G or phone driver and ensuring that the higher level stacks behaves as expected without actually having to have a particular modem.</description>
    </item>
    
    <item>
      <title>PyGObject 3.8.3 released</title>
      <link>https://piware.de/2013/07/pygobject-3-8-3-released/</link>
      <pubDate>Fri, 05 Jul 2013 05:56:08 +0000</pubDate>
      
      <guid>https://piware.de/2013/07/pygobject-3-8-3-released/</guid>
      <description>While GNOME as a whole does not have a planned 3.8.3 release, I got some requests to do a new stable release of PyGObject with some important bug fixes, so here it is: version 3.8.3. Thanks to all contributors!
 Add marshalling of GI_TYPE_TAG_VOID held in a GValue to int. While not particularly useful this allows some callbacks in WebKit to function without causing a segfault. (Simon Feltman) (#694233) pygtkcompat: Fix for missing methods on Windows (Martin Pitt) (#702787) gi/pygi-info.</description>
    </item>
    
    <item>
      <title>Recent autopilot-gtk improvements for better automatic UI testing</title>
      <link>https://piware.de/2013/06/recent-autopilot-gtk-improvements-for-better-automatic-ui-testing/</link>
      <pubDate>Fri, 28 Jun 2013 05:42:58 +0000</pubDate>
      
      <guid>https://piware.de/2013/06/recent-autopilot-gtk-improvements-for-better-automatic-ui-testing/</guid>
      <description>I was asked to pour some love over autopilot-gtk, a GTK module to provide introspection of widget states to Autopilot. For those who don&amp;#8217;t know, Autopilot is a QA tool to write automatic testing of GUI applications, without the race conditions and limitations that previous tools had with using only the ATK level. Please see the documentation and tutorial for more information. There are a lot of community members who do great things with it already, such as automating testing for Ubiquity or writing tests for GNOME applications like evince, gedit, nautilus, or Shotwell.</description>
    </item>
    
    <item>
      <title>umockdev 0.2.6: Hello ARM</title>
      <link>https://piware.de/2013/06/umockdev-0-2-6-hello-arm/</link>
      <pubDate>Thu, 13 Jun 2013 07:38:15 +0000</pubDate>
      
      <guid>https://piware.de/2013/06/umockdev-0-2-6-hello-arm/</guid>
      <description>I released umockdev 0.2.6. Most importantly, this now fully works on ARM platforms, as we want to use it to write tests for/on the Ubuntu phone. I tested it on my Nexus 7, and the tests also succeed on the ARM Ubuntu builder (which are Panda boards). Fixing this revealed some interesting issues in recorded ioctl traces (as they are platform specific in some cases due to different word length) as well as kernel bugs in the Tegra drivers.</description>
    </item>
    
    <item>
      <title>Ubuntu Saucy translations are now open</title>
      <link>https://piware.de/2013/06/ubuntu-saucy-translations-are-now-open/</link>
      <pubDate>Tue, 11 Jun 2013 08:21:59 +0000</pubDate>
      
      <guid>https://piware.de/2013/06/ubuntu-saucy-translations-are-now-open/</guid>
      <description>You can now start translating Ubuntu Saucy on Launchpad.</description>
    </item>
    
    <item>
      <title>umockdev 0.2.2 released</title>
      <link>https://piware.de/2013/05/umockdev-0-2-2-released/</link>
      <pubDate>Fri, 24 May 2013 15:11:17 +0000</pubDate>
      
      <guid>https://piware.de/2013/05/umockdev-0-2-2-released/</guid>
      <description>I did a 0.2.2 maintenance release for umockdev to fix building with Vala 0.16.1, gcc 4.8 (the changed sizeof behaviour caused segfaults), and current udev releases (umockdev-record stumbled over the new &amp;#8220;link priority&amp;#8221; fields of udevadm). There are also a couple of bug fixes, but no new features.</description>
    </item>
    
    <item>
      <title>PyGObject 3.9.1 released</title>
      <link>https://piware.de/2013/04/pygobject-3-9-1-released/</link>
      <pubDate>Tue, 30 Apr 2013 18:55:12 +0000</pubDate>
      
      <guid>https://piware.de/2013/04/pygobject-3-9-1-released/</guid>
      <description>Time for the first PyGObject release for GNOME 3.9.x! This release brings the performance optimizations (thanks to Daniel Drake), quite a lot of internal code cleanup, and various bug fixes.
Thanks to all contributors!
 gtk-demo: Wrap description strings at 80 characters (Simon Feltman) (#698547) gtk-demo: Use textwrap to reformat description for Gtk.TextView (Simon Feltman) (#698547) gtk-demo: Use GtkSource.View for showing source code (Simon Feltman) (#698547) Use correct class for GtkEditable&amp;#8217;s get_selection_bounds() function (Mike Ruprecht) (#699096) Test results of g_base_info_get_name for NULL (Simon Feltman) (#698829) Remove g_type_init conditional call (Jose Rostagno) (#698763) Update deps versions also in README (Jose Rostagno) (#698763) Drop compat code for old python version (Jose Rostagno) (#698763) Remove duplicate call to _gi.</description>
    </item>
    
    <item>
      <title>New fatrace released, Debian package coming</title>
      <link>https://piware.de/2013/04/new-fatrace-released-debian-package-coming/</link>
      <pubDate>Thu, 11 Apr 2013 07:16:52 +0000</pubDate>
      
      <guid>https://piware.de/2013/04/new-fatrace-released-debian-package-coming/</guid>
      <description>Paul Wise poked me this morning about uploading fatrace (&amp;#8220;file access trace&amp;#8221;, see the original announcement for details) to Debian, thanks for the reminder!
So I filed an Intent To Package, and will upload it in a few days, unless some discussion evolves.
I also took the opportunity to do some modernization: The power-usage-report script now uses the current PowerTop 2.x instead of the old 1.13, uses Python 3 now, and includes the &amp;#8220;process device activity&amp;#8221; in the report.</description>
    </item>
    
    <item>
      <title>Urgent PostgreSQL security updates for Debian/Ubuntu</title>
      <link>https://piware.de/2013/04/urgent-postgresql-security-updates-for-debianubuntu/</link>
      <pubDate>Thu, 04 Apr 2013 14:06:04 +0000</pubDate>
      
      <guid>https://piware.de/2013/04/urgent-postgresql-security-updates-for-debianubuntu/</guid>
      <description>PostgreSQL just released security updates. 9.1 (as found in Debian testing and unstable and Ubuntu 11.10 and later) is affected by a critical remote vulnerability which potentially allows anyone who can access the TCP port (without credentials) to corrupt local files. If your PostgreSQL database exposes the TCP port to any potentially untrusted location, please shut down your servers and update now!
PostgreSQL 8.4 for Debian stable (squeeze) and Ubuntu 8.</description>
    </item>
    
    <item>
      <title>python-dbusmock 0.6 released</title>
      <link>https://piware.de/2013/03/python-dbusmock-0-6-released/</link>
      <pubDate>Wed, 20 Mar 2013 13:25:14 +0000</pubDate>
      
      <guid>https://piware.de/2013/03/python-dbusmock-0-6-released/</guid>
      <description>I just pushed out a new python-dbusmock release 0.6.
Calling a method on the mock now emits a MethodCalled signal on the org.freedesktop.DBus.Mock interface. In some cases this is easier to track than parsing the mock&amp;#8217;s log or using GetMethodCalls. Thanks to Lars Uebernickel for this.
DBusMockObject.AddTemplate() and DBusTestCase.spawn_server_template() can now load local templates from your own project by specifying a path to a *.py file as template name. Thanks to Lucas De Marchi for this feature.</description>
    </item>
    
    <item>
      <title>PyGObject 3.7.92 released</title>
      <link>https://piware.de/2013/03/pygobject-3-7-92-released/</link>
      <pubDate>Mon, 18 Mar 2013 13:05:13 +0000</pubDate>
      
      <guid>https://piware.de/2013/03/pygobject-3-7-92-released/</guid>
      <description>I just released a new PyGObject for GNOME 3.7.92. This fixes a couple of crashes and marshalling errors again, but most importantly got a change to automatically mute the PyGIDeprecationWarnings for stable versions. Please run pythonX.X with the -Wd option to still be able to see them.
We got through all our bugs that were milestoned for GNOME 3.8 and don&amp;#8217;t want to or plan to introduce any major behavioural change at this point, so barring catastrophes this is what will be in GNOME 3.</description>
    </item>
    
    <item>
      <title>PyGObject 3.7.91.1 released</title>
      <link>https://piware.de/2013/03/pygobject-3-7-91-1-released/</link>
      <pubDate>Tue, 05 Mar 2013 11:25:53 +0000</pubDate>
      
      <guid>https://piware.de/2013/03/pygobject-3-7-91-1-released/</guid>
      <description>I just found out that PyGObject 3.7.91 as released yesterday breaks GEdit plugins. I just pushed out 3.7.91.1 to unbreak this again, sorry about that!</description>
    </item>
    
    <item>
      <title>Automatically generating documentation from GIR files</title>
      <link>https://piware.de/2013/03/automatically-generating-documentation-from-gir-files/</link>
      <pubDate>Tue, 05 Mar 2013 07:40:03 +0000</pubDate>
      
      <guid>https://piware.de/2013/03/automatically-generating-documentation-from-gir-files/</guid>
      <description>Many libraries build a GObject introspection repository (*.gir) these days which allows the library to be used from many scripting (Python, JavaScript, Perl, etc.) and other (e. g. Vala) languages without the need for manually writing bindings for each of those.
One issue that I hear surprisingly often is &amp;#8220;there is zero documentation for those bindings&amp;#8221;. Tools for building documentation out of a .gir have existed for a long time already, just far too many people seem to not know about them.</description>
    </item>
    
    <item>
      <title>PyGObject 3.7.91 released.</title>
      <link>https://piware.de/2013/03/pygobject-3-7-91-released/</link>
      <pubDate>Mon, 04 Mar 2013 16:38:03 +0000</pubDate>
      
      <guid>https://piware.de/2013/03/pygobject-3-7-91-released/</guid>
      <description>I just released a new PyGObject for GNOME 3.7.91. This brings some marshalling fixes, plugs tons of memory leaks, and now raises a Python DeprecationWarning when your code calls a method which is marked as deprecated in the typelib. Please note that Python hides them by default, so if you are interested in those you need to run python with the -Wd option.
Thanks to all contributors!
 Fix many memory leaks (#675726, #693402, #691501, #510511, #672224, and several more which are detected by our test suite) (Martin Pitt) Dot not clobber original Gdk/Gtk functions with overrides (Martin Pitt) (#686835) Optimize GValue.</description>
    </item>
    
    <item>
      <title>umockdev 0.2.1 release</title>
      <link>https://piware.de/2013/02/umockdev-0-2-1-release/</link>
      <pubDate>Thu, 21 Feb 2013 10:29:19 +0000</pubDate>
      
      <guid>https://piware.de/2013/02/umockdev-0-2-1-release/</guid>
      <description>Hot on the heels of yesterday&amp;#8217;s big 0.2 release, I pushed out umockdev 0.2.1 with a couple of bug fixes:
 umockdev-wrapper: Use exec to avoid keeping the shell process around and make killing the subprogram from outside work properly. Fix building with automake 1.12, thanks Peter Hutterer. Support opening several netlink sockets (i. e. udev monitors) at the same time. Fix building with older kernels which don&amp;#8217;t have the EVIOCGMTSLOTS ioctl yet.</description>
    </item>
    
    <item>
      <title>umockdev 0.2: record/replay input devices</title>
      <link>https://piware.de/2013/02/umockdev-0-2-recordreplay-input-devices/</link>
      <pubDate>Wed, 20 Feb 2013 10:37:24 +0000</pubDate>
      
      <guid>https://piware.de/2013/02/umockdev-0-2-recordreplay-input-devices/</guid>
      <description>I just released umockdev 0.2.
The big new feature of this release is support for evdev ioctls. I. e. you can now record what e. g. X.org is doing to touchpads, touch screens, etc.:
$ umockdev-record /dev/input/event15  /tmp/touchpad.umockdev # umockdev-record -i /tmp/touchpad.ioctl /dev/input/event15 -- Xorg -logfile /dev/null  and load that back into a testbed with X.org using the dummy driver:
cat &amp;lt;&amp;lt;EOF &amp;gt; xorg-dummy.conf Section &#34;Device&#34; Identifier &#34;test&#34; Driver &#34;</description>
    </item>
    
    <item>
      <title>PyGObject 3.7.90 released</title>
      <link>https://piware.de/2013/02/pygobject-3-7-90-released/</link>
      <pubDate>Tue, 19 Feb 2013 11:24:29 +0000</pubDate>
      
      <guid>https://piware.de/2013/02/pygobject-3-7-90-released/</guid>
      <description>I just released a new PyGObject for GNOME 3.7.90, with a nice set of bug fixes and some internal code cleanup. Thanks to all contributors!
 overrides: Fix inconsistencies with drag and drop target list API (Simon Feltman) (#680640) pygtkcompat: Add pygtk compatible GenericTreeModel implementation (Simon Feltman) (#682933) overrides: Add support for iterables besides tuples for TreePath creation (Simon Feltman) (#682933) Prefix __module__ attribute of function objects with gi.repository (Niklas Koep) (#693839) configure.</description>
    </item>
    
    <item>
      <title>umockdev: record and mock hardware for debugging and testing</title>
      <link>https://piware.de/2013/02/umockdev-record-and-mock-hardware-for-debugging-and-testing/</link>
      <pubDate>Tue, 12 Feb 2013 12:39:33 +0000</pubDate>
      
      <guid>https://piware.de/2013/02/umockdev-record-and-mock-hardware-for-debugging-and-testing/</guid>
      <description>What is this? umockdev is a set of tools and a library to mock hardware devices for programs that handle Linux hardware devices. It also provides tools to record the properties and behaviour of particular devices, and to run a program or test suite under a test bed with the previously recorded devices loaded.
This allows developers of software like gphoto or libmtp to receive these records in bug reports and recreate the problem on their system without having access to the affected hardware, as well as writing regression tests for those that do not need any particular privileges and thus are capable of running in standard make check.</description>
    </item>
    
    <item>
      <title>PyGObject 3.7.5 released</title>
      <link>https://piware.de/2013/02/pygobject-3-7-5-released/</link>
      <pubDate>Mon, 04 Feb 2013 18:54:32 +0000</pubDate>
      
      <guid>https://piware.de/2013/02/pygobject-3-7-5-released/</guid>
      <description>I just released a new PyGObject for GNOME 3.7.5. Unfortunately master.gnome.org is out of space right now, so I put the new tarball on my Ubuntu people account for the time being.
This again brings a nice set of memory leak and bug fixes, some more reduction of static bindings, and better support for building under Windows.
Thanks to all contributors!
 Move various signal methods from static bindings to gi and python (Simon Feltman) (#692918) GLib overrides: Support unpacking &amp;#8216;maybe&amp;#8217; variants (Paolo Borelli) (#693032) Fix ref count leak when creating pygobject wrappers for input args (Mike Gorse) (#675726) Prefix names of typeless enums and flags for GType registration (Simon Feltman) (#692515) Fix compilation with non-C99 compilers such as Visual C++ (Chun-wei Fan) (#692856) gi/overrides/Glib.</description>
    </item>
    
    <item>
      <title>PyGObject 3.7.4 released</title>
      <link>https://piware.de/2013/01/pygobject-3-7-4-released/</link>
      <pubDate>Mon, 14 Jan 2013 16:41:47 +0000</pubDate>
      
      <guid>https://piware.de/2013/01/pygobject-3-7-4-released/</guid>
      <description>I just released a new PyGObject, for GNOME 3.7.4 which is due on Wednesday.
This release saw a lot of bug and memory leak fixes again, as well as enabling some more data types such as GParamSpec, boxed list properties, or directly setting string members in structs.
Thanks to all contributors!
Summary of changes (see change log for complete details):
 Allow setting values through GtkTreeModelFilter (Simonas Kazlauskas) (#689624) Support GParamSpec signal arguments from Python (Martin Pitt) (#683099) pygobject_emit(): Fix cleanup on error (Martin Pitt) Add signal emission methods to TreeModel which coerce the path argument (Simon Feltman) (#682933) Add override for GValue (Bastian Winkler) (#677473) Mark caller-allocated boxed structures as having a slice allocated (Mike Gorse) (#699501) pygi-property: Support boxed GSList/GList types (Olivier Crête) (#684059) tests: Add missing backwards compat methods for Python 2.</description>
    </item>
    
    <item>
      <title>PyGObject 3.7.3 released</title>
      <link>https://piware.de/2012/12/pygobject-3-7-3-released/</link>
      <pubDate>Mon, 17 Dec 2012 22:17:55 +0000</pubDate>
      
      <guid>https://piware.de/2012/12/pygobject-3-7-3-released/</guid>
      <description>I just released a new PyGObject, for GNOME 3.7.3 which is due on Wednesday.
This is mostly a bug fix release. There is one API addition, it brings back official support for calling GLib.io_add_watch() with a Python file object or fd as first argument, in addition to the official API which expects a GLib.IOChannel object. These modes were marked as deprecated in 3.7.2 (only).
Thanks to all contributors!
Summary of changes (see change log for complete details):</description>
    </item>
    
    <item>
      <title>Running a script with unshared mount namespace</title>
      <link>https://piware.de/2012/12/running-a-script-with-unshared-mount-namespace/</link>
      <pubDate>Sat, 15 Dec 2012 19:49:07 +0000</pubDate>
      
      <guid>https://piware.de/2012/12/running-a-script-with-unshared-mount-namespace/</guid>
      <description>When writing system integration tests it often happens that I want to mount some tmpfses over directories like /etc/postgresql/ or /home, and run the whole script with an unshared mount namespace so that (1) it does not interfere with the real system, and (2) is guaranteed to clean up after itself (unmounting etc.) after it ends in any possible way (including SIGKILL, which breaks usual cleanup methods like &amp;#8220;trap&amp;#8221;, &amp;#8220;finally&amp;#8221;, &amp;#8220;def tearDown()&amp;#8221;, &amp;#8220;atexit()&amp;#8221; and so on).</description>
    </item>
    
    <item>
      <title>Apport 2.7: ARM retracing support, better hook debugging</title>
      <link>https://piware.de/2012/12/apport-2-7-arm-retracing-support-better-hook-debugging/</link>
      <pubDate>Mon, 10 Dec 2012 12:18:20 +0000</pubDate>
      
      <guid>https://piware.de/2012/12/apport-2-7-arm-retracing-support-better-hook-debugging/</guid>
      <description>I just released Apport 2.7.
The main new feature is supporting foreign architectures in apport-retrace. If apport-retrace works in sandbox mode and works on a crash that was not produced on the same architecture as apport-retrace is running on, it will now build a sandbox for the report&amp;#8217;s architecture and invoke gdb with the necessary magic options to produce a proper stack trace (and the other gdb information).
Right now this works for i386, x86_64, and ARMv7, but if someone is interested in making this work for other architectures, please ping me.</description>
    </item>
    
    <item>
      <title>PyGObject 3.7.2 released</title>
      <link>https://piware.de/2012/11/pygobject-3-7-2-released/</link>
      <pubDate>Mon, 19 Nov 2012 14:37:02 +0000</pubDate>
      
      <guid>https://piware.de/2012/11/pygobject-3-7-2-released/</guid>
      <description>just released a new PyGObject, for GNOME 3.7.2 which is due on Wednesday.
In this version PyGObject went through some major refactoring: Some 5.000 lines of static bindings were removed and replaced with proper introspection and some overrides for backwards compatibility, and the static/GI/overrides code structure was simplified. For the developer this means that you can now use the full GLib API, a lot of which was previously hidden by old and incomplete static bindings; also you can and should now use the officially documented GLib API instead of PyGObject&amp;#8217;s static one, which has been marked as deprecated.</description>
    </item>
    
    <item>
      <title>python-dbusmock templates</title>
      <link>https://piware.de/2012/11/python-dbusmock-templates/</link>
      <pubDate>Thu, 15 Nov 2012 07:36:11 +0000</pubDate>
      
      <guid>https://piware.de/2012/11/python-dbusmock-templates/</guid>
      <description>With python-dbusmock you can provide mocks for arbitrary D-BUS services for your test suites or if you want to reproduce a bug.
However, when writing actual tests for gnome-settings-daemon etc. I noticed that it is rather cumbersome to always have to set up the &amp;#8220;skeleton&amp;#8221; of common services such as UPower. python-dbusmock 0.2 now introduces the concept of &amp;#8220;templates&amp;#8221; which provide those skeletons for common standard services so that your code only needs to set up the particular properties and specific D-BUS objects that you need.</description>
    </item>
    
    <item>
      <title>PyGObject 3.4.2 released</title>
      <link>https://piware.de/2012/11/pygobject-3-4-2-released/</link>
      <pubDate>Mon, 12 Nov 2012 14:26:43 +0000</pubDate>
      
      <guid>https://piware.de/2012/11/pygobject-3-4-2-released/</guid>
      <description>I just released PyGObject 3.4.2, a bug fix release for GNOME 3.6.2.
Thanks to all contributors!
 Fix marshalling of GByteArrays (Martin Pitt) Fix marshalling of ssize_t to smaller ints (Martin Pitt) Fix crash with GLib.child_watch_add (Daniel Narvaez) (#688067) Fix various bugs in GLib.IOChannel (Martin Pitt) Work around wrong 64 bit constants in GLib Gir (Martin Pitt) (#685022) Fix OverflowError in source_remove() (Martin Pitt) (#684526) Fix Signal decorator to not use base class gsignals dict (Simon Feltman) (#686496)  </description>
    </item>
    
    <item>
      <title>Ready for porting GNOME to Python 3</title>
      <link>https://piware.de/2012/11/ready-for-porting-gnome-to-python-3/</link>
      <pubDate>Wed, 07 Nov 2012 07:39:41 +0000</pubDate>
      
      <guid>https://piware.de/2012/11/ready-for-porting-gnome-to-python-3/</guid>
      <description>A few days ago Olav Vitters announced the GNOME 3.8 goal of porting to Python 3.
This has been discussed on desktop-devel-list@ in the past days, and the foundations for this are now ready:
 pygobject now has a &amp;#8211;with-python option. (commit) JHBuild now defaults to building pygobject for Python 3, but introduces a &amp;#8220;pygobject-python2&amp;#8221; project for the transition phase which provides pygobject built for Python 2. (commit) All dependencies to &amp;#8220;pygobject&amp;#8221; were changed to &amp;#8220;pygobject-python2&amp;#8221; to avoid breaking modules.</description>
    </item>
    
    <item>
      <title>Running a Samba server as normal user for testing</title>
      <link>https://piware.de/2012/10/running-a-samba-server-as-normal-user-for-testing/</link>
      <pubDate>Wed, 17 Oct 2012 06:45:09 +0000</pubDate>
      
      <guid>https://piware.de/2012/10/running-a-samba-server-as-normal-user-for-testing/</guid>
      <description>For writing tests for GVFS (current tests, proposed improvements) I want to run Samba as normal user, so that we can test gvfs&amp;#8217; smb backend without root privileges and thus can run them safely and conveniently in a &amp;#8220;make check&amp;#8221; environment for developers and in JHBuild for continuous integration testing. Before these tests could only run under gvfs-testbed, which needs root.
Unlike other servers such as ssh or ftp, this turned out surprisingly non-obvious and hard, so I want to document it in this blog post for posterity&amp;#8217;s benefit.</description>
    </item>
    
    <item>
      <title>PyGObject 3.4.1 released</title>
      <link>https://piware.de/2012/10/pygobject-3-4-1-released/</link>
      <pubDate>Mon, 15 Oct 2012 06:50:42 +0000</pubDate>
      
      <guid>https://piware.de/2012/10/pygobject-3-4-1-released/</guid>
      <description>I just released PyGObject 3.4.1, in time for the GNOME 3.6.1 release on Wednesday.
This version provides a nice set of bug fixes. no API changes.
Thanks to all contributors!
Complete list of changes:
 Skip Regress tests with &amp;#8211;disable-cairo (Martin Pitt) (#685094) _pygi_marshal_from_py_uint64: Re-fix check of negative values (Martin Pitt) (#685000) Fix leak with python callables as closure argument. (Simon Feltman) (#685598) Gio overrides: Handle setting GSettings enum keys (Martin Pitt) (#685947) tests: Check reading GSettings enums in Gio overrides (Martin Pitt) Fix unsigned values in GArray/GList/GSList/GHash (Martin Pitt) (#685860) build: Fix srcdir !</description>
    </item>
    
    <item>
      <title>Python unittest: Show log on test failure</title>
      <link>https://piware.de/2012/10/python-unittest-show-log-on-test-failure/</link>
      <pubDate>Thu, 11 Oct 2012 08:34:01 +0000</pubDate>
      
      <guid>https://piware.de/2012/10/python-unittest-show-log-on-test-failure/</guid>
      <description>I found it surprisingly hard to determine in tearDown() whether or not the test that currently ran succeeded or not. I am writing some tests for gnome-settings-daemon and want to show the log output of the daemon if a test failed.
I now cobbled together the following hack, but I wonder if there&amp;#8217;s a more elegant way? The interwebs don&amp;#8217;t seem to have a good solution for this either.
def tearDown(self): [.</description>
    </item>
    
    <item>
      <title>Announcing D-Bus mocker library</title>
      <link>https://piware.de/2012/09/announcing-d-bus-mocker-library/</link>
      <pubDate>Fri, 28 Sep 2012 14:00:11 +0000</pubDate>
      
      <guid>https://piware.de/2012/09/announcing-d-bus-mocker-library/</guid>
      <description>I was working on writing tests for gnome-settings-daemon a week or so ago, and finally got blocked on being unable to set up upower/ConsoleKit/etc. the way I need them. Also, doing so needs root privileges, I don&amp;#8217;t want my test suite to actually suspend my machine, and using the real service is generally not suitable for test suites that are supposed to run during &amp;#8220;make check&amp;#8221;, in jhbuild, and the like &amp;#8212; these do not have the polkit privileges to do all that, and may not even have a system D-Bus running in the first place.</description>
    </item>
    
    <item>
      <title>PyGObject 3.3.92 released</title>
      <link>https://piware.de/2012/09/pygobject-3-3-92-released/</link>
      <pubDate>Mon, 17 Sep 2012 20:58:04 +0000</pubDate>
      
      <guid>https://piware.de/2012/09/pygobject-3-3-92-released/</guid>
      <description>I just released PyGObject 3.3.92, for GNOME 3.5.92.
There is nothing too exciting in this release; a couple of small bug fixes and a lot of new test cases. See the detailled list of changes below.
Thanks to all contributors!
Changes:
 release-news: Generate HTML changelog (Martin Pitt) [API add] Add ObjectInfo.get_abstract method (Simon Feltman) (#675581) Add deprecation warning when setting gpointers to anything other than int. (Simon Feltman) (#683599) test_properties: Test accessing a property from a superclass (Martin Pitt) (#684058) test_properties.</description>
    </item>
    
    <item>
      <title>PostgreSQL 9.2 final available for Debian and Ubuntu</title>
      <link>https://piware.de/2012/09/postgresql-9-2-final-available-for-debian-and-ubuntu/</link>
      <pubDate>Mon, 10 Sep 2012 13:58:20 +0000</pubDate>
      
      <guid>https://piware.de/2012/09/postgresql-9-2-final-available-for-debian-and-ubuntu/</guid>
      <description>PostgreSQL 9.2 has just been released, after a series of betas and a release candidate. See for yourself what&amp;#8217;s new, and try it out!
Packages are available in Debian experimental as well as my PostgreSQL backports PPA for Ubuntu 10.04 to 12.10, as usual.
Please note that 9.2 will not land any more in the feature frozen Debian Wheezy and Ubuntu Quantal (12.10) releases, as none of the server-side extensions are packaged for 9.</description>
    </item>
    
    <item>
      <title>PyGObject 3.3.91 released</title>
      <link>https://piware.de/2012/09/pygobject-3-3-91-released/</link>
      <pubDate>Mon, 03 Sep 2012 20:31:42 +0000</pubDate>
      
      <guid>https://piware.de/2012/09/pygobject-3-3-91-released/</guid>
      <description>I just released PyGObject 3.3.91, for GNOME 3.5.91.
The big new feature in this release (thanks to the release team for granting an exception) is Simon Feltman&amp;#8217;s new Signal helper class, which makes defining custom signals a whole lot simpler and more obvious. In the past, you had to do
class C(GObject.GObject): __gsignals__ = { &#39;my_signal&#39;: (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_INT,)) } def do_my_signal(self, arg): print(&#34;my_signal called with %i&#34; % arg)  whereas now this looks like</description>
    </item>
    
    <item>
      <title>PostgreSQL 9.2 RC1 available for testing</title>
      <link>https://piware.de/2012/08/postgresql-9-2-rc1-available-for-testing/</link>
      <pubDate>Tue, 28 Aug 2012 04:57:29 +0000</pubDate>
      
      <guid>https://piware.de/2012/08/postgresql-9-2-rc1-available-for-testing/</guid>
      <description>The unstoppable PostgreSQL team just announced the first release candidate of 9.2, with several bug fixes since the Beta 4. If you haven&amp;#8217;t tested 9.2 yet, now is the time! Remember that you can run a copy of your 8.4 or 9.2 cluster in parallel for testing with pg_upgradecluster.
If you use Debian, 9.2rc1 will be available in experimental in a few hours. For Ubuntu, you can get packages for all supported releases from my PostgreSQL backports PPA as usual.</description>
    </item>
    
    <item>
      <title>Apport 2.5: Better support for third-party and PPA packages</title>
      <link>https://piware.de/2012/08/apport-2-5-better-support-for-third-party-and-ppa-packages/</link>
      <pubDate>Wed, 22 Aug 2012 10:13:23 +0000</pubDate>
      
      <guid>https://piware.de/2012/08/apport-2-5-better-support-for-third-party-and-ppa-packages/</guid>
      <description>I just released Apport 2.5 with a bunch of new features and some bug fixes.
By default you cannot report bugs and crashes to packages from PPAs, as they are not Ubuntu packages. Some packages like Unity or UbuntuOne define their own crash database which reports bugs against the project instead. This has been a bit cumbersome in the past, as these packages needed to ship a /etc/apport/crashdb.conf.d/ snippet. This has become much easier, package hooks can define a new crash database directly now (#551330):</description>
    </item>
    
    <item>
      <title>PyGObject 3.3.90 released</title>
      <link>https://piware.de/2012/08/pygobject-3-3-90-released/</link>
      <pubDate>Mon, 20 Aug 2012 21:26:31 +0000</pubDate>
      
      <guid>https://piware.de/2012/08/pygobject-3-3-90-released/</guid>
      <description>I just released PyGObject 3.3.90, for GNOME 3.5.90.
This is now working correctly on big-endian 64 bit machines such as powerpc64, and fixes marshalling for GParamSpec attributes and return values, as well as a few small bug fixes.
Thanks to all contributors!
Complete list of changes:
 Implement marshalling for GParamSpec (Mathieu Duponchelle) (#681565) Fix erronous import statements for Python 3.3 (Simon Feltman) (#682051)  Do not fail tests if pyflakes or pep8 are not installed (Martin Pitt) Fix PEP-8 whitespace checking and issues in the code (Martin Pitt) Fix unmarshalling of gssize (David Malcolm) (#680693) Fix various endianess errors (David Malcolm) (#680692) Gtk overrides: Add TreeModelSort.</description>
    </item>
    
    <item>
      <title>PyGObject hackfest at GUADEC</title>
      <link>https://piware.de/2012/07/pygobject-hackfest-at-guadec-2/</link>
      <pubDate>Tue, 31 Jul 2012 15:53:12 +0000</pubDate>
      
      <guid>https://piware.de/2012/07/pygobject-hackfest-at-guadec-2/</guid>
      <description>Yesterday, GUADEC hosted a PyGObject hackfest. I was really happy to see so many participants, and a lot of whom who are rather new to the project. I originally feared that it would just be the core crew of four people, as this is not exactly the shiniest part of GNOME development.
So I did not work on the stuff I was planning for, but instead walked around and provided mentoring, help, and patch review.</description>
    </item>
    
    <item>
      <title>My impressions from GUADEC</title>
      <link>https://piware.de/2012/07/my-impressions-from-guadec/</link>
      <pubDate>Tue, 31 Jul 2012 14:04:18 +0000</pubDate>
      
      <guid>https://piware.de/2012/07/my-impressions-from-guadec/</guid>
      <description>I have had the pleasure of attending GUADEC in full this year. TL;DR: A lot of great presentations + lots of hall conversations about QA stuff + the obligatory be{er,ach} = ♥.
Last year I just went to the hackfest, and I never made it to any previous one, so GUADEC 2012 was a kind of first-time experience for me. It was great to put some faces and personal impressions to a lot of the people I have worked with for many years, as well as catching up with others that I did meet before.</description>
    </item>
    
    <item>
      <title>PyGObject hackfest @ GUADEC: Agenda</title>
      <link>https://piware.de/2012/07/pygobject-hackfest-guadec-agenda/</link>
      <pubDate>Tue, 24 Jul 2012 13:54:58 +0000</pubDate>
      
      <guid>https://piware.de/2012/07/pygobject-hackfest-guadec-agenda/</guid>
      <description>I started to collect some easy PyGObject bugs which are appropriate for the PyGObject hackfest at GUADEC on July 30th. These are bugs which do not need a lot of previous knowlege and are excellent starters for new contributors, such as adding overrides, fixing build system issues, etc.
I also created an initial idea pool/agenda/coordination page, where participants can add or signup for things to work on.
Feel free to add your own topics!</description>
    </item>
    
    <item>
      <title>PyGObject 3.3.4 released</title>
      <link>https://piware.de/2012/07/pygobject-3-3-4-released/</link>
      <pubDate>Mon, 16 Jul 2012 15:46:54 +0000</pubDate>
      
      <guid>https://piware.de/2012/07/pygobject-3-3-4-released/</guid>
      <description>I released PyGObject 3.3.4. This is mostly a bug fix only release to fix existing API. Highlights are that lists of GVariants and other corner cases are now working correctly when being passed from C to Python, and that calling help() on a GI module now does something sensible.
Thanks to all contributors!
Complete list of changes:
 pygi-convert.sh: Drop bogus filter_new() conversion (Martin Pitt) (#679999)  Fix help() for GI modules (Martin Pitt) (#679804)  Skip gi.</description>
    </item>
    
    <item>
      <title>PyGObject hackfest at GUADEC</title>
      <link>https://piware.de/2012/07/pygobject-hackfest-at-guadec/</link>
      <pubDate>Tue, 03 Jul 2012 14:58:49 +0000</pubDate>
      
      <guid>https://piware.de/2012/07/pygobject-hackfest-at-guadec/</guid>
      <description>I just received confirmation that my request for a PyGObject hackfest has been approved by the GUADEC organizers.
If you are developing GObject-introspection based Python applications and have some problems with PyGObject, this is the time and place to get to know each other, getting bugs fixed, learn about pygobject&amp;#8217;s innards, or update libraries to become introspectable. I will prepare a list of easy things to look into if you are interested in learning about and getting involved in PyGObject&amp;#8217;s development.</description>
    </item>
    
    <item>
      <title>PyGObject 3.3.3 released</title>
      <link>https://piware.de/2012/06/pygobject-3-3-3-released/</link>
      <pubDate>Mon, 25 Jun 2012 13:56:31 +0000</pubDate>
      
      <guid>https://piware.de/2012/06/pygobject-3-3-3-released/</guid>
      <description>I released PyGObject 3.3.3.
The most notable changes are that you can now access methods (and other identifiers) which are Python keywords, PyGObject automatically escapes them now by appending a &amp;#8216;_&amp;#8217;. For example, you can now call myGdkWindow.raise_() or GLib.Thread.yield_() instead of having to resort to the previous workaround getattr(myGdkWindow, &#39;raise&#39;)().
This version also restores the deprecated get_data() and set_data() methods. They were never really meant to be used from Python programs, they can potentially mess up your program and cause crashes, and do not give you anything that regular Python object properties would not already provide in a much safer way (i.</description>
    </item>
    
    <item>
      <title>Second upstream QA engineer position at Canonical</title>
      <link>https://piware.de/2012/06/second-upstream-qa-engineer-position-at-canonical/</link>
      <pubDate>Fri, 22 Jun 2012 07:08:15 +0000</pubDate>
      
      <guid>https://piware.de/2012/06/second-upstream-qa-engineer-position-at-canonical/</guid>
      <description>A few weeks ago I wrote about my new role as an upstream QA engineer. I have now officially been in that role since June. Quite expectedly I had (and still have) some backlog from my previous Desktop engineer role, but I have had plenty of time to work on automatic tests and some test technology now. If you are interested in the daily details, you can look at the ramblings on my G+ page; in a nutshell I worked on integration tests for udisks2 (mostly upstream now), a mock polkit API, and a small enhancement of the scsi_debug kernel module.</description>
    </item>
    
    <item>
      <title>PyGObject 3.3.2 released</title>
      <link>https://piware.de/2012/06/pygobject-3-3-2-released/</link>
      <pubDate>Tue, 05 Jun 2012 17:33:13 +0000</pubDate>
      
      <guid>https://piware.de/2012/06/pygobject-3-3-2-released/</guid>
      <description>I just released PyGObject 3.3.2, (almost) in time for tomorrow&amp;#8217;s GNOME 3.5.2 release. No API breaks or new features this time, just lots of bug fixes and some minor API completions. My personal favorite is making closure calls work with GVariant arguments, which I finally figured out after over half a year; this finally unblocks making GDBus fully introspectable with not too much additional work, only that in the meantime dbus-python was ported to Python 3 so that the need for it is actually a lot smaller now.</description>
    </item>
    
    <item>
      <title>New PostgreSQL microreleases with two security fixes</title>
      <link>https://piware.de/2012/06/new-postgresql-microreleases-with-two-security-fixes/</link>
      <pubDate>Mon, 04 Jun 2012 11:16:28 +0000</pubDate>
      
      <guid>https://piware.de/2012/06/new-postgresql-microreleases-with-two-security-fixes/</guid>
      <description>New PostgreSQL microreleases with two security fixes and several bug fixes was just announced publically.
I spent the morning with the packaging orgy for Debian unstable and experimental (now uploaded), Debian Wheezy (update sent to security team), Ubuntu hardy, lucid, natty, oneiric, precise (LP #1008317) and my backports PPA.
I tested these fairly thoroughly, but please let me know if you encounter any problem with these.</description>
    </item>
    
    <item>
      <title>Apport API users: Watch your data types / Python 3 porting</title>
      <link>https://piware.de/2012/05/apport-api-users-watch-your-data-types-python-3-porting/</link>
      <pubDate>Fri, 18 May 2012 14:41:09 +0000</pubDate>
      
      <guid>https://piware.de/2012/05/apport-api-users-watch-your-data-types-python-3-porting/</guid>
      <description>I just uploaded Apport 2.1 to Quantal. A big change in that version is that the whole code now works with both Python 2 and 3, except for the launchpadlib crash database backend (as we do not yet have a python3-launchpadlib package).
I took some care that apport report objects get along with both strings (unicode type in Python 2) and byte arrays (str type in Python 2) in values, so most package hooks should still work.</description>
    </item>
    
    <item>
      <title>To boldly go where no test has gone before</title>
      <link>https://piware.de/2012/05/to-boldly-go-where-no-test-has-gone-before/</link>
      <pubDate>Fri, 18 May 2012 07:22:38 +0000</pubDate>
      
      <guid>https://piware.de/2012/05/to-boldly-go-where-no-test-has-gone-before/</guid>
      <description>As I wrote two weeks ago, I consider the QA related changes in Ubuntu 12.04 a great success. But while we will continue and even extend our efforts there, this is not where the ball stops: it&amp;#8217;s great to have the feedback cycle between &amp;#8220;break it&amp;#8221; and &amp;#8220;notice the bug&amp;#8221; reduced from potentially a few months to one day in many cases, but wouldn&amp;#8217;t it be cool to reduce that to a few minutes, and also put the machinery right at where stuff really happens &amp;#8212; into the upstream trunks?</description>
    </item>
    
    <item>
      <title>Debian/Ubuntu Packages for PostgreSQL 9.2 Beta 1</title>
      <link>https://piware.de/2012/05/packages-for-postgresql-9-2-beta-1-now-available/</link>
      <pubDate>Tue, 15 May 2012 12:32:42 +0000</pubDate>
      
      <guid>https://piware.de/2012/05/packages-for-postgresql-9-2-beta-1-now-available/</guid>
      <description>The first Beta of the upcoming PostgreSQL 9.2 was released yesterday (see announcement). Your humble maintainer has now created packages for you to test. Please give them a whirl, and report any problems/regressions that you may see to the PostgreSQL developers, so that we can have a rock solid 9.2 release.
Remember, with the postgresql-common infrastructure you can use pg_upgradecluster to create a 9.2 cluster from your existing 8.4&amp;frasl;9.1 cluster and run them both in parallel without endangering your data.</description>
    </item>
    
    <item>
      <title>PyGObject 3.3.1 released</title>
      <link>https://piware.de/2012/05/pygobject-3-3-1-released/</link>
      <pubDate>Sun, 06 May 2012 13:22:41 +0000</pubDate>
      
      <guid>https://piware.de/2012/05/pygobject-3-3-1-released/</guid>
      <description>This announcement comes very late (a week after release), but better late than never..
The first PyGObject 3.3 series release is now out, with lots of yummy fixes and improvements. Dieter, Sebastian, and I went through a round of bugzilla spring cleaning to clean up old bugs, fix simple bugs, and apply good patches that were waiting, so as a result the patch queue is now almost empty and PyGObject works better than ever.</description>
    </item>
    
    <item>
      <title>QA changes for Ubuntu 12.04</title>
      <link>https://piware.de/2012/04/qa-changes-for-ubuntu-12-04/</link>
      <pubDate>Fri, 27 Apr 2012 05:17:16 +0000</pubDate>
      
      <guid>https://piware.de/2012/04/qa-changes-for-ubuntu-12-04/</guid>
      <description>Half a year ago I blogged about the changed expectancies and processes to improve quality of the development release which we discussed at the UDS in Orlando: A promise that we don&amp;#8217;t break the development version, regressions are not to be tolerated, acceptance criteria for Canonical upstreams. For that we introduced the Stable+1 team, actually did some reversions of broken packages, our QA team set up rigorous daily installation image and upgrade tests, and the code development process for Unity and related project was changed to enforce buildability and passing automatic tests with each and every change to trunk.</description>
    </item>
    
    <item>
      <title>PyGObject 3.1.92 released</title>
      <link>https://piware.de/2012/03/pygobject-3-1-92-released/</link>
      <pubDate>Mon, 19 Mar 2012 16:14:01 +0000</pubDate>
      
      <guid>https://piware.de/2012/03/pygobject-3-1-92-released/</guid>
      <description>I just released a new pygobject version 3.1.92, for this week&amp;#8217;s GNOME 3.3.92. This was my first-ever GNOME release (yay!), so please bear with me.
One highlight of this release is the new pygtkcompat module, contributed by Johan Dahlin. It provides backwards compatibility to pygtk far beyond to what the Gtk overrrides do, and also includes some shims for the old static webkit, gudev, and other modules. You can, and have to, enable them individually:</description>
    </item>
    
    <item>
      <title>power-usage-report: Find power drain causes</title>
      <link>https://piware.de/2012/02/power-usage-report-find-power-drain-causes/</link>
      <pubDate>Tue, 21 Feb 2012 09:38:54 +0000</pubDate>
      
      <guid>https://piware.de/2012/02/power-usage-report-find-power-drain-causes/</guid>
      <description>Part of our efforts to reduce power consumption in Ubuntu is to provide an easy tool to hunt down which programs and devices are to blame for inordinate power consumption. powertop&amp;#8217;s interactive mode is pretty good for this if you are sitting in a train and want to tweak some knobs to max out battery life, but we need something more reproducible and noninteractive for developers who want to file proper bug reports.</description>
    </item>
    
    <item>
      <title>fatrace: report system wide file access events</title>
      <link>https://piware.de/2012/02/fatrace-report-system-wide-file-access-events/</link>
      <pubDate>Tue, 07 Feb 2012 17:35:49 +0000</pubDate>
      
      <guid>https://piware.de/2012/02/fatrace-report-system-wide-file-access-events/</guid>
      <description>Part of our efforts to reduce power consumption is to identify processes which keep waking up the disk even when the computer is idle. This already resulted in a few bug reports (and some fixes, too), but we only really just began with this.
Unfortunately there is no really good tool to trace file access events system-wide. powertop claims to, but its output is both very incomplete, and also wrong (e.</description>
    </item>
    
    <item>
      <title>PackageKit/aptdaemon “what-provides” plugin support</title>
      <link>https://piware.de/2012/02/packagekitaptdaemon-what-provides-plugin-support/</link>
      <pubDate>Fri, 03 Feb 2012 07:03:48 +0000</pubDate>
      
      <guid>https://piware.de/2012/02/packagekitaptdaemon-what-provides-plugin-support/</guid>
      <description>PackageKit has a &amp;#8220;WhatProvides&amp;#8221; API for mapping distribution independent concepts to particular package names. For example, you could ask &amp;#8220;which packages provide a decoder for AC3 audio files?
$ pkcon what-provides &#34;gstreamer0.10(decoder-audio/ac3)&#34; [...] Installed gstreamer0.10-plugins-good-0.10.30.2-2ubuntu2.amd64 GStreamer plugins from the &#34;good&#34; set Available gstreamer0.10-plugins-ugly-0.10.18-3ubuntu4.amd64 GStreamer plugins from the &#34;ugly&#34; set  This is the kind of question your video player would ask the system if it encounters a video it cannot play.</description>
    </item>
    
    <item>
      <title>software-center now installs language support automatically</title>
      <link>https://piware.de/2012/01/software-center-now-installs-language-support-automatically/</link>
      <pubDate>Thu, 26 Jan 2012 15:52:34 +0000</pubDate>
      
      <guid>https://piware.de/2012/01/software-center-now-installs-language-support-automatically/</guid>
      <description>Suppose you install Ubuntu and select a language other than English (it&amp;#8217;s known to happen!). This will install the general and the GNOME language packs, translated LibreOffice help, and so on. Now, install a KDE package or GIMP. You&amp;#8217;ll notice that the new application is not translated and has no help available for your language. The next time you open the language selector from control-center it would tell you that you miss some language support and offer to install it, but this has been pretty indiscoverable, and we really can do better.</description>
    </item>
    
    <item>
      <title>libxklavier is now introspectable</title>
      <link>https://piware.de/2012/01/libxklavier-is-now-introspectable/</link>
      <pubDate>Wed, 11 Jan 2012 21:07:34 +0000</pubDate>
      
      <guid>https://piware.de/2012/01/libxklavier-is-now-introspectable/</guid>
      <description>On my 8 hour train ride to Budapest last Sunday I finally worked on making libxklavier introspectable. Thanks to Sergey&amp;#8217;s fast review the code now landed in trunk. I sent a couple of refinements to the bug report still, but those are mostly just icing on the cake, the main functionality of getting and setting keyboard layouts is working nicely now (see the example script).</description>
    </item>
    
    <item>
      <title>Precise’s QA improvements for Alpha-1</title>
      <link>https://piware.de/2011/12/precises-qa-improvements-for-alpha-1/</link>
      <pubDate>Thu, 01 Dec 2011 07:56:37 +0000</pubDate>
      
      <guid>https://piware.de/2011/12/precises-qa-improvements-for-alpha-1/</guid>
      <description>I&amp;#8217;m the release engineer in charge for Precise Alpha 1 which is currently being prepared. I must say, this has been a real joy! The fruits of the new QA paradigm and strategy and the new Stable+1 maintenance team have already achieved remarkable results:
 The archive consistency reports like component-mismatches, uninstallability, etc. now appear about 20 minutes earlier than in oneiric. CD image builds can now happen 30 minutes earlier after the publisher start, and are much quicker now due to moving to newer machines.</description>
    </item>
    
    <item>
      <title>Apport 1.90: Client-side duplicate checking</title>
      <link>https://piware.de/2011/11/apport-1-90-client-side-duplicate-checking/</link>
      <pubDate>Thu, 24 Nov 2011 15:55:33 +0000</pubDate>
      
      <guid>https://piware.de/2011/11/apport-1-90-client-side-duplicate-checking/</guid>
      <description>Apport and the retracer bot in the Canonical data center have provided server-side automatic closing of duplicate crash report bugs for quite a long time. As we have only kept Apport crash detection enabled in the development release, we got away with this as bugs usually did not get so many duplicates that they became unmanageable. Also, the number of duplicates provided a nice hint to how urgent and widespread a crash actually was.</description>
    </item>
    
    <item>
      <title>12.04: Testing FTW</title>
      <link>https://piware.de/2011/11/12-04-testing-ftw/</link>
      <pubDate>Mon, 07 Nov 2011 08:24:59 +0000</pubDate>
      
      <guid>https://piware.de/2011/11/12-04-testing-ftw/</guid>
      <description>I arrived back home in Augsburg, from last week&amp;#8217;s Ubuntu Developer Summit in Orlando, FL. As this is a quality/LTS cycle, we pretty much already knew in advance what to do (bug fixing, bug fixing, some boot speed, and did I mention bug fixing?), but still we had many highly interesting and exciting sessions this time, not so much about what we are going to do, but how we are going to build 12.</description>
    </item>
    
    <item>
      <title>Riding the Pangolin</title>
      <link>https://piware.de/2011/11/riding-the-pangolin/</link>
      <pubDate>Fri, 04 Nov 2011 15:31:12 +0000</pubDate>
      
      <guid>https://piware.de/2011/11/riding-the-pangolin/</guid>
      <description>Just took the plunge, using the excellent bandwidth and local mirror at UDS:
`Just took the plunge, using the excellent bandwidth and local mirror at UDS:
`
Nothing blew up in my face, so it seems today is a good day to die^Wupgrade.</description>
    </item>
    
    <item>
      <title>Apport: debug symbol retrieval now in GUI</title>
      <link>https://piware.de/2011/10/apport-debug-symbol-retrieval-now-in-gui/</link>
      <pubDate>Sun, 30 Oct 2011 11:18:49 +0000</pubDate>
      
      <guid>https://piware.de/2011/10/apport-debug-symbol-retrieval-now-in-gui/</guid>
      <description>On a rather calm ten-hour flight to Orlando I once again did some pygobject, udisks, and Apport hacking (It&amp;#8217;s scary how productive one can be when not constantly being interrupted by IRC, email, etc). One more visible change amongst these was finally fixing a five year old five-digit bug to integrate apport-retrace into the GUI, now that it does not potentially wreck your installation any more.
If the apport-retrace package is installed, the crash detail dialog will show a new &amp;#8220;Examine locally&amp;#8221; button:</description>
    </item>
    
    <item>
      <title>Happy Birthday Ubuntu!</title>
      <link>https://piware.de/2011/10/happy-birthday-ubuntu/</link>
      <pubDate>Thu, 20 Oct 2011 07:40:41 +0000</pubDate>
      
      <guid>https://piware.de/2011/10/happy-birthday-ubuntu/</guid>
      <description>7 years ago, The Ubuntu 4.10 &amp;#8220;The Warty Warthog&amp;#8221; was announced. A huge congrats to the community, Canonical, and especially Mark for getting so far from &amp;#8220;there&amp;#8221; to &amp;#8220;here&amp;#8221;.
This brings back old memories of my first conference in Oxford in August, the great-great-grandfather to what is UDS these days. Back then, there was no company, no Launchpad, no Blueprints, no work items, no detailled plans, just a bunch of ideas, BoFs, and this was a third of the entire crowd:</description>
    </item>
    
    <item>
      <title>Gestatten, Elite</title>
      <link>https://piware.de/2011/10/gestatten-elite/</link>
      <pubDate>Sun, 09 Oct 2011 20:18:13 +0000</pubDate>
      
      <guid>https://piware.de/2011/10/gestatten-elite/</guid>
      <description>Ich habe gerade Gestatten, Elite zu Ende gelesen (ging schnell, hab erst gestern angefangen). War im Grunde genommen nichts wirklich Neues, was man nicht irgendwie schon gewusst oder geahnt hätte. Aber die gut recherchierte und bewiesene Vehemenz, mit der sich die Oberschicht abschottet und sich selbst als eine Art neuer Adel erhält und das vielbeschworene Leistungsprinzip untergräbt war dann doch schon recht schockierend für mich.
Eine der &amp;#8220;Elite&amp;#8221;-Schulen die dort unter die Lupe genommen wird &amp;#8212; Schloss Neubeuern &amp;#8212; haben wir auf unserer Sommerradtour gesehen.</description>
    </item>
    
    <item>
      <title>PostgreSQL 9.1 final packages available for Debian/Ubuntu</title>
      <link>https://piware.de/2011/09/postgresql-9-1-final-packages-available-for-debianubuntu/</link>
      <pubDate>Tue, 13 Sep 2011 04:19:20 +0000</pubDate>
      
      <guid>https://piware.de/2011/09/postgresql-9-1-final-packages-available-for-debianubuntu/</guid>
      <description>Hot on the heels of the PostgreSQL 9.1.0 release I am happy to announce that the final version is now packaged for Debian unstable, the current Ubuntu development version &amp;#8220;Oneiric&amp;#8221;, and also in my Ubuntu backports PPA for Ubuntu 10.04 LTS, 10.10, and 11.04.
Enjoy trying out all the cool new features like builtin synchronous replication or per-column collation settings for correctly handling international strings, or an even finer-grained access control for large environments.</description>
    </item>
    
    <item>
      <title>Dropping PostgreSQL 9.0 packages for Debian/Ubuntu/backports</title>
      <link>https://piware.de/2011/09/dropping-postgresql-9-0-packages-for-debianubuntubackports/</link>
      <pubDate>Thu, 08 Sep 2011 14:28:06 +0000</pubDate>
      
      <guid>https://piware.de/2011/09/dropping-postgresql-9-0-packages-for-debianubuntubackports/</guid>
      <description>PostgreSQL 9.1 has had its first release candidate out for some two weeks without major problem reports, so it&amp;#8217;s time to promote this more heavily. If you use PostgreSQL, now is the time to try it out and report problems.
We always strive to minimize the number of major versions which we have to support. They not only mean more maintenance for developers, but also more upgrade cycles for the users.</description>
    </item>
    
    <item>
      <title>apport-retrace made useful</title>
      <link>https://piware.de/2011/08/apport-retrace-made-useful/</link>
      <pubDate>Fri, 26 Aug 2011 15:20:58 +0000</pubDate>
      
      <guid>https://piware.de/2011/08/apport-retrace-made-useful/</guid>
      <description>The tool to reprocess an Apport crash report to produce a symbolic stack trace, apport-retrace, has been pretty hard to use on a developer system so far: It either installed the packages from the crash report, plus its debug symbol packages (&amp;#8220;ddebs&amp;#8221;) into the running system (which frequently caused problems like broken dependencies), or it required setting up a chroot and using apport-chroot with fakechroot and fakeroot.
I&amp;#8217;m happy to announce that with Apport 1.</description>
    </item>
    
    <item>
      <title>Radurlaub 2011: Entlang des Inn</title>
      <link>https://piware.de/2011/08/inn-radtour/</link>
      <pubDate>Fri, 05 Aug 2011 10:41:55 +0000</pubDate>
      
      <guid>https://piware.de/2011/08/inn-radtour/</guid>
      <description>Wir sind wieder da, und diesmal sogar völlig ohne menschliche oder radtechnische Schäden! Im letzten Jahr ging unsere Radtour an der Donau entlang von Passau nach Wien, was eher gemütlich war. Diesmal hat es uns an den Inn verschlagen, wo wir die Kultur vom letzten Jahr eingetauscht haben gegen das Hochkeuchen und Runterrasen eines alpin geprägten Berg-Wegprofils.
Das war unsere erste Radtour mit &amp;ldquo;richtigen&amp;rdquo; Bergen, wo man auch schon mal 200 Höhenmeter in der Stunde hoch und wieder runter schafft.</description>
    </item>
    
    <item>
      <title>Debian/Ubuntu packages for PostgreSQL 9.1 Beta 2</title>
      <link>https://piware.de/2011/06/debianubuntu-packages-for-postgresql-9-1-beta-2/</link>
      <pubDate>Tue, 14 Jun 2011 08:29:53 +0000</pubDate>
      
      <guid>https://piware.de/2011/06/debianubuntu-packages-for-postgresql-9-1-beta-2/</guid>
      <description>Hot on the heels of the Announcement of the second 9.1 Beta release there are now packages for it in Debian experimental and backports for Ubuntu 10.04 LTS, 10.10. and 11.04 in my PostgreSQL backports for stable Ubuntu releases PPA.
Warning for upgrades from Beta 1: The on-disk database format changed since Beta-1. So if you already have the beta-1 packages installed, you need to pg_dumpall your 9.1 clusters (if you still need them), and pg_dropcluster all 9.</description>
    </item>
    
    <item>
      <title>Packages for PostgreSQL 9.1 Beta 1 now available</title>
      <link>https://piware.de/2011/05/packages-for-postgresql-9-1-beta-1-now-available/</link>
      <pubDate>Wed, 11 May 2011 10:51:48 +0000</pubDate>
      
      <guid>https://piware.de/2011/05/packages-for-postgresql-9-1-beta-1-now-available/</guid>
      <description>Two weeks ago, PostgreSQL announced the first beta version of the new major 9.1 version, with a lot of anticipated new features like synchronous replication or better support for multilingual databases. Please see the release announcement for details.
Due to my recent moving and the Ubuntu Developer Summit it took me a bit to package them for Debian and Ubuntu, but here they are at last. I uploaded postgresql-9.1 to Debian experimental; currently they are sitting in the NEW queue, but I&amp;#8217;m sure our restless Debian archive admins will get to it in a few days.</description>
    </item>
    
    <item>
      <title>Top ideas on Ubuntu Brainstorm (March 2011)</title>
      <link>https://piware.de/2011/04/top-ideas-on-ubuntu-brainstorm-march-2011/</link>
      <pubDate>Thu, 21 Apr 2011 10:52:35 +0000</pubDate>
      
      <guid>https://piware.de/2011/04/top-ideas-on-ubuntu-brainstorm-march-2011/</guid>
      <description>Update at 13:06 UTC: Corrected NetworkManager description, thanks Mathieu for pointing out.
A few months ago, Matt Zimmerman kicked offa new tradition of a quarterly review of the most popular Ubuntu Brainstorm ideas. He did the December review, now it was my turn to coordinate the March review.
7zip desktop support (#26504) The 7zip compression format becomes increasingly more popular these days; Ubuntu releases up to 10.10 did not support it on the desktop support as well as older formats like zip or bzip2.</description>
    </item>
    
    <item>
      <title>Improved PyGI documentation</title>
      <link>https://piware.de/2011/04/improved-pygi-documentation/</link>
      <pubDate>Tue, 12 Apr 2011 18:16:26 +0000</pubDate>
      
      <guid>https://piware.de/2011/04/improved-pygi-documentation/</guid>
      <description>As a followup action to my recent Talk about PyGI I now re-used my notes to provide some real wiki documentation.
It would be great if you could add package name info for Fedora/SUSE/etc., and perhaps add more example links for porting different kinds of software! Please also let me know if you have suggestions how to improve the structure of the page.</description>
    </item>
    
    <item>
      <title>PyGTK is dead, long live PyGI! – App Developer Week Talk</title>
      <link>https://piware.de/2011/04/pygtk-is-dead-long-live-pygi-app-developer-week-talk/</link>
      <pubDate>Fri, 08 Apr 2011 14:08:15 +0000</pubDate>
      
      <guid>https://piware.de/2011/04/pygtk-is-dead-long-live-pygi-app-developer-week-talk/</guid>
      <description>On next Monday this cycle&amp;#8217;s Ubuntu Application Developer Week classes will start.
The topic that kept me busy most in this cycle was Python gobject-introspection, and porting pygtk2 apps to PyGI (see my initial steps and my report from the PyGI hackfest.)
To spread the love, there will be two talks about this next week: On Monday 17:00 UTC the very Tomeu Vizoso himself will explain what gobject-introspection (&amp;#8220;GI&amp;#8221;) is, why we need it, and how library developers use it to ship a good and useful GI binding (&amp;#8220;typelib&amp;#8221;) for application developers.</description>
    </item>
    
    <item>
      <title>New Apport feature: custom bug duplicate identification</title>
      <link>https://piware.de/2011/03/new-apport-feature-custom-bug-duplicate-identification/</link>
      <pubDate>Sat, 19 Mar 2011 15:23:54 +0000</pubDate>
      
      <guid>https://piware.de/2011/03/new-apport-feature-custom-bug-duplicate-identification/</guid>
      <description>Apport has provided built-in support for automatically identifying and marking duplicate bug reports for normal signal as well as Python crashes. However, we have more kinds of bug reports submitted through Apport which could benefit from automatic duplication: X.org GPU freezes, package installation failures, kernel oopses, or gcc internal compiler errors, i. e. pretty much everything that gets reported automatically these days.
The latest Apport 1.20 (which also just hit current Ubuntu Natty) now allows package hooks to set a special field DuplicateSignature, which abstracts the concept for other kinds of bug reports where Apport doesn&amp;#8217;t do automatic duplication.</description>
    </item>
    
    <item>
      <title>Na zdraví PyGI!</title>
      <link>https://piware.de/2011/01/na-zdravi-pygi/</link>
      <pubDate>Mon, 24 Jan 2011 10:44:20 +0000</pubDate>
      
      <guid>https://piware.de/2011/01/na-zdravi-pygi/</guid>
      <description>(Update: Link to Tomeu&amp;#8217;s blog post, repost for planet.gnome.org)
Last week I was in Prague to attend the GNOME/Python 2011 Hackfest for gobject-introspection, to which Tomeu Vizoso kindly invited me after I started working with PyGI some months ago. It happened at a place called brmlab which was quite the right environment for a bunch of 9 hackers: Some comfy couches and chairs, soldering irons, lots of old TV tubes, chips, and other electronics, a big Pirate flag, really good Wifi, plenty of Club Mate and Coke supplies, and not putting unnecessary effort into mundane things like wallpapers.</description>
    </item>
    
    <item>
      <title>New tool to check support status of dependencies</title>
      <link>https://piware.de/2011/01/new-tool-to-check-support-status-of-dependencies/</link>
      <pubDate>Fri, 14 Jan 2011 01:33:12 +0000</pubDate>
      
      <guid>https://piware.de/2011/01/new-tool-to-check-support-status-of-dependencies/</guid>
      <description>A common source of unnoticed depwaits or uninstallability are main packages which introduce new build or binary dependencies from universe. These either require fixing, or filing a main inclusion report.
To help with this, I added a new check-mir script into ubuntu-dev-tools version 0.110, which walks through all build and binary dependencies, checks if they are in main/restricted, also considers alternative dependencies, and create a report with a few hints.</description>
    </item>
    
    <item>
      <title>Creating an HTTPS server in Python</title>
      <link>https://piware.de/2011/01/creating-an-https-server-in-python/</link>
      <pubDate>Tue, 04 Jan 2011 15:57:16 +0000</pubDate>
      
      <guid>https://piware.de/2011/01/creating-an-https-server-in-python/</guid>
      <description>For a test suite I need to create a local SSL-enabled HTTPS server in my Python project. I googled around and found various recipes using pyOpenSSL, but all of those are quite complicated, and I didn&amp;rsquo;t even get the referenced one to work.
Also, Python has shipped its own built-in SSL module for quite a while. After reading some docs and playing around, I eventually got it to work with a remarkably simple piece of code using the builtin ssl module:</description>
    </item>
    
    <item>
      <title>GTK 3.0/GIR application porting: Successes and problems</title>
      <link>https://piware.de/2010/11/gtk-3-0gir-application-porting-successes-and-problems/</link>
      <pubDate>Fri, 19 Nov 2010 11:27:25 +0000</pubDate>
      
      <guid>https://piware.de/2010/11/gtk-3-0gir-application-porting-successes-and-problems/</guid>
      <description>GNOME 3.0 and Ubuntu Natty are currently undergoing a major architectural shift from GTK 2.0 to 3.0. Part of this is that the previous set of manually maintained language bindings, such as PyGTK, are being deprecated in favor of GObject Introspection, a really cool technology!
For us this means that we have to port all our PyGTK applications from PyGTK 2 to gobject-introspection and GTK 3.0 at the same time. I started with that for my own projects (Apport and Jockey) a few days ago, and along the way encountered a number of problems.</description>
    </item>
    
    <item>
      <title>Ubuntu Natty: Where did my changelogs go?</title>
      <link>https://piware.de/2010/11/ubuntu-natty-where-did-my-changelogs-go/</link>
      <pubDate>Tue, 09 Nov 2010 18:00:14 +0000</pubDate>
      
      <guid>https://piware.de/2010/11/ubuntu-natty-where-did-my-changelogs-go/</guid>
      <description>Since last Tuesday, packages built in natty don&amp;#8217;t come with a Debian changelog included any more. Due to the continuous demand for downsizing both our installation media, as well as the install footprint, we looked for packages which we should eliminate (duplicate libraries, unnecessary runtimes like our current effort to eliminate perl (-modules, not -base), but also for stuff that users generally don&amp;#8217;t need and won&amp;#8217;t miss. IMO package changelogs very much fall into the latter category, so they were very high on the &amp;#8220;first against the wall&amp;#8221; list.</description>
    </item>
    
    <item>
      <title>PostgreSQL 9.0 final released</title>
      <link>https://piware.de/2010/09/postgresql-9-0-final-released/</link>
      <pubDate>Mon, 20 Sep 2010 15:37:20 +0000</pubDate>
      
      <guid>https://piware.de/2010/09/postgresql-9-0-final-released/</guid>
      <description>After 20 days of final polishing and maturing since the release candidate, the PostgreSQL team released the final 9.0 version today.
Hot off the press, I uploaded postgresql-9.0 final into Debian unstable; they will not go into Debian Squeeze, because Squeeze is frozen and it will take a long time to port all the packaged server side extensions to 9.0.
If you are on Ubuntu 10.04 LTS or Ubuntu 10.10, you can add my PostgreSQL backports for stable Ubuntu releases PPA, which will carry 9.</description>
    </item>
    
    <item>
      <title>Simple udisks based automount daemon</title>
      <link>https://piware.de/2010/09/simple-udisks-based-automount-daemon/</link>
      <pubDate>Fri, 17 Sep 2010 16:47:24 +0000</pubDate>
      
      <guid>https://piware.de/2010/09/simple-udisks-based-automount-daemon/</guid>
      <description>For an embedded/thin client project without GNOME, KDE, or even full XFCE I needed a small daemon to automount USB sticks. Using the full gvfs/gdu/nautilus or Thunar stack is too heavyweight for my purposes, but a simple udev rule just doesn&amp;#8217;t cut it &amp;#8212; I need to mount these USB sticks for a particular user (permissions), and also want to do an action like pop up a window with the contents.</description>
    </item>
    
    <item>
      <title>What I do</title>
      <link>https://piware.de/2010/09/what-i-do/</link>
      <pubDate>Tue, 14 Sep 2010 07:08:49 +0000</pubDate>
      
      <guid>https://piware.de/2010/09/what-i-do/</guid>
      <description>It&amp;#8217;s been a decade ago when I did my first steps with contributing to Free Software, about seven years when I joined Debian, and about 6 with Canonical and Ubuntu. Time for some reflection what I have done over these years!
Distribution Packaging and Maintenance My first sponsored Debian upload ever was cracklib2, which seriously needed some love and was looking for a new maintainer. So in that upload I managed to close all outstanding bugs.</description>
    </item>
    
    <item>
      <title>Zurück von der Donauradtour</title>
      <link>https://piware.de/2010/09/zuruck-von-der-donauradtour/</link>
      <pubDate>Sun, 12 Sep 2010 08:15:17 +0000</pubDate>
      
      <guid>https://piware.de/2010/09/zuruck-von-der-donauradtour/</guid>
      <description>Dresden hat Netti und mich wieder! Gestern hat der IC uns und unsere Fahrräder komfortabel wieder von Wien nach Dresden gebracht, nach nur etwas mehr als einer Urlaubswoche.
Wir sind am Freitag den 3. September in Passau gestartet, und dann bis Mittwoch entlang der Donau geradelt. Die Nächte haben wir meistens im Zelt verbracht; der schönste Campingplatz war in Sommerau, quasi bei einer Familie im riesigen Garten:
Am Mittwoch Mittag sind wir nach 340 Fahrradkilometern dann in der Stadt der k.</description>
    </item>
    
    <item>
      <title>PostgreSQL 9.0 RC1 available for testing</title>
      <link>https://piware.de/2010/09/postgresql-9-0-rc1-available-for-testing/</link>
      <pubDate>Wed, 01 Sep 2010 10:41:40 +0000</pubDate>
      
      <guid>https://piware.de/2010/09/postgresql-9-0-rc1-available-for-testing/</guid>
      <description>PostgreSQL 9.0 with a whole lot of new features and improvements is nearing completion. The first release candidate was just announced.
As with the beta versions, I uploaded RC1 to Debian experimental again. If you want to test/use them on Ubuntu 10.04 (Lucid Lynx), you can get packages from my &amp;#8220;PostgreSQL backports for stable Ubuntu releases&amp;#8221; PPA. Please let me know if you need them for other releases.
Just for the records, both Debian 6.</description>
    </item>
    
    <item>
      <title>Klettersteig, Level 2</title>
      <link>https://piware.de/2010/07/klettersteig-level-2/</link>
      <pubDate>Mon, 19 Jul 2010 13:55:24 +0000</pubDate>
      
      <guid>https://piware.de/2010/07/klettersteig-level-2/</guid>
      <description>Vor etwa einem Jahr war ich auf meiner ersten Klettersteigtour auf dem Innsbrucker Klettersteig, was mich damals schon recht beeindruckt hat. Dieses Jahr haben wir, d. h. mein Vater, mein Schwager, und ich, die Schwierigkeit um ein oder zwei Stufen erhöht, und sind letzten Samstag auf den Elferkofel geklettert.
Die Tour begann an der Seilbahn-Bergstation in Neustift, wo wir zunächst ein mal eine Handvoll Paraglider-Fans beim konzentrierten Entfitzen und Sortieren der Schnüre und Planen beobachteten.</description>
    </item>
    
    <item>
      <title>Apport crash processing now enabled for Maverick</title>
      <link>https://piware.de/2010/07/apport-crash-processing-now-enabled-for-maverick/</link>
      <pubDate>Mon, 05 Jul 2010 13:46:06 +0000</pubDate>
      
      <guid>https://piware.de/2010/07/apport-crash-processing-now-enabled-for-maverick/</guid>
      <description>The Debian import freeze is settled, the first rush of major changes went into Maverick, and the dust now has settled a bit. Thus it&amp;#8217;s time to turn back some attention to crashes and quality in general.
This morning I created maverick chroots for the [Apport retracers][1], and they are currently processing the backlog. I also uploaded a new Apport package which now enables crash reporting by default again.
Happy segfaulting!</description>
    </item>
    
    <item>
      <title>gudev Vala bindings</title>
      <link>https://piware.de/2010/06/gudev-vala-bindings/</link>
      <pubDate>Sat, 12 Jun 2010 22:53:32 +0000</pubDate>
      
      <guid>https://piware.de/2010/06/gudev-vala-bindings/</guid>
      <description>I just learned about vapigen to build a Vala .vapi interface from gobject introspection. Unfortunately it seems that through the way of g-ir-scanner some information gets lost and gir cannot transmit information such as the semantics of arrays (null-terminated or with length, etc.). I played with a &amp;#8220;metadata&amp;#8221; file for an hour (as described upstream), but it seems to be ignored entirely.
So for now I committed a manually adjusted vapi for gudev.</description>
    </item>
    
    <item>
      <title>Celebrating the 1000th postgresql-common commit</title>
      <link>https://piware.de/2010/05/celebrating-the-1000th-postgresql-common-commit/</link>
      <pubDate>Mon, 03 May 2010 15:58:28 +0000</pubDate>
      
      <guid>https://piware.de/2010/05/celebrating-the-1000th-postgresql-common-commit/</guid>
      <description>I just did the 1000th commit of postgresql-common, the Debian/Ubuntu PostgreSQL management utilities. Wow, what started as a small hack in December 2004 to be able to install several major PostgreSQL versions in parallel has turned out to be a &amp;gt; 600 kB project providing a comprehensive tool set for uniformly setting up, upgrading, and maintaining PostgreSQL database instances from version 7.4 up to the just announced 9.0 beta-1, with a comprehensive test suite that I&amp;#8217;m really proud of (it tests just about every aspect, option, and corner case of the installation, integration, upgrade, locale support, and error handling, and takes about half an hour on my system).</description>
    </item>
    
    <item>
      <title>Viva Bavaria!</title>
      <link>https://piware.de/2010/04/viva-bavaria/</link>
      <pubDate>Mon, 26 Apr 2010 19:08:36 +0000</pubDate>
      
      <guid>https://piware.de/2010/04/viva-bavaria/</guid>
      <description>&amp;#8220;Grüß Gott!&amp;#8221; zusammen aus dem Land südlich des Weißwurstäquators! Auch wenn ich selbige Würste bisher noch nicht verkosten konnte, steht dies ganz oben auf dem Programm!
Ich bin am Samstag gut in München angekommen, wo mich Netti gleich am Hauptbahnhof abgeholt hat. Da wir nun schon mal im Zentrum waren, haben wir die Zeit auch gleich für einen Spaziergang über den Viktualienmarkt und dann für eine Stunde Stadtrundfahrt genutzt, um schon mal einen Überblick zu bekommen.</description>
    </item>
    
    <item>
      <title>Auf in ein neues Jahrzehnt</title>
      <link>https://piware.de/2010/04/auf-in-ein-neues-jahrzehnt/</link>
      <pubDate>Thu, 15 Apr 2010 10:30:41 +0000</pubDate>
      
      <guid>https://piware.de/2010/04/auf-in-ein-neues-jahrzehnt/</guid>
      <description>Es ist mal wieder diese Zeit im Jahr &amp;#8211; und diesmal ist es gleich die Grosse Drei-Null, die mich gestern heimsuchte!
Netti hat mir einen gaaanz tollen und leckeren Schokokuchen gebacken, mit weissen Schokoladenplätzchen mit einem Kinderfoto von mir drauf. Über die philosophischen Konsequenzen, seine eigene Jugend aufzuessen, muss ich mir noch tiefere Gedanken machen, zunächst hab ich mir es erstmal schmecken lassen.

Der gestrige Tag ist auch eine gute Gelegenheit für einen Rückblick.</description>
    </item>
    
    <item>
      <title>PostgreSQL bug fix releases up for testing in Ubuntu</title>
      <link>https://piware.de/2010/04/postgresql-bug-fix-releases-up-for-testing-in-ubuntu/</link>
      <pubDate>Fri, 09 Apr 2010 08:08:29 +0000</pubDate>
      
      <guid>https://piware.de/2010/04/postgresql-bug-fix-releases-up-for-testing-in-ubuntu/</guid>
      <description>PostgreSQL did microrelease updates three weeks ago: 8.4.3, 8.3.10, and 8.1.20 are the ones relevant for Debian/Ubuntu. There haven&amp;#8217;t been reports about regressions in Debian or the upstream lists so far, so it&amp;#8217;s time to push these into stable releases.
The new releases are in Lucid Beta-2, and hardy/jaunty/karmic-proposed. If you are running PostgreSQL, please upgrade to the proposed versions and give feedback to LP #557408.
Updates for Debian Lenny are prepared as well, and await release team ack.</description>
    </item>
    
    <item>
      <title>ubuntu-bug audio</title>
      <link>https://piware.de/2010/02/ubuntu-bug-audio/</link>
      <pubDate>Mon, 08 Feb 2010 10:58:15 +0000</pubDate>
      
      <guid>https://piware.de/2010/02/ubuntu-bug-audio/</guid>
      <description>Thanks to the work of David Henningsson, we now have a proper Apport symptom for audio bugs. It just got updated again to set default bug titles, which include the card/codec name and the problem, so that Launchpad&amp;#8217;s suggested duplicates should work much more reliably.
So from now on you are strongly encouraged to report sound problems with
$ ubuntu-bug audio instead of trying to guess the package right.</description>
    </item>
    
    <item>
      <title>GNOME commit powers</title>
      <link>https://piware.de/2010/01/gnome-commit-powers/</link>
      <pubDate>Tue, 19 Jan 2010 23:29:39 +0000</pubDate>
      
      <guid>https://piware.de/2010/01/gnome-commit-powers/</guid>
      <description>I finally listened to Sebastien Bacher and applied for GNOME commit rights yesterday, after hassling Seb once more about committing an approved patch for me. Surprisingly, it only took some 4 hours until my application was approved and my account created, wow! Apparently 71 patches are enough. 🙂
With my new powers, I fixed a crash in gdm, and applied two stragglers into gvfs&amp;#8217; build system today.
More to come!</description>
    </item>
    
    <item>
      <title>lpshell – convenient launchpadlib script</title>
      <link>https://piware.de/2010/01/lpshell-convenient-launchpadlib-script/</link>
      <pubDate>Tue, 12 Jan 2010 21:48:01 +0000</pubDate>
      
      <guid>https://piware.de/2010/01/lpshell-convenient-launchpadlib-script/</guid>
      <description>These days I often use launchpadlib in my projects for scripting access/modifications in Launchpad. While launchpadlib has quite a good API documentation, this only covers the method calls, not the attributes or collections. So it often takes some poking and trying until you figure out how to access/change things.
I found myself typing the same things over and over, so I finally wrote a little script called lpshell:
 #!/usr/bin/python -i import code, os, sys from launchpadlib.</description>
    </item>
    
    <item>
      <title>Gesundes Neues</title>
      <link>https://piware.de/2010/01/gesundes-neues/</link>
      <pubDate>Fri, 01 Jan 2010 12:15:10 +0000</pubDate>
      
      <guid>https://piware.de/2010/01/gesundes-neues/</guid>
      <description>Ich wünsche allen ein gutes, gesundes und erfolgreiches Jahr 2010!
Wir haben gestern mit ein paar Freunden gefeiert. Das neue Jahr haben wir gleich angemessen mit Wunderkerzen begrüßt:

(Klick auf Bild für größeres Format)</description>
    </item>
    
    <item>
      <title>Easier offline bug reporting with Apport</title>
      <link>https://piware.de/2009/12/easier-offline-bug-reporting-with-apport/</link>
      <pubDate>Wed, 23 Dec 2009 12:16:57 +0000</pubDate>
      
      <guid>https://piware.de/2009/12/easier-offline-bug-reporting-with-apport/</guid>
      <description>The days before Chistmas are a wonderfully quiet time to catch up on old work which otherwise just drowns in the daily noise. I got a lot of Apport cleanups and improvements done.
One particular highlight of 1.11 is that it is now easy and consistent to collect information for a bug report on one place/at one time and save it into a file
$ apport-bug --save /tmp/argh.apport udev  &amp;#8230; and report that later on with</description>
    </item>
    
    <item>
      <title>New PostgreSQL releases need testing</title>
      <link>https://piware.de/2009/12/new-postgresql-releases-need-testing/</link>
      <pubDate>Wed, 16 Dec 2009 19:16:40 +0000</pubDate>
      
      <guid>https://piware.de/2009/12/new-postgresql-releases-need-testing/</guid>
      <description>Yesterday PostgreSQL released new security/bug fix microreleases 8.4.2, 8.3.9, and 8.1.19, which fix two security issues and a whole bunch of bugs.
Updates for all supported Ubuntu releases are built in the ubuntu-security-proposed PPA. They pass the upstream and postgresql-common test suites, but more testing is heavily appreciated! Please give feedback in bug LP#496923.
Thanks!</description>
    </item>
    
    <item>
      <title>Nicht mehr aufzuhalten: Weihnachten</title>
      <link>https://piware.de/2009/11/nicht-mehr-aufzuhalten-weihnachten/</link>
      <pubDate>Mon, 30 Nov 2009 08:47:28 +0000</pubDate>
      
      <guid>https://piware.de/2009/11/nicht-mehr-aufzuhalten-weihnachten/</guid>
      <description>Am Samstag waren wir wie schon viele Jahre zuvor bei Anne zum traditionellen Plätzchen/Pfefferkuchenhaus backen. Es ist wieder einiges zusammengekommen, und leeecker geworden!
Netti hat das halbe Wochenende damit verbracht, einen Adventskalender für mich zu basteln. Kann es kaum noch erwarten, morgen die erste Rolle aufzumachen!</description>
    </item>
    
    <item>
      <title>“hello dbus” in vala</title>
      <link>https://piware.de/2009/11/hello-dbus-in-vala/</link>
      <pubDate>Fri, 27 Nov 2009 23:06:03 +0000</pubDate>
      
      <guid>https://piware.de/2009/11/hello-dbus-in-vala/</guid>
      <description>On the long flight back from UDS-Lucid I read the Vala tutorial on my ebook, and did some of the exercises. I was curious about Vala because it combines the speed and memory efficiency of C in a sane C#-like language with proper memory management, exceptions, and without the silly &amp;#8220;close to the metal&amp;#8221; faff that is usually required in C.
And indeed I wasn&amp;#8217;t disappointed. It&amp;#8217;s not as convenient as Python, but really not far from it, and it&amp;#8217;s faaaast!</description>
    </item>
    
    <item>
      <title>sudo dpkg -P hal</title>
      <link>https://piware.de/2009/11/sudo-dpkg-p-hal/</link>
      <pubDate>Fri, 27 Nov 2009 08:53:55 +0000</pubDate>
      
      <guid>https://piware.de/2009/11/sudo-dpkg-p-hal/</guid>
      <description>The day has come!
Yesterday I dropped the superfluous hal dependency from gparted, today I uploaded gdm to stop using hal for getting the keyboard layout and use libxklavier instead.
I also applied Julian Cristau&amp;#8217;s udevified X.org branch to our xorg-edgers packages into my halsectomy PPA, created some udev rules for udev-based X.org input detection (1, 2), and off we go: that was the last hal reverse dependency. My system now fully boots and works without hal.</description>
    </item>
    
    <item>
      <title>Nicer Launchpad upstream releases with lp-project-upload</title>
      <link>https://piware.de/2009/11/nicer-launchpad-upstream-releases-with-lp-project-upload/</link>
      <pubDate>Fri, 20 Nov 2009 23:05:23 +0000</pubDate>
      
      <guid>https://piware.de/2009/11/nicer-launchpad-upstream-releases-with-lp-project-upload/</guid>
      <description>A while ago I introduced a script lp-project-upload to automate tarball release uploads to Launchpad.
Many people asked for further features, two of which I added now: First, it automatically invokes gpg to create a tarball signature (unless one is already present), and second it invokes an editor to specify changelog and release notes (just keep the files empty if you don&amp;#8217;t need them).
Uploaded to lucid&amp;#8217;s ubuntu-dev-tools, enjoy!</description>
    </item>
    
    <item>
      <title>You know that you are in the U.S. …</title>
      <link>https://piware.de/2009/11/you-know-that-you-are-in-the-u-s/</link>
      <pubDate>Sun, 15 Nov 2009 03:20:51 +0000</pubDate>
      
      <guid>https://piware.de/2009/11/you-know-that-you-are-in-the-u-s/</guid>
      <description>when you go to dinner in a car^Wtank^Wbattleship^Wrazy something like this:
I savely arrived in our hotel in Dallas, Texas this afternoon, after a rather uneventful 14 hour trip from Dresden via Frankfurt. On the way I emptied my laptop battery with some small hacking and catching up on bug report email, and did a lot of reading. I also tried to watch Harry Potter 6, but the headphones they give you were so hideous that I hardly understood anything, so I gave up after some ten minutes.</description>
    </item>
    
    <item>
      <title>My desktop backup solution</title>
      <link>https://piware.de/2009/11/my-desktop-backup-solution/</link>
      <pubDate>Sun, 08 Nov 2009 18:55:36 +0000</pubDate>
      
      <guid>https://piware.de/2009/11/my-desktop-backup-solution/</guid>
      <description>Requirements Through the last years I have used various own hacks for backing up my desktop(s). There are dozens of packaged backup solutions in Debian/Ubuntu already, but none of them did quite fit my requirements:
 KISS! no fancy web UI, storage formats, or millions of plugins and configuration files; backups should just be a normally accessible directory Supports standard backup strategy: daily backups for last week, weekly backups for last month, permanent monthly backups.</description>
    </item>
    
    <item>
      <title>Photo Quiz</title>
      <link>https://piware.de/2009/11/photo-quiz/</link>
      <pubDate>Mon, 02 Nov 2009 15:15:22 +0000</pubDate>
      
      <guid>https://piware.de/2009/11/photo-quiz/</guid>
      <description>Vor einer Weile habe ich ein wirklich interessantes und schönes Motiv gefunden und fotografiert. Errät jemand, was das ist?
A while ago I found a really interesting and beautiful motif and shot a photo of it. Can anyone guess what it is?
Update:
Natürlich habt Ihr es rausbekommen, es ist gefrorener Spinat in einer Schachtel. Ich habe das nur durch Zufall entdeckt, und fand die Eiskristalle einfach wunderschön.
Of course you got it right; it&amp;#8217;s frozen spinach in a box.</description>
    </item>
    
    <item>
      <title>Hello Ween!</title>
      <link>https://piware.de/2009/11/hello-ween/</link>
      <pubDate>Sun, 01 Nov 2009 19:43:43 +0000</pubDate>
      
      <guid>https://piware.de/2009/11/hello-ween/</guid>
      <description>Ein gruselig schönes Halloween an Euch alle! Gestern haben Netti und ich wieder gebastelt:

Wir hatten mit einigen Freunden eine sehr schöne Feier. Danke nochmal an Sonni und Knäcke!
English:
Happy Halloween everyone! Netti and I made some nice pumpkin yesterday, and had a great party with some friends.</description>
    </item>
    
    <item>
      <title>Die nächste Stufe…</title>
      <link>https://piware.de/2009/09/die-nachste-stufe/</link>
      <pubDate>Sun, 27 Sep 2009 09:29:18 +0000</pubDate>
      
      <guid>https://piware.de/2009/09/die-nachste-stufe/</guid>
      <description>&amp;#8230; auf der Taekwondo-Leiter ist erreicht!
Gestern fand hier in Dresden mal wieder ein Lehrgang mit unserem Großmeister Kim Chul Hwan. Er hat uns ab um neun ordentlich auf Trab gehalten. Ich hab mich gestern auch mal wieder einer Gürtelprüfung gestellt, die ich auch bestanden habe. Formenlauf, Einschritt- und Freikampf gingen glatt über die Bühne, ich hatte nur etwas Bammel vor dem Bruchtest (Yop-Chagi), da ich den vorher noch nicht geübt hatte.</description>
    </item>
    
    <item>
      <title>PostgreSQL security/bug fix update, please test</title>
      <link>https://piware.de/2009/09/postgresql-securitybug-fix-update-please-test/</link>
      <pubDate>Thu, 17 Sep 2009 22:39:33 +0000</pubDate>
      
      <guid>https://piware.de/2009/09/postgresql-securitybug-fix-update-please-test/</guid>
      <description>PostgreSQL recently published new point releases which fix the usual range of important bugs (data loss/wrong results, etc.) and additionally fix another case of insecure &amp;#8220;security definer&amp;#8221; functions (the analogon to setuid programs in file system space for SQL functions) (CVE-2007-6600). Please see the complete changes for 8.1.18 (Ubuntu 6.06 LTS), 8.3.8 (Ubuntu 8.04 LTS, 8.10, and 9.04), and 8.4.1 (Ubuntu 9.10).
8.4.1 is already in Ubuntu 9.10 and in my PostgreSQL Backports PPA for Ubuntu 8.</description>
    </item>
    
    <item>
      <title>Karmic: guest session is back</title>
      <link>https://piware.de/2009/09/karmic-guest-session-is-back/</link>
      <pubDate>Mon, 07 Sep 2009 19:07:49 +0000</pubDate>
      
      <guid>https://piware.de/2009/09/karmic-guest-session-is-back/</guid>
      <description>It has been broken for two months, since we upgraded to the &amp;#8220;new&amp;#8221; (not quite any more) gdm in Karmic: But I finally got around to re-doing the gdm patch for supporting a guest session for 2.27. I use it myself a lot for testing stuff with a clean user profile, so I can finally delete my herd of test users again.
One known drawback is that the guest session is not currently restricted by AppArmor rules yet.</description>
    </item>
    
    <item>
      <title>New Blog address / Neue Blog-Addresse</title>
      <link>https://piware.de/2009/09/new-blog-address-neue-blog-addresse/</link>
      <pubDate>Mon, 07 Sep 2009 08:49:17 +0000</pubDate>
      
      <guid>https://piware.de/2009/09/new-blog-address-neue-blog-addresse/</guid>
      <description>I moved my blog from its old wordpress.com home to my own server, replacing my ancient home page.
&amp;#8212;
Mein Blog ist von seiner alten wordpress.com-Heimat auf meinen eigenen Server umgezogen, und hat damit auch gleich meine Uralt-Homepage ersetzt.</description>
    </item>
    
    <item>
      <title>Documents</title>
      <link>https://piware.de/documents/</link>
      <pubDate>Mon, 07 Sep 2009 08:27:34 +0000</pubDate>
      
      <guid>https://piware.de/documents/</guid>
      <description>Hier stelle ich alle Dokumente zur Verfügung, die andere Leute interessieren könnten. Für Hinweise auf Fehler, Anregungen, Kritik und auch Wünsche bin ich jederzeit dankbar.
Softwaretechnik  Design Patterns &amp;#8211; Oft auftretende und allgemein bewährte Entwurfsmuster der objektorientierten Programmierung  LaTeX  Erste Schritte mit LaTeX &amp;#8211; beschreibt die Grundstruktur von Dokumenten, das LaTeX-Konzept und die wichtigsten Befehle. Enthält auch Referenzen auf weiterführende Literatur. Aus didaktischen Gründen ist auch der LaTeX-Quellcode verfügbar.</description>
    </item>
    
    <item>
      <title>Free software projects</title>
      <link>https://piware.de/foss/</link>
      <pubDate>Sun, 06 Sep 2009 22:18:18 +0000</pubDate>
      
      <guid>https://piware.de/foss/</guid>
      <description> My own projects/main developer  python-dbusmock: Mock D-Bus objects for creating integration tests umockdev: record/mock hardware devices for bug reports and regression tests Apport: create rich crash and bug information on Linux clients, and send them to bug trackers like Launchpad python-distutils-extra: Extensions and &amp;ldquo;automagic&amp;rdquo; wrapper for Python&amp;rsquo;s distutils class postgresql-common: Provide a multi-version/multi-instance management for the PostgreSQL RDBMS  Other projects I&amp;rsquo;m contributing to  cockpit: Administer Linux servers via a web browser (tech lead, full-time developer) udev/systemd: Maintaining keymaps, various bug fixes Debian: The universal operating system (developer) GNOME desktop (committer, foundation member, bug fixing and reporting) PyGObject: Use GObject based C libraries from Python through gobject-introspection udisks: occasional bug fixes upower: occasional bug fixes  </description>
    </item>
    
    <item>
      <title>Automated release tarball upload to Launchpad</title>
      <link>https://piware.de/2009/09/automated-release-tarball-upload-to-launchpad/</link>
      <pubDate>Sat, 05 Sep 2009 14:50:57 +0000</pubDate>
      
      <guid>https://piware.de/2009/09/automated-release-tarball-upload-to-launchpad/</guid>
      <description>I often do upstream releases of my upstream projects that I do on Launchpad, mostly for Apport and jockey. But doing this has been quite tedious until now: You have to go to the project page, pick the series (usually &amp;#8220;trunk&amp;#8221;), create a new release, create a new milestone along the way, then go to &amp;#8220;add download file&amp;#8221;, and upload your .tar.gz and .tar.gz.asc.
Because this is rather inconvenient, I don&amp;#8217;t do as many upstream releases as I should.</description>
    </item>
    
    <item>
      <title>Back from mini-vacation and climbing</title>
      <link>https://piware.de/2009/07/back-from-mini-vacation-and-climbing/</link>
      <pubDate>Tue, 28 Jul 2009 19:55:46 +0000</pubDate>
      
      <guid>https://piware.de/2009/07/back-from-mini-vacation-and-climbing/</guid>
      <description>Today I returned from a great mini-vacation (long weekend). My parents and I visited my sister, in-law, niece, and nephew in Bavaria. We don&amp;#8217;t see each other very often, it&amp;#8217;s always great for me to see my niece and nephew grow, and play with them.
The highlight of the vacation was on Sunday, when my father, my in-law, and me went to Insbruck, Austria, on a 5-hour fixed-rope route climbing tour.</description>
    </item>
    
    <item>
      <title>gvfs: Buh-bye, hal!</title>
      <link>https://piware.de/2009/07/gvfs-buh-bye-hal/</link>
      <pubDate>Fri, 03 Jul 2009 09:06:02 +0000</pubDate>
      
      <guid>https://piware.de/2009/07/gvfs-buh-bye-hal/</guid>
      <description>In the merciless vendetta for purging hal we now reached another major milestone: gvfs, GNOME&amp;#8217;s file system layer which handles USB storage as well as virtual file systems for libgphoto2 cameras, Bluetooth devices, audio CDs, or ftp/sftp/cifs mounts, is now fully ported to libgudev and doesn&amp;#8217;t need hal at all any more. These long nights of porting weren&amp;#8217;t in vain, after all \o/.
Now I just need to hassle David Zeuthen to apply the patches soon.</description>
    </item>
    
    <item>
      <title>Interrogation with Apport hooks / Qt developer needed</title>
      <link>https://piware.de/2009/06/interrogation-with-apport-hooks-qt-developer-needed/</link>
      <pubDate>Mon, 08 Jun 2009 14:04:01 +0000</pubDate>
      
      <guid>https://piware.de/2009/06/interrogation-with-apport-hooks-qt-developer-needed/</guid>
      <description>So far, Apport package hooks were limited to collecting data from the local system. However, a lot of debugging recipes and standard bug triage ping pong involves asking the reporter further questions which need reponses from a human. This can range from a very simple information message box &amp;#8220;Now, please plug in the camera which is not detected&amp;#8221; until a complex decision tree based on the symptoms the user sees.</description>
    </item>
    
    <item>
      <title>hal-sectomy continues</title>
      <link>https://piware.de/2009/06/hal-sectomy-continues/</link>
      <pubDate>Wed, 03 Jun 2009 11:00:03 +0000</pubDate>
      
      <guid>https://piware.de/2009/06/hal-sectomy-continues/</guid>
      <description>The migration away from hal continues. Yesterday I uploaded new udev-extras and hal packages which move the handling of local device access from hal to /lib/udev/rules.d/70-acl.rules. Note that this temporarily breaks device access to old cameras which don&amp;#8217;t speak the standard PTP protocol yet (and aren&amp;#8217;t mass-storage). Most devices should work fine, though, please let me know if something fails (ubuntu-bug udev-extras).
I started a discussion with upstream about how to migrate the libgphoto bits away from hal to udev rules.</description>
    </item>
    
    <item>
      <title>Easier testing for Apport bug patterns</title>
      <link>https://piware.de/2009/05/easier-testing-for-apport-bug-patterns/</link>
      <pubDate>Thu, 28 May 2009 07:55:08 +0000</pubDate>
      
      <guid>https://piware.de/2009/05/easier-testing-for-apport-bug-patterns/</guid>
      <description>This morning I added a test script to the Apport bug patterns.
This finally allows you to reliably test a new bug pattern before you actually
commit/push it. You can invoke it with either a .crash file, or a Launchpad bug
number:
`This morning I added a test script to the Apport bug patterns.
This finally allows you to reliably test a new bug pattern before you actually
commit/push it. You can invoke it with either a .</description>
    </item>
    
    <item>
      <title>DeviceKit update, future handling of Fn key maps</title>
      <link>https://piware.de/2009/05/devicekit-update-future-handling-of-fn-key-maps/</link>
      <pubDate>Fri, 08 May 2009 13:54:12 +0000</pubDate>
      
      <guid>https://piware.de/2009/05/devicekit-update-future-handling-of-fn-key-maps/</guid>
      <description>I recently started working on packaging pieces of the new DeviceKit world, which is gradually replacing hal. In particular, DeviceKit-disks and DeviceKit-power are in Karmic now, and gnome-disk-utility and a patches gvfs are in the ubuntu-desktop PPA.
A few days ago I wondered what the replacement of hal-setup-keymap would be. This is the bit that makes your laptop&amp;#8217;s magic Fn keys work, such as &amp;#8220;brightness up&amp;#8221;, &amp;#8220;next song&amp;#8221;, &amp;#8220;WWW browser&amp;#8221;. I became quite acquainted with this component in the last six months and committed a fair share of fixes to hal-info for those.</description>
    </item>
    
    <item>
      <title>PostgreSQL 8.4beta1 available for testing</title>
      <link>https://piware.de/2009/04/postgresql-84beta1-available-for-testing/</link>
      <pubDate>Sat, 18 Apr 2009 15:04:39 +0000</pubDate>
      
      <guid>https://piware.de/2009/04/postgresql-84beta1-available-for-testing/</guid>
      <description>Some days ago, the first public beta of PostgreSQL 8.4 was announced. I uploaded a CVS snapshot to Debian experimental two weeks ago, but it didn&amp;#8217;t make it out of NEW yet.
Packaging the actual 8.4 bits was actually pretty easy, just took me half a day to adapt the 8.3 packaging and eventually figuring out how to build the entire documentation from SGML sources with Debian/Ubuntu&amp;#8217;s broken docbook-utils.
I spent much more work work on supporting 8.</description>
    </item>
    
    <item>
      <title>Presentations of shell commands</title>
      <link>https://piware.de/2009/04/presentations-of-shell-commands/</link>
      <pubDate>Sun, 05 Apr 2009 02:28:56 +0000</pubDate>
      
      <guid>https://piware.de/2009/04/presentations-of-shell-commands/</guid>
      <description>Today I was sitting in the plane from Dresden to San Francisco, and worked on my DKMS demo for the Linux Foundation summit. DKMS is a command line tool for managing device driver packages.
I wondered how to present this. The commands and features I wanted to show are quite complex, and typing all of them during the presentation is too cumbersome. Besides, I&amp;#8217;m just a lousy typer when someone else is watching.</description>
    </item>
    
    <item>
      <title>On Jaunty bug fixing…</title>
      <link>https://piware.de/2009/03/on-jaunty-bug-fixing/</link>
      <pubDate>Tue, 31 Mar 2009 10:20:16 +0000</pubDate>
      
      <guid>https://piware.de/2009/03/on-jaunty-bug-fixing/</guid>
      <description>Yes! I just broke the &amp;#8220;200 bugs&amp;#8221; mark on the &amp;#8220;bugs fixed in Jaunty&amp;#8221; list.
/me goes to fix more&amp;#8230;</description>
    </item>
    
    <item>
      <title>Wanna touch DeviceKit?</title>
      <link>https://piware.de/2009/03/wanna-touch-devicekit/</link>
      <pubDate>Wed, 11 Mar 2009 07:54:37 +0000</pubDate>
      
      <guid>https://piware.de/2009/03/wanna-touch-devicekit/</guid>
      <description>Still remember the &amp;#8220;hal is dead, long live DeviceKit&amp;#8221; buzz? It&amp;#8217;s time to finally lay our hands on it.
DeviceKit and DeviceKit-power themselves are available for a while in Jaunty&amp;#8217;s universe, but installing them by themselves is pretty boring, of course.
Last Saturday I packaged the new gnome-power-manager 2.25.x which is now devkit-ified and doesn&amp;#8217;t use hal any more. It is now available in the ubuntu-desktop PPA. Please try it, break it, and complain over there 🙂</description>
    </item>
    
    <item>
      <title>eBook industry: Lest we never learn…</title>
      <link>https://piware.de/2009/03/lest-we-never-learn/</link>
      <pubDate>Wed, 11 Mar 2009 07:44:47 +0000</pubDate>
      
      <guid>https://piware.de/2009/03/lest-we-never-learn/</guid>
      <description>I was really looking forward to today.
Today, the Sony PRS-505 eBook reader finally gets sold in Germany. Now, I already have mine since January, but the more exciting fact is that libri.de also announced selling their ebooks in the open epub format standard.
When I bought my first eBook at libri.de in January, I unfortunately only discovered after the buy that you can only read it with the Mobipocket reader.</description>
    </item>
    
    <item>
      <title>The Stracciatella GNOME session</title>
      <link>https://piware.de/2009/02/the-stracciatella-gnome-session/</link>
      <pubDate>Mon, 23 Feb 2009 16:10:08 +0000</pubDate>
      
      <guid>https://piware.de/2009/02/the-stracciatella-gnome-session/</guid>
      <description>The next Ubuntu release (9.04, &amp;#8220;Jaunty Jackalope&amp;#8221;) will see the first set of changes introduced by Canonical&amp;#8217;s Desktop Experience Team: The much-discussed notify-osd notification system, and the indicator applet.
While we have worked, and will continue to work with upstreams to get those into official GNOME, this will take a while; those are design/usability experiments, and their full impact and consequences are still to be determined by a large user base, and GNOME rightfully applies their own scrutiny on new things to adopt.</description>
    </item>
    
    <item>
      <title>On IRC notifications</title>
      <link>https://piware.de/2009/01/38/</link>
      <pubDate>Mon, 05 Jan 2009 09:31:20 +0000</pubDate>
      
      <guid>https://piware.de/2009/01/38/</guid>
      <description>I just read Scott&amp;#8217;s post about IM notifications. I have used the libnotify plugin of my IRC client for about a year now, and really do like it in general, for similar reasons that Scott mentions: I notice if someone wants to talk to me, and usually the notifications give me enough context to decide whether or not I need to reply at all, or later, or right now.
However, I never actually felt the urge of clicking on those except to get rid of them when they cover an important part of my screen.</description>
    </item>
    
    <item>
      <title>PRS-505: Got my new toy!</title>
      <link>https://piware.de/2008/12/prs-505-got-my-new-toy/</link>
      <pubDate>Tue, 30 Dec 2008 15:18:54 +0000</pubDate>
      
      <guid>https://piware.de/2008/12/prs-505-got-my-new-toy/</guid>
      <description>Yay, I finally got my PRS-505 e-Book reader! I fed it with a couple of e-books from the Gutenberg project and its German affiliate, and I&amp;#8217;m very pleased with the display and reading quality. Now I can finally take something to read with me again on conference travels and other occasions when I don&amp;#8217;t want to have lots of luggage.
Now that I can actually try it, I found that my initial packaging of calibre was pretty incomplete, it didn&amp;#8217;t detect the reader at all.</description>
    </item>
    
    <item>
      <title>Intrepid vs. XP — 2:0</title>
      <link>https://piware.de/2008/12/intrepid-vs-xp-20/</link>
      <pubDate>Mon, 29 Dec 2008 16:59:25 +0000</pubDate>
      
      <guid>https://piware.de/2008/12/intrepid-vs-xp-20/</guid>
      <description>Oh the joys of Christmas presents&amp;#8230; I gave a shiny new 24&amp;#8243; widescreen TFT to my wife, to replace that shabby and flickering 15&amp;#8243; CRT that drove me mad after working on it for ten minutes. That entailed some other hardware upgrades: a new graphics card (the old GeForce FX 5200 did not even do 1600&amp;#215;1200, let alone the 1920&amp;#215;1200 that the monitor supports), and thus while I was at it, I plugged that into my AMD64 box and put that under her desk instead of the Celeron 1.</description>
    </item>
    
    <item>
      <title>Packaged e-book software &#34;calibre&#34;</title>
      <link>https://piware.de/2008/12/packaged-e-book-software-calibre/</link>
      <pubDate>Tue, 23 Dec 2008 16:09:17 +0000</pubDate>
      
      <guid>https://piware.de/2008/12/packaged-e-book-software-calibre/</guid>
      <description>I could not resist and ordered myself a Christmas present, a Sony PRS-505 e-Book reader (it&amp;#8217;s all Martin Pool&amp;#8217;s fault! 😛 )
To use that with your own content, you need a software to convert existing e-book, HTML, PDF, and other formats to the formats that the PRS505 can understand. So I stumbled over calibre, which seems to be an awesome and complete solution for managing e-books. Of course I immediately went to package it.</description>
    </item>
    
    <item>
      <title>Linux Plumbers Conference</title>
      <link>https://piware.de/2008/09/linux-plumbers-conference/</link>
      <pubDate>Thu, 25 Sep 2008 20:42:55 +0000</pubDate>
      
      <guid>https://piware.de/2008/09/linux-plumbers-conference/</guid>
      <description>I spent the last week in Portland, Oregon, at the Linux Plumbers Conference. Since several people asked, here is my travel report:
Tuesday This was not an official conference day yet, I just arrived early due to flights being cheaper.
I spent the entire day with the LinuxFoundation driver backports work group, with Ram Pai (IBM), Jon Masters (Red Hat), and Andreas Gruenberger (Novell). Novell&amp;#8217;s orginal member (Susanne Oberhauser) works on other projects now, so we gave a quick summary of the status quo, and the results from Austin to Andreas.</description>
    </item>
    
    <item>
      <title>New Jockey 0.5 Beta 1 release</title>
      <link>https://piware.de/2008/09/new-jockey-05-beta-1-release/</link>
      <pubDate>Thu, 25 Sep 2008 20:18:54 +0000</pubDate>
      
      <guid>https://piware.de/2008/09/new-jockey-05-beta-1-release/</guid>
      <description>I just released the first beta release of Jockey 0.5, which fixes a ton of bugs compared to the first Alpha from two weeks ago. Compared to 0.4, it grew quite a lot of new features:
 Split program into a privileged system D-BUS backend (access controlled by PolicyKit), and unprivileged frontend. This provides a cleaner design, gets rid of ugly distribution specific hacks and makes the program more portable. Add support for detecting printers.</description>
    </item>
    
    <item>
      <title>That edgy chroot can go … oops!</title>
      <link>https://piware.de/2008/07/that-edgy-chroot-can-go-oops/</link>
      <pubDate>Mon, 21 Jul 2008 16:27:58 +0000</pubDate>
      
      <guid>https://piware.de/2008/07/that-edgy-chroot-can-go-oops/</guid>
      <description>I&amp;#8217;m quite a heavy user of chroots, since I work with many different releases, and Debian, too. That usually means I have to clean them up at some point, too.
It happened at least twice now: I deleted an old chroot without unmounting all those bind mounts I have in them (/proc, /sys, /tmp, and most importantly, /home). Thus an rm -rf /chroots/edgy will remove my entire Home-partition, too! Fortunately I Control-C&amp;#8217;ed early enough the second time to not cause any real damage except for killing my X socket in /tmp.</description>
    </item>
    
    <item>
      <title>Argh dbus-python</title>
      <link>https://piware.de/2008/07/argh-dbus-python/</link>
      <pubDate>Thu, 10 Jul 2008 22:11:46 +0000</pubDate>
      
      <guid>https://piware.de/2008/07/argh-dbus-python/</guid>
      <description>I have banged my head around integrating PackageKit into Jockey for several days now, and it&amp;#8217;s driving me up the wall. While a standalone PackageKit client works very well, it completely breaks when I integrate the PackageKit client into my Jockey D-BUS backend.
At first I assumed I just made something wrong, so I tried a dozen different approaches, read the libpackagekit source, added a ton of debugging statements, but nothing helps, I never get back D-BUS signals from PackageKit while being in an inner gobject.</description>
    </item>
    
    <item>
      <title>Using PackageKit in Python</title>
      <link>https://piware.de/2008/07/calling-packagekit-from-python-programs/</link>
      <pubDate>Tue, 08 Jul 2008 14:10:35 +0000</pubDate>
      
      <guid>https://piware.de/2008/07/calling-packagekit-from-python-programs/</guid>
      <description>In order to provide a sensible upstream implementation for package query/install/remove methods in Jockey, I started playing with PackageKit and recently packaged and fixed the latest upstream version 0.2.2 work reasonably well on Intrepid.
Unfortunately there are no official Python bindings yet. The raw D-BUS interface is slightly inconvenient to use, since it is fully asynchronous. This seems to be pretty redundant to me, since D-BUS already provides asynchronous method calls (if you need them) and makes writing code painful in synchronous programs.</description>
    </item>
    
    <item>
      <title>Asteroids bot submitted, publishing source</title>
      <link>https://piware.de/2008/07/asteroids-bot-submitted-publishing-source/</link>
      <pubDate>Mon, 07 Jul 2008 11:10:45 +0000</pubDate>
      
      <guid>https://piware.de/2008/07/asteroids-bot-submitted-publishing-source/</guid>
      <description>A while ago I blogged about my participation in the c&amp;#8217;t programming contest to write a bot that plays against the 1979 Atari console.
Submission deadline was June 30th, and the results are trickling in now.
I am on rank 104, which I&amp;#8217;m more than satisfied with. Unsurprisingly I didn&amp;#8217;t make the top 50, I spent way too little time on it. But I had lots of fun with it, I have something that works, and at least outperforms my own Asteroids skills 🙂</description>
    </item>
    
    <item>
      <title>Apropos DVB: Newer vdr packages for Ubuntu</title>
      <link>https://piware.de/2008/06/apropos-dvb-t/</link>
      <pubDate>Wed, 11 Jun 2008 08:56:50 +0000</pubDate>
      
      <guid>https://piware.de/2008/06/apropos-dvb-t/</guid>
      <description>Wow, thanks to all for all the good feedback and suggestions I got about the v4l-dvb driver package. If you are still looking for a nice and feature-rich frontend, you can take a look at the newer vdr packages for Ubuntu.
Hanno, maybe you are interested in maintaining these packages directly in Ubuntu, together with the MOTUs? Then intrepid will always have up to date packages, and it is no problem to backport them to stable releases, 8.</description>
    </item>
    
    <item>
      <title>packaged DVB-T drivers for Ubuntu 8.04</title>
      <link>https://piware.de/2008/06/packaged-dvb-t-drivers-for-ubuntu-804/</link>
      <pubDate>Tue, 10 Jun 2008 13:22:22 +0000</pubDate>
      
      <guid>https://piware.de/2008/06/packaged-dvb-t-drivers-for-ubuntu-804/</guid>
      <description>Following up on my recent blog to make my Hauppauge WinTV Nova-T play under Hardy, and my ongoing work for improving the driver situation under Ubuntu and Linux in general, I finally packaged the current development snapshot of the Video4Linux DVB drivers.
I used DKMS for generating a Debian package out of the driver source tree, which works really well after I sorted out a couple of issues with upstream (which are by and large fixed upstream now, thanks Matt and Mario!</description>
    </item>
    
    <item>
      <title>New Jockey upstream release 0.4</title>
      <link>https://piware.de/2008/05/new-jockey-upstream-release-04/</link>
      <pubDate>Wed, 21 May 2008 21:43:31 +0000</pubDate>
      
      <guid>https://piware.de/2008/05/new-jockey-upstream-release-04/</guid>
      <description>I finally sorted out some remaining issues and released a new Jockey. This brings support for third-party package repositories, and implements an XML-RPC driver database client, aside from the usual load of bug fixes. The test suite improved again, too, it (optionally) uses python-coverage now.
Planning ahead, the next things I want to get to are
 Find some interested people to work on a driver database server (I will write a specification page for it soon).</description>
    </item>
    
    <item>
      <title>Apport retracers are back</title>
      <link>https://piware.de/2008/05/apport-retracers-are-back/</link>
      <pubDate>Fri, 09 May 2008 09:19:49 +0000</pubDate>
      
      <guid>https://piware.de/2008/05/apport-retracers-are-back/</guid>
      <description>As a lot of you were rightfully complaining, the automatic Apport crash bug retracers had been offline for about two weeks. The main reason was that the hardy chroot became totally broken, due to bugs in fakechroot.
Yesterday I finally took some hours to track them down and fix them (see LP #228534). Now, after also dealing with the usual breakage of python-launchpad-bugs and Launchpad getting out of sync, the retracers have been restarted and are working happily again.</description>
    </item>
    
    <item>
      <title>HAL is dead, long live DeviceKit</title>
      <link>https://piware.de/2008/05/hal-is-dead-long-live-devicekit/</link>
      <pubDate>Wed, 07 May 2008 12:52:05 +0000</pubDate>
      
      <guid>https://piware.de/2008/05/hal-is-dead-long-live-devicekit/</guid>
      <description>Thanks to David for summarizing the future of hardware management. Interesting read, and the thread promises an interesting discussion.</description>
    </item>
    
    <item>
      <title>My computer discovered playing games</title>
      <link>https://piware.de/2008/05/my-computer-discovered-playing-games/</link>
      <pubDate>Wed, 07 May 2008 09:54:35 +0000</pubDate>
      
      <guid>https://piware.de/2008/05/my-computer-discovered-playing-games/</guid>
      <description>The other day I read about the current c&amp;#8217;t programming contest and got addicted immediately. The task is to create a program which plays the Atari Asteroids game from 1979:
Unfortunately they do not send that gem to everyone :-), but they do send the original 8 KB of ROM, so you can play it on the MAME emulator.
So far I got the emulator and the game running, and have a Python script which tracks the objects and their velocity vectors.</description>
    </item>
    
    <item>
      <title>Python code coverage</title>
      <link>https://piware.de/2008/04/python-code-coverage/</link>
      <pubDate>Tue, 08 Apr 2008 14:39:01 +0000</pubDate>
      
      <guid>https://piware.de/2008/04/python-code-coverage/</guid>
      <description>Today I was playing with python-coverage, which seems to be the tool of choice for code coverage measurement in Python. Since I am constantly hacking on Jockey&amp;#8217;s test suite, I want to strive for perfection and cover everything, so it does sound like something worthwhile.
First I tried to use it like documented:
 python /usr/share/python-support/python-coverage/coverage.py -x tests/run
 which just caused the tests not to run at all, for no immediately obvious reason (it worked fine with real Python modules in apport).</description>
    </item>
    
    <item>
      <title>Howdy!</title>
      <link>https://piware.de/2008/04/howdy/</link>
      <pubDate>Mon, 07 Apr 2008 12:20:57 +0000</pubDate>
      
      <guid>https://piware.de/2008/04/howdy/</guid>
      <description>After 17 hours of long flights and hectic interchanges I made it to Austin, Texas last Saturday, yay!
Admittedly there are much fewer cowboy hats around here than I anticipated (but then again, Austin is said to be the most non-Texanian city in Texas). Instead I have to readjust my mental scale of the size of everything; the country itself, the vast cars, the hilariously big TV in my giant hotel room.</description>
    </item>
    
    <item>
      <title>The new toy in town</title>
      <link>https://piware.de/2008/04/the-new-toy-in-town/</link>
      <pubDate>Thu, 03 Apr 2008 09:17:33 +0000</pubDate>
      
      <guid>https://piware.de/2008/04/the-new-toy-in-town/</guid>
      <description>After having (happily) lived without a TV for about 8 years, I now bought a DVB-T USB stick (cheap Hauppauge Nova WinTV). Not so much because I would actually watch TV a lot, but I&amp;#8217;d like to improve Ubuntu in the future to support them out of the box.
That turned out to be much harder than I anticipated: Even if Hardy is not even released yet, the kernel is already too old to have the necessary modules, so I built the modules from the upstream development tree, which fortunately worked flawlessly.</description>
    </item>
    
    <item>
      <title>Getting ready for Austin</title>
      <link>https://piware.de/2008/04/hello-world-2/</link>
      <pubDate>Wed, 02 Apr 2008 23:40:11 +0000</pubDate>
      
      <guid>https://piware.de/2008/04/hello-world-2/</guid>
      <description>I&amp;#8217;m really looking forward to go to Austin next Saturday, for my first LinuxFoundation collaboration summit. I&amp;#8217;m particularly interested in bringing forward the work of the Driver Backport workgroup, where my focus is on delivering drivers to the user.</description>
    </item>
    
  </channel>
</rss>