Fredrik Karlsson wrote:

HI,

I think I understand what you want. Here is what I did:

I created a startup script which sets lockfile only if the sciript is
supplied with the argument "auto":
[EMAIL PROTECTED] mythtv $ cat /usr/local/bin/mythguictrl
#!/usr/bin/perl

use warnings;
use strict;

package main;

my $lockfile = '/var/run/mythtv/mythguilockfile';

my $who = $ARGV[0];

system "rm $lockfile" if -e $lockfile;

if($who eq "auto"){

       system "echo 1 > $lockfile";
}

exit 1;

#---------------------------

Next, I created .xinitrc and .xsession files looking like this:
[EMAIL PROTECTED] mythtv $ cat .xinitrc
# Merge X resources from ~/.Xdefaults
[ -f $HOME/.Xdefaults ] && xrdb $HOME/.Xdefaults

# Set the background and root cursor shape
xsetroot -solid \#400040
xsetroot -cursor_name top_left_arrow

# Start evilwm - snap to borders within 10 pixels
/usr/bin/evilwm -snap 6 -bw 0 &

/usr/X11R6/bin/xset s noblank &
/usr/X11R6/bin/xset s off &
/usr/X11R6/bin/xset -dpms &
#/usr/bin/xsetbg  /home/mythtv/.mythtv/silent-800x600.xpm
/usr/X11R6/bin/xsetroot -solid black

[  -f /var/run/mythtv/mythguilockfile ] || mythfrontend &



# sleep makes it so irxevent works
# uncomment these if you don't compile lirc into mythtv (set the lirc
USE variable to compile lirc support into mythtv)
sleep 3
irxevent &

# Transfer control to xclock - killing xclock (with Ctrl+Alt+Escape, say)
# will exit our session
exec xclock -digital -padding 2 -g -0+0
#----------------------------

So, the frontend is ONLY started when the lockfile does not exist.
Finally, I set the startup command (in mythsetup) to
/usr/local/bin/mythguictrl $status


I have a similar setup using a C++ program that I wrote called, of all things, MythSplash. On an startup I have a small perl script (I think I used perl, over a year now) that is called from mythbackend telling whether or not the system was booted in automode. What the script does is copies one of two .xinitrc files into the mythtv home directory. One file starts mythfrontend on a manual start (no pending recordings), when mythfronted is exited, it then calls mythsplash that gives a 'blue' themed screen that says myth is shutting down, hit enter to restart, if pressed mythfrontend restarts. In automatic mode the script calls mythsplash but this time, mythsplash displays a message indicating that mythtv is in auto mode hit enter key to start mythfrontend. Once mythfrontend is shutdown mythsplash is displayed again. Indicating Automode. There are a couple gotcha's. If you turn on mythtv say just before a recording is due, it will start in automode, because it thinks it's being started by nv-wake or something. The other is that the query that being used internally in mythbackend to determine whether mythbackend should be in automode doesn't handle previously recorded programs or disabled programs. For example if you are on the 'upcoming recordings' screen within mythfrontend, it will show the grayed out shows (disabled or previously recorded) and actually scheduled recordings, the grayed out shows seem to confused the the manual/auto function in mythtv. If I turn on mythtv when one of these disabled shows might have been recording, mythtv starts up in automode. Not a big deal for most part, but sometimes when mythtv is awaken remotely (via network) it starts in automode and sometimes shutdown before the slave is fully booted to connect to the backend. Hopefully when I get some time I'll be able to look at the code and submit a patch. Hopefully... If anyone is interested in mythsplash let me know, I'll clean it up a bit and perhaps make it theme-able.


Calvin.... _______________________________________________ mythtv-users mailing list [email protected] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users

Reply via email to