Tag Archives: code

ANSI Color support for xrootconsole

Having the system log on a background transparent window on the desktop look nice and can be useful (USB key plug events, network connection events and so on).
One way is to use a terminal like aterm or Eterm for instance using the following command:

aterm -tr -bl -ib 0 -title log -name log +sb -geometry '140x16+0+791' -e bash -c "tail --follow=name /var/log/full.log | ccze" &

With the -title and -name option the window decoration can be removed at the window manager level. OK, this is nice.

But when using fluxbox desktop wheeling will not work over the log as it is a window not the desktop.

So I switched to xrootconsole, but it has no color support… not a big deal, I just hacked it in 😉

Here is a sample usage of the hacked xrootconsole, the important part is the -A parameter for ANSI to ccze as the default is to use curses:

tail -n 16 --follow=name /var/log/full.log | ccze -A | xrootconsole --wrap --bottomup -geometry 233x16+1+818 &

Continue reading


An old hack (2 years old  according to my subversion db !!)

This started with my 5.1 Yamaha audio amplifier, this device has network access to listen to netradios directly ! I wanted to hack it to play a personal netradio.

I configured my dhcp to have it report my server as gateway and used wireshark to listen how it was connecting the Internet. It appeared that the menu on the device was provided by XML streams.

I first did some DNS spoofing and placed on my apache server a fake XML file, the Yamaha amplifier couldn’t tell the difference and I could play some local mp3 files.

The next step was to have both the normal radios and some personal radios. That’s here netsed becomes useful. The idea was to filter the main menu XML to add an extra item that liks to a local XML page linking to personal radio.

I never get to the step where I setup an Icecast server however I got the extra menu working.

netsed did basically the job, but for some reason it was not closing connections to the http server so it generated several timeout errors, that’s basically what I fixed in the netsed code.

my Trac page about netsed