Older blog entries for firefly (starting at number 15)

GSmartMix

Benjamin Otte told me on #freedesktop that there's this SoC project called GSmartMix that might end up doing what I want. Stefan Kost (the mentor for the project) told me a short bit later that the first basic demo is done and that they want feedback.

Links:

GSmartMix blog

GSmartMix on live.gnome.org

Does anybody know of a list of D-Bus events it would be useful to subscribe to? I am thinking of events that say "network is down/up", "sound has been muted", ...

There probably isn't a D-Bus event for "sound has been muted", but I think there should be. Audio/video players and (some) games should pause themselves when they receive that event. I don't think they should unpause themselves automatically when the sound gets unmuted, though.

Coroutines/continuations

Mike: man setcontext.

Breezy AMD64 qemage

The AMD64 Breezy qemu image I prepared is ready for download at free.oszoo.org.

28 Mar 2006 (updated 28 Mar 2006 at 17:07 UTC) »

Madness[1]

firefly@charybdis:~ $ man perltoc | wc
Reformatting perltoc(1), please wait...
  12228   37991  385536

firefly@charybdis:~ $ man gcc | wc Reformatting gcc(1), please wait... 10475 60878 494066

firefly@charybdis:~ $ man perlfunc | wc Reformatting perlfunc(1), please wait... 6655 42081 345448

firefly@charybdis:~ $ man mplayer | wc Reformatting mplayer(1), please wait... 6498 32376 297288

firefly@charybdis:~ $ man smb.conf | wc Reformatting smb.conf(5), please wait... 6252 39674 290421

firefly@charybdis:~ $ man ex | wc Reformatting ex(1posix), please wait... 5098 33570 235212

firefly@charybdis:~ $ man bash | wc Reformatting bash(1), please wait... 4818 36418 275736

firefly@charybdis:~ $ man perldiag | wc Reformatting perldiag(1), please wait... 4041 27130 192905

firefly@charybdis:~ $ man lsof | wc Reformatting lsof(8), please wait... 2531 17406 132807

firefly@charybdis:~ $ man 5 terminfo | wc Reformatting terminfo(5), please wait... 2090 13421 129703 firefly@charybdis:~ $

firefly@charybdis:~ $ man gpg | wc Reformatting gpg(1), please wait... 2035 11708 102345

firefly@charybdis:~ $ man sh | wc Reformatting sh(1posix), please wait... 1172 8335 60875

firefly@charybdis:~ $ man cat | wc Reformatting cat(1), please wait... 74 218 1838

------

[1] Rob Pike and Brian W. Kernighan, "Program Design in the UNIX Environment"
(Derived from the talk by Rob Pike, ``Cat -v considered harmful''), Bell Labs Tech. J., 1984.

Clarification

Yes, I know that the only really new thing here are the symlinks instead of the union mount. Just wanted to make that clear.

David Zeuthen stole my idea yesterday...

...and I only got it ten minutes ago. Damn, that man is fast!

Intelligent Directories

Basically, what I've just described is "just" a variant of "intelligent directories". Why should directories just be passive containers? Why not allow extra work to take place behind the scenes when certain magic directories get updated?

I hate configuration files and I hate programs that I manually have to run to catch updates.

I want intelligent directories that automatically email/rsync/backup when I copy/move files to them. I want intelligent directories I can drop fonts or video codecs into.

And I want intelligent directories I can drop applications in.

16 Mar 2006 (updated 16 Mar 2006 at 13:02 UTC) »

Poor Man's Union Mount

(commentary on OLPC applications management)

1) there shall be a daemon

2) the daemon sets up inotify watches on /applications

3) when a new directory shows up, it creates symlinks from /usr/bin/app-cmd to /applications/appdir/app-cmd

4) same thing happens for libraries, manpages.

5) UI data files (sounds, icons, glade files) -- some will have to be symlinked or copied, some can stay "private".

6) notifications have to be posted to the desktop environment: .desktop files, MIME magic files, MIME icons, application icoms -- touching a directory may be enough (because some other daemon-like entity will pick up that signal and take it from there).

7) if there's already an application with the same name, we can create /usr/bin/app-cmd-v1.2 and /usr/bin/app-cmd-v2.0 symlinks in addition to moving /usr/bin/app-cmd to point to the newest version of the app.

Think of this sorta like udev for applications...

6 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!