Category “Debian” — 9 articles

Live Upgrading PGQ

Some skytools related new today, it’s been a while. For those who where at my FOSDEM’s talk about Implementing High Availability you might have heard that I really like working with PGQ. A new version has been released a while ago, and the most recent verion is now 3.1.3, as announced in the Skytools 3.1.3 email. Upgrade time! Skytools 3.1.3 enters debian First news is that Skytools 3.1.3 has been entering debian today (I hope that by the time you reach that URL, it’s been updated to show information according to the news here, but I might be early).

PostgreSQL and debian

After talking about it for a very long time, work finally did begin! I’m talking about the apt.postgresql.org build system that will allow us, in the long run, to propose debian versions of binary packages for PostgreSQL and its extensions, compiled for a bunch of debian and ubuntu versions. We’re now thinking to support the i386 and amd64 architectures for lenny, squeeze, wheezy and sid, and also for maverick and natty, maybe oneiric too while at it.

pgfincore in debian

As of pretty recently, pgfincore is now in debian, as you can see on its postgresql-9.0-pgfincore page. The reason why it entered the debian archives is that it reached the 1.0 release! Rather than talking about what pgfincore is all about ( A set of functions to manage pages in memory from PostgreSQL), I will talk about its packaging and support as a debian package. Here’s the first example of a modern multi-version packaging I have to offer.

We still have this problem to solve with extensions and their packaging. How to best organize things so that your extension is compatible with before 9.1 and 9.1 and following releases of PostgreSQL? Well, I had to do it for the ip4r contribution, and I wanted the following to happen: dpkg-deb: building package postgresql-8.3-ip4r' ... dpkg-deb: building packagepostgresql-8.4-ip4r’ … dpkg-deb: building package postgresql-9.0-ip4r' ... dpkg-deb: building packagepostgresql-9.1-ip4r’ … And here’s a simple enough way to achieve that.

I’ve been working on skytools3 packaging lately. I’ve been pushing quite a lot of work into it, in order to have exactly what I needed out of the box, after some 3 years of production and experiences with the products. Plural, yes, because even if pgbouncer and plproxy are siblings to the projets (same developers team, separate life cycle and releases), then skytools still includes several sub-projects. Here’s what the skytools3 packaging is going to look like:

Yes, you read it well, el-get currently features 174 recipes, and is now reaching the 1.1 release. The reason for this release is mainly that I have two big chunks of code to review and the current code has been very stable for awhile. It seems better to do a release with the stable code that exists now before to shake it this much. If you’re wondering when to jump in the water and switch to using el-get, now is a pretty good time.

el-get

I’ve been using emacs for a long time, and a long time it took me to consider learning Emacs Lisp. Before that, I didn’t trust my level of understanding enough to be comfortable in managing my setup efficiently. One of the main problems of setting up Emacs is that not only you tend to accumulate so many tricks from EmacsWiki and blog posts that your .emacs has to grow to a full ~/.

Emacs and PostgreSQL

Those are my two all times favorite Open Source Software. Or Free Software in the GNU sense of the world, as both the BSD and the GPL are labeled free there. Even if I prefer the The Debian Free Software Guidelines as a global definition and the WTFPL license. But that’s a digression. I think that Emacs and PostgreSQL do share a lot in common. I’d begin with the documentation, which quality is amazing for both projects.

emacs-snapshot

If you want to live on the bleeding edge, it’s easy enough to get a non existing release of GNU Emacs under debian sid, thanks to http://emacs.orebokech.com/. The problem is that Emacs Muse is broken on emacs-snapshot, partly because of Htmlize which is unable to find the face fonts (I got (error "Invalid face")), partly because of my configuration itself: hunk ./dim-muse.el 22 - ‘(("pgsql.tapoueh.org" $ - (,@(muse-project-alist-dirs "~/dev/muse/site") $ + ‘(("pgsql.

Dimitri Fontaine

PostgreSQL Major Contributor

Open Source Software Engineer

France