Older blog entries for herzi (starting at number 61)

13 May 2009 (updated 14 May 2009 at 12:13 UTC) »

Time, Time Zone and the total mess...

So, I realized that in my toy app all times where off by two hours. I thought »Ha, that's easy.« and now I'm officially surrendering.

I created a quite simple testcase, and even that one tries to tell me that these times are the same:

2009-05-07 12:00:00 +0000
2009-05-07 13:00:00 +0200

So, until now I thought "+0200" means »two hours ahead of UTC«. Why is it supposed to be one nowadays?

So now my questions: Is this Ubuntu Hardy, I'm using here, a total mess? Do I do something wrong? Doesn't this work at all? Why does it keep trying to pretend that these times are the same?

Syndicated 2009-05-07 15:34:36 (Updated 2009-05-14 12:08:41) from herzi.eu

Using Webkit/GTK+ in Mac OS X

Webkit/GTK+ is a really nice thing already. It still has it's rough edges, but it already works really nicely.

At Imendio, I spent the last 2 weeks on Webkit/GTK+ for Mac OS X. The GTK+ backend for webkit is using FontConfig/FreeType to match fonts and to cache glyphs. We decided that the right way to do this cross-platform is to use Pango for it (not for the real text layouting, but at least for the font management).

In Pango 1.18 we found the APIs that we needed and finally we finished working on »Abstract font management by using Pango«. Some parts are a bit tricky (especially FontPlatformData::isFixed() and pango_font_get_glyph() parts of the patch).

Finally, we were able to take this screenshot:

It's really nice to hack on Webkit, Apple's employees are really quick in reviewing and applying patches. They have a field for patch-reviews ("?" means »please review«, "+" and "-" are review votes for and against a patch). I think having a patch review queue in GNOME's bugzilla would also help a lot to get patches into the packages (of course, the queues would be package-specific, maybe they can appear on the package summary page).

Syndicated 2007-09-21 16:57:56 (Updated 2007-09-21 17:22:00) from Herzis Blog

Neulich im Internet…

Joomla! oder: die Quadratur der GPL, oder: warum ich seit geraumer Zeit keinen GPL-Code mehr schreibe. Mit der LGPL wäre das nicht passiert und LGPL-Code lässt sich beliebig von einer Anwendung in eine LGPL-Bibliothek migrieren, ohne dass man den Cruft von alten Contributors ausräumen muss…

Also nochmal: Leute, denkt nach bevor ihr euch eure Lizenz aussucht.

Syndicated 2007-06-26 13:06:37 from Herzis Blog

Approaching the nineth circle of hell

Dear Lazyweb,

today I had a problem debugging a GTK+ module (libatk-bridge.so). It threw a warning which looked like it was coming from my application:

** (criawips:26563): WARNING **: failure: no device event controller found.

By using grep I realized pretty quickly that the message didn't come from my application. The gdb was at least able to tell me where the meesage came from (after breaking on g_log):

(gdb) bt
#0 IA__g_log (log_domain=0x0, log_level=G_LOG_LEVEL_WARNING,
format=0xb6bde62c "failure: no device event controller found.\n") at gmessages.c:516
#1 0xb6bdc0f8 in ?? () from /usr/lib/gtk-2.0/modules/libatk-bridge.so
#2 0x00000000 in ?? ()

And then I thought »Hey, nice, let's install debug symbols«. I installed at-spi-dbgsym (Ubuntu ddeb). But now I have this problem: gdb doesn't load the symbols from the debug.so (/usr/lib/debug/usr/lib/gtk-2.0/modules/libatk-bridge.so). How do I tell gdb to do? Please don't just mention a command like "sharedlibrary" (because I already tried that). The documentation is a bit poor on this and I think more people are interested in debugging GTK+ modules.

Syndicated 2007-06-25 13:51:28 from Herzis Blog

UMTS, T-Mobile und das Lenovo Thinkpad X60s

Thomas wollte, dass ich nochmal was zum Thema UMTS blogge, damit er dann meine Erkenntnisse nurnoch umsetzen muss. Seit ich mit der Spielerei angefangen habe, hat sich in der Linux-Welt auch schon wieder einiges getan: das eingebaute UMTS-Modem muss mittlerweile nicht mehr über das Modul usbserial angesteuert werden, sondern kann jetzt durch das Modul sierra betrieben werden, das dann bei den meisten Distributionen auch automatisch geladen wird.

Ist das Modul geladen, stehen entsprechende serielle USB-Schnittstellen zur Verfügung (/dev/ttyUSB0), über die dann mit dem Gerät kommuniziert werden kann.

Da ich persönlich nicht allzuviel davon halte, Passwörter u.ä. auf dem Rechner zu speichern, habe ich die USIM
immernoch mit dem Pin-Schutz versehen, der dann mit einem einfachen »echo 'AT+CPIN=4711' > /dev/ttyUSB0« bis zum nächsten Reboot aufgehoben werden kann.

Ansonsten ist das Arbeiten mit dem UMTS-Modem eine Leichtigkeit, einfach folgende PPP- und hat-Konfigurationen
installieren und alles wird gut:

## start of /etc/ppp/peers/umts ##

user "t-mobile"

connect "/usr/sbin/chat -v -f /etc/chatscripts/umts"
## end of /etc/ppp/peers/umts ##

## start of /etc/chatscripts/umts ##

# abortstring

# modeminit
"" 'ATZ'

SAY 'Checking pin lock\n'
"" "AT+CPIN?"

SAY 'Setting APN\n'
OK 'AT+CGDCONT=1,"IP","internet.t-mobile"'

# ispnumber
#OK 'ATD*99***1#'
OK 'ATD*99*1#'
# ispconnect

## end of /etc/chatscripts/umts ##

Syndicated 2007-06-20 19:11:19 from Herzis Blog


Carlos is collecting use cases and feature requests for a GtkCanvas. Make sure you're getting into this thread to make sure the GtkCanvas will really rock.

In the mean time I have been refactoring some parts of libccc. Right now I'm adding lots of test cases to make sure that the canvas behaves exactly as expected. You can check out my current master by using: git clone http://www.blaubeermuffin.de/ccc.git

I have been adding many nice things to the canvas during the last weeks. I'm currently focusing on resolution independence for the canvas, some nice API for view-specific data in items (this is almost done, needs some fixing though) and - of course - printing.

Syndicated 2007-04-20 13:59:34 from Herzis Blog

CeBIT 2007

I'm leaving to Hamburg today to spend the next week at Hanover. Linux New Media was so kind to offer a booth to the German GNOME community. Josh will also be there the whole time, MacSlow and maybe others will join us for the weekend.

So, if you're going to spend some time in Hanover this week, you can come by, talk about GNOME, GNOME development, Maemo, N770, N800. There will be a GNOME love wall and two talks on Sunday.

Syndicated 2007-03-14 09:15:00 (Updated 2007-06-10 09:28:37) from Herzis Blog

Lets giggle together

So, it's been almost a week since we released Giggle. We've been happily receiving lots of love in the form of emails, bug reports, suggestions, patches and even debian packages. Now we think it's time to share some love with you, so let's giggle together.

Doing so is pretty easy: you can subscribe to the giggle mailing list or join the Jabber chat room giggle on conference.imendio.com.

See you on jabber…

Syndicated 2007-03-13 11:34:57 (Updated 2007-03-13 15:26:19) from Herzis Blog

GNOME Launch Box - Version 0.2

GNOME Launch Box is an application launcher inspired by QuickSilver. You can find more information at the project page.


Fixed Bugs

  • [GLB-1] - Xinerama (multimon) issues.

  • [GLB-2] - Crash when icon is unavailable for application

  • [GLB-6] - Recent FIles module lists files that don't exist

Other Changes

  • Convert file names for display (Ulrik Sverdrup)

  • Updated to EContactPhoto API of libebook (Sven Herzberg)

  • support desktop_is_homedir (Sven Herzberg)

  • Added keybinding code from tomboy (Richard Hult)

  • Support epiphany bookmarks (Bastien Nocera)

  • Use GtkRecent and drop EggRecent (Bastien Nocera)

  • Removed scheme checking for bookmarks (Kai Willadsen)

Syndicated 2007-03-07 19:20:02 from Herzis Blog

A new free Virtual Machine

Today Innotek released its virtualization product VirtualBox as free software. Unfortunately it comes only with a QT interface, but maybe that changes…

Syndicated 2007-01-15 11:32:24 from Herzis Blog

52 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!