Category: KDE

26

cmocka – a unit testing framework for C

I’m a big fan of unit testing frameworks. When I developed csync, a bidirectional file synchronizer, I used check to write unit tests from the start. check was ok, but it were running valgrind on your testcases to find memleaks in your code the mode reports were about check. So I needed to add valgrind suppressions to get rid of them. When I started to...

8

jailbash

chroot for users suck! It is work to maintain them and all in all you have to do a lot of nasty hacks to get it going! In the meantime AppArmor is in the mainline kernel. It is pretty simple to write rules for it and you can easily update it with tools like ‘logprof’. Here is a small howto to trap users in their...

0

libsmbconf

Three years ago Michael Adam created a nice library to easily read the Samba configuration or modify it if it is stored in the registry. Since we have a new build system it is much easier to create shared libraries, I’ve created a public smbconf library now. The library can be used to setup Samba or Winbind without touching any files. Ok, smb.conf needs one...

50

Logitech Linux Mouse Support

Maybe you ask: Why is there still no new version of lomoco to support the latest Logitech Mice? The answer is that I still don’t know how they detect a mouse connected to a receiver. Maybe they just have a table which defines which mice come with which receiver and then try some commands. If it fails it is mouse X and if not it...

9

Weave for PIM?

Last year I discovered Mozilla Weave (now Sync). Weave is a Firefox addon and they offer the server components to install your own weave server. It offers everything I would like to have for PIM. So lets start with some details… The Firefox Sync addon synchronizes the following things between your browsers/computers: bookmarks history forms prefs tabs passwords The data stored on the weave server...

4

gdb backtrace to file

I wanted a simple command to get a backtrace in a file from gdb. It took me years to finally discover and craft this command! alias bt=’echo 0 | gdb -batch-silent -ex “run” -ex “set logging overwrite on” -ex “set logging file gdb.bt” -ex “set logging on” -ex “set pagination off” -ex “handle SIG33 pass nostop noprint” -ex “echo backtrace:\n” -ex “backtrace full” -ex “echo...

4

The pain of poll(2)?

If you’re working on a multi-platform project which does network communication you will end up thinking about replacing select(2) with poll(2) sooner or later. The problem with select are well known. poll(2) removes the limitations of select(2) and improves speed and features. The problem is that poll(2) isn’t available on all platforms. This means you need a poll(2)-emulation or create wrappers around other similar poll()...

2

Featurecasts

Yesterday I’ve visited the Tokamak4 Sprint. I’ve attended the talks in the evening and then had dinner with some KDE hackers. Today I’ve looked at PlanetKDE and saw the KDE bluetooth screencast from Alex Fiestas. I liked the screencasts in the KDE 4.4 announcement, it should the users what’s cool and new. Yesterday I’ve heard the first time about activities in KDE4. I wondered what...

0

Documenting the Source

As you maybe know I have a new job since last December and I’m working on Samba4 now. Samba4 is a monster so I’ve asked for some simple tasks to get started. The task was to migrate some code to a new Samba library called tsocket. The problem was I didn’t know what to do and how. Some functions of the API were documented but...

0

csync at FOSDEM

I’m currently updating csync to work with libssh 0.4 and I will give a lightning talk about csync at FOSDEM next weekend. csync is a file synchronizer to keep two folders in sync. This can be local or remote. The main purpose of csync is to provide Roaming Home Directories. I will work with Aris on libssh stuff and try to get some small features...