Skip to main content

Reverse package dependency lookup in Debian/Ubuntu

I stumbled over a neat tool call apt-rdepends today. It can list forward and reverse dependencies as well as generate dot graphs from that. Here are two little examples. Recursive forward dependency lookup of package git-arch as graph:

apt-rdepends - -dotty git-arch | dot -Tpng > git_deps.png

The output looks like this:

Non-recursive reverse dependency lookup of package nano :

$ apt-rdepends –-reverse –-follow=nano nano
Reading package lists… Done
Building dependency tree
Reading state information… Done
nano
Reverse Depends: junior-writing (1.5)
Reverse Depends: mindi (2.22-1ubuntu1)
Reverse Depends: ubuntu-standard (1.79)

uriparser 0.6.1 released

This release fixes two bugs in the normalization algorithm and a few minor build related issues. This release is fully source and binary compatible. Thanks go to Adrian Manrique, Martin Michlmayr, Ed Schouten and Adeodato Simó.

Merging folders with unionfs

Let's assume you have two folders with music, e.g. one with ripped albums and another with Jamendo downloads. On one hand you do want to seperate these two worlds and on the other you want to unite them to a single combined view. This is possible through unionfs. It's so awesome that I just have to write about it. :-) On a Debian-based system you install package unionfs-tools first. After that you're ready to check it out. Let's create two test folders one and two and merge them together:

$ mkdir one
$ touch one/1
$ mkdir two
$ touch two/2
$ mkdir merged
$ sudo mount -t unionfs -o “dirs=./one:./two” unionfs ./merged || dmesg | tail
$ ls merged/
1 2

On Ubuntu that already works, on Debian you might need to manually install the unionfs kernel module:

$ su
$ apt-get install unionfs-source
$ apt-get install module-assistant
$ module-assistant prepare
$ module-assistant build unionfs
$ module-assistant install unionfs
$ exit

That should be it. I'm quite happy some setup did not take hours for the first time...

Firefox Qt search engine fix

I recently stumbled upon the Firefox search engine add-on "Qt" which lets you search doc.trolltech.com. I gave it a try... it's broken. Good thing is fixing it was very easy. Here is a fixed version for download plus a direct activation link:

Add Qt search engine

To view the installed description file (version 7.2, XML) click here. The original engine (version 7.1) by Daniil Ivanov can be found here.

Convincing a fresh Debian Etch with LVM over dm_crypt over RAID 1 to boot

When I tried to first install Debian a few years ago I could not even make the X-Server run which frustrated me and made me stick with Windows at that time. For quite some time I feel that Debian seriously deserves a second chance so I tried one more time a few days ago... and in the end succeeded. So a few days ago I tried to install Debian again which could have been a great experience if there weren't these little things you stumble over everywhere in computing that take you hours to get right... sigh. In this case the command line installer of Debian Etch did a great job on letting me configure my desired not-that-trivial hard disc setup: 2 discs, each with two RAID 1 partitions, a small one for an unencrypted /boot folder and a big one for a single dm_crypt device holding all other partitions managed by LVM. So while the installer made configuring this setup comfortable and fast (much faster than the installgui version, speaking of delays between pages) it failed to make my system boot after. So after hours of trying to figure how to make this work, re-compressing the initrd image again and again I finally got the important hint from a friend of mine which involved adding a /conf/conf.d/cryptsetup file to the image. I found a way now how to achieve the same effect even without touching the initrd image, by adjusting Grub's menu.lst instead. The parameters to add look like this (adjust if copying!):

cryptopts=target=md1_crypt,source=/dev/md1,keys=none,lvm=one-root
  • md1_crypt is the basename of the unencrypted device — this will end up as /dev/mapper/md1_crypt
  • keys=none means using Luks
  • one-root is a composition of my volume group "one" and the partition "root" inside

So my current Grub entry (with a testing kernel ater updating) looks like this (adjust if copying!):

title Debian GNU/Linux, kernel 2.6.22-3-686 root (hd0,0)
kernel /vmlinuz-2.6.22-3-686 root=/dev/mapper/one-root
  cryptopts=target=md1_crypt,source=/dev/md1,keys=none,lvm=one-root ro
initrd /initrd.img-2.6.22-3-686 savedefault

PS: There is a article describing how to fix this problem while the installer is running. Contrary to that my fix is useful to people running into this problem after the installer has finished.

Exaile on Themestreet

I'm starting to think that maybe visually tuning your operation system should not be reserved to "pro gamers" only ... The shot below shows my current KDE theme with Exaile playing the just-arrived Crash Motive album. If only Exaile had a headphone mode...

Cygwin from here

I'm very happy that I finally got this working: a Windows shell menu entry C _Y GWIN from here_ that opens a Cygwin Bash for that very folder. After weeks of typing "cd /cygd/c/" and so on now two clicks instead are ten times faster for me, assuming that this very folder was under my nose in Explorer already. The magic command to integrate is

E:\Cygwin\bin\bash --login -c 'cd "`cygpath "%1"`" && exec bash -i'

To be sure you don't copy-paste that with broken quotes through WordPress or something, better download and import this registry export:

Don't forget to adjust the absolute path before.

GLMatrix screensaver configuration in Ubuntu Gutsy

I have no idea why but Ubuntu doesn't allow to configure the screensavers it comes with. Not those screensavers were not configurable, but in contrast to xscreensaver-demo, Ubuntu itself does not offer access to their visual config :-( What I wanted to do is stop GLMatrix from rotating the matrix, which would have been -no-rotate on the command line. Editing glmatrix.desktop in /usr/share/applications/screensavers finally helped:

The modified file looks like this:

[Desktop Entry]
Encoding=UTF-8
Name=GLMatrix (without rotation)
Comment=Draws 3D dropping characters [..] by Jamie Zawinski.
TryExec=glmatrix
Exec=glmatrix -root -no-rotate
StartupNotify=false
Terminal=false
Type=Application
Categories=Screensaver
X-Ubuntu-Gettext-Domain=xscreensaver