MIPS cross-compile of rsyslog, a drop-in replacement for syslogd. It is far superior in that it allows filtering and has the ability to call scripts and programs based upon log entries. Any TiVo hack that watches the log file for activity should switch to using this structure, since it is more reliable than running a bash script in a loop.
Included are the following:
setflag: this is a small C program I wrote which will set a flag file in /var/tmp. We need this because rsyslog will only send one command parameter when calling a program. The provided example creates a file called hme.flag whenever the TiVo enters an HME screen, which is useful because our current tools for writing to the screen on Series 3 units will cause reboots. Now, a program can check for the flag file and just exit if necessary.
- Rename /sbin/syslogd to syslogd.old
- Copy the contents of the archive to the suggested folders (binaries to /sbin, lib folder to /lib, rsyslog.conf to /etc)
- Reboot to make rsyslog the active logging program
- Test by going to an HME screen (such as Netflix) and checking for the existence of the hme.flag file. If all is installed correctly, it should appear almost instantaneously.
Since rsyslog is backward-compatible, we don't even have to mess with rc.Sequence_200.StartLoggerDaemons.sh to get it to start correctly.
It would be useful if any hacks that use this technique are listed in this thread.