Today I had to reboot my mobile phone (K800i) for the first time
since I have it (June 2007). It crashed so bad that I had to remove
the battery (and put it back) to be able to use it again. At the point where I had to
enter the code I realized that i never turned it off since June 2007
and therefore I had to wait until I was home again because I had no idea
what the new code was.
Monthly Archive for January, 2008
With the update to Fedora 8 an old problem reappeared. The web front end I have to use my PDA as a remote control for my mpd server calls a binary which downloads the CD cover of the currently playing album from amazon. Unfortunately I lost the source code a long time ago and now with the update to Fedora 8 it broke because it was linked against an older curl version than available in Fedora 8. So I sat down to write it again.
Just as last time I used gmpc’s coveramazon plugin as a starting point and rewrote it to be a standalone application. After two days I had it working again. As a last test I wanted to delete the download directory (covers/) to see if the directory is recreated. Unfortunately (I do not know why) I typed rm * covers/ instead of rm -rf covers/. Everything was deleted except the directory I intended to delete.
I tried to undelete the file with grep (grep -a -B2000 -A2000 "getcover" /dev/sda3), but I was not able to find any trace of that file. I was cursing for about an hour and then I started to rewrite it again. This time I committed every change in my repository I am using for kover.
Thus, I present getcover. To try it out you have to do the following:
$ git clone http://lisas.de/kover/git bla $ cd bla/getcover $ cmake . $ make $ ./getcover
The best overview about how to use it gives hopefully the help:
-h, --help print out this information
-a, --artist specify the artist whose cover should be retrieved
(required)
-l, --album specify the album
(required)
-t, --title search type: Title (default)
-k, --keyword search type: Keyword
-c, --cover download cover (default)
-i, --info download artist information
-e, --endpoint select endpoint (specify "list" to see all options)
-o, --host specify proxy host
-p, --port specify proxy port
if the environment variable http_proxy is set
that value will be used. to disable the use of
proxy in that case the environment variable has to be unset.
-d, --directory destination directory (defaults to current directory)
-v, --verbose verbose output
I am using cmake because I started to port kover to KDE4 and it was good way to get used to cmake. And for completeness a link to the php script which is responsible for the web front end.
Today, soon after getting up, I read my emails as every morning. Today
were a few bugzilla mails in my inbox that libcdio
has a security vulnerability: Long Joliet file name overflows cdio’s buffer.
I started to read through the bug reports and decided to prepare a new release
for all affected branches. I did not suspect however that this would take me over
two hours. But right now I have submitted the last build request for EL-5 and I still have
to request updates in bodhi to make
it available for F-7 and F-8.
For rawhide I updated libcdio to a new upstream version so that I did a first quick build
to see if there was a soname change. It was not. Good.
I then included the patch from
gentoo’s bugzilla and also fixed the open multiarch conflict. I committed my changes to CVS, requested a build and closed the appropriate bugs in bugzilla.
The next steps were to merge my changes from the rawhide branch to the F-7 and F-8 branches.
I decided that for those two releases I do not want to upgrade to the latest upstream version (0.79) but
to only apply the necessary patches to fix the current version (0.78.2). I had to test this release again
and was then finally able to request builds for F-7 and F-8. Then I remembered that I am also
maintaining libcdio for EL-5 so that I committed my changes also on that branch.
All things considered it took me now over two hours to apply a simple patch to a rather simple package.