Difference between revisions of "Mythwelcome"
(→Mythwelcome/Mythshutdown Settings) |
(Added note about further undocumented keybindings (ie 0 and End)) |
||
(37 intermediate revisions by 14 users not shown) | |||
Line 1: | Line 1: | ||
+ | = Introduction = | ||
+ | Mythwelcome is an mythTV application that can prevent the backend from shutting down the system | ||
+ | if it is busy commercial flagging, downloading EPG data, transcoding or shutdown has been locked by | ||
+ | a user. Mythwelcome can be very useful if you run both frontend and backend on a single machine and | ||
+ | use [[ACPI_Wakeup]] to automatically shutdown and wakeup your machine. Prior to the introduction of MythWelcome, MythFrontend would always start up, and, therefore, MythBackend would never shut down. | ||
+ | |||
+ | = What is MythWelcome = | ||
+ | MythWelcome is a Myth themed application that shows a welcome/status | ||
+ | information screen that will be shown whenever the frontend is not | ||
+ | running ie. when an automatic startup has occurred to record a program. | ||
+ | It shows some information about what the backend is currently doing | ||
+ | idle, recording, commercial flagging, transcoding or locked by a user etc.). | ||
+ | It also shows what the backend is recording, what the next scheduled recording | ||
+ | is and shows a warning if there are any schedule conflicts. There is also a | ||
+ | push button to start the frontend. | ||
+ | |||
+ | It is useful if you want to setup a dedicated MythTV system that you | ||
+ | don't want to run 24/7 but you want to automatically wake up to record | ||
+ | just like a normal video recorder and shutdown again when it is idle. | ||
+ | |||
+ | Mythwelcome will also prevent the backend from shutting down the system | ||
+ | if it is busy commercial flagging, downloading EPG data, transcoding or | ||
+ | shutdown has been locked by a user. | ||
+ | |||
+ | = Working with mythwelcome = | ||
A new addition in 0.19. This utility program displays a myth themed dialog which shows a welcome/status information screen that is designed to be shown whenever the frontend is not running. | A new addition in 0.19. This utility program displays a myth themed dialog which shows a welcome/status information screen that is designed to be shown whenever the frontend is not running. | ||
Line 6: | Line 31: | ||
The Welcome screen will show the status of the backend and wait for you to manually start the frontend with your remote. | The Welcome screen will show the status of the backend and wait for you to manually start the frontend with your remote. | ||
+ | |||
+ | == Using MythWelcome/MythShutdown with ACPI == | ||
+ | |||
+ | See the [[ACPI_Wakeup]] page for details on setting up ACPI Wakeup. | ||
+ | |||
+ | == MythShutdown program == | ||
+ | |||
+ | The mythshutdown command line utility is a multi-purpose helper program used by | ||
+ | both mythbackend and mythwelcome. The program needs to be configured to | ||
+ | work properly by editing the settings in the GUI. | ||
+ | |||
+ | See [[Mythshutdown]] for details. | ||
+ | |||
+ | == Mythwelcome/Mythshutdown Settings == | ||
+ | |||
+ | Like most of MythTV Mythwelcome and Mythshutdown store their settings | ||
+ | in the myth database. All of the settings are settable from the GUI. | ||
+ | There are two separate settings pages. One is shown by starting | ||
+ | mythwelcome with the -s/--setup parameter or by pressing the | ||
+ | 'SHOWSETTINGS' key (defaults to F11 key) in Mythwelcome. You will probably only ever | ||
+ | set these options once when you first setup Mythwelcome. | ||
+ | |||
+ | <pre> | ||
+ | Command to Set Wakeup Time | ||
+ | Command to run to set the ACPI alarm in bios. The $time variable will contain the next wakeup time | ||
+ | |||
+ | Wakeup time format | ||
+ | Format for the time string passed to the 'Set Wakeup Time Command. Set to 'time_t' for seconds | ||
+ | since epoch. | ||
+ | |||
+ | nvram-wakeup Restart Command | ||
+ | Must be set to a blank value if using ACPI wakeup. | ||
+ | |||
+ | Command to reboot | ||
+ | Command used to reboot system. | ||
+ | |||
+ | Command to shutdown | ||
+ | Command used to shutdown system. | ||
+ | |||
+ | Command to run Xterm | ||
+ | This is the command to use to open an XTerm window. | ||
+ | Leave blank to disable this feature. | ||
+ | Tip: If the default font size is too small to see on your | ||
+ | TV change the default setting to: | ||
+ | 'xterm -fa Courier -fs 14' to change the font style and size. | ||
+ | |||
+ | Command to start the Frontend | ||
+ | This is the command mythwelcome should use to start the FE. It | ||
+ | is usefull if you want to change the verbose level or add a log | ||
+ | file to output message etc. | ||
+ | </pre> | ||
+ | |||
+ | [[Image:WelcomeScreen3.jpg]] | ||
+ | |||
+ | The second set of settings are available by pressing 'i/INFO' key in mythwelcome and allows you | ||
+ | to setup the daily wakeup/shutdown periods and control whether to automatically | ||
+ | start the mythfrontend when mythwelcome is started and it is determined that it | ||
+ | was started manually. | ||
+ | |||
+ | <pre> | ||
+ | Period 1 Start Time - These setting determine a period of time that the master backend | ||
+ | Period 1 End Time should always wake up for. Set both times to 00:00 to | ||
+ | disable this feature. | ||
+ | |||
+ | Period 2 Start Time - Second wakeup/shutdown period settings. | ||
+ | Period 2 End Time Note: Period 1 and period 2 should be in correct chronological order. | ||
+ | So for example if you have two periods 10:00-13:00 and 19:00-22:00 then | ||
+ | 10:00-13:00 must be period 1 and 19:00-22:00 must be period 2. This is | ||
+ | because if the start times for both daily wakeup periods has passed for | ||
+ | today then the next wake time will be set to the first daily wakeup time | ||
+ | tomorrow even if the second daily wakeup time is before the first. | ||
+ | |||
+ | Automatically Start - Normally when mythwelcome starts up it checks to see whether | ||
+ | Mythfrontend the system was started to record something or because of a | ||
+ | wakeup/shutdown period. If not it will automatically start the | ||
+ | frontend. You can disable this feature by unchecking this option. | ||
+ | |||
+ | Shutdown with Master - (Frontend only machines). If set mythwelcome will shutdown this system | ||
+ | Backend when the master backend shutsdown. | ||
+ | </pre> | ||
+ | |||
+ | A popup menu is available by pressing the 'm/MENU' key in mythwelcome and allows you to lock/unlock the machine | ||
+ | from shutting down, run mythfilldatabase or do a shutdown now. | ||
+ | |||
+ | <pre> | ||
+ | POPUP MENU | ||
+ | If you press the m/MENU key mythwelcome will display a popup menu with the | ||
+ | following options. | ||
+ | |||
+ | Lock Shutdown - Prevents the system from shutting down even if it is idle (see also below) | ||
+ | |||
+ | Unlock Shutdown - Allows the system to shutdown when it is idle (see also below). | ||
+ | |||
+ | Run Mythfilldatabase - Force mythfilldatabase to run now. | ||
+ | |||
+ | Shutdown Now - Force the system to shutdown even if it is not idle or is | ||
+ | in a wakeup/shutdown period. | ||
+ | |||
+ | FE only machines simply shutdown using the 'Poweroff command' | ||
+ | that has been setup in settings. | ||
+ | |||
+ | Master BE machines will not shutdown if the backend | ||
+ | is recording or is about to start recording otherwise | ||
+ | mythwelcome sets the time of the next wakeup and shuts down | ||
+ | the system. | ||
+ | |||
+ | Requires sudo to be setup properly to allow mythwelcome to call | ||
+ | the mythshutdown program with root privileges. See above. | ||
+ | |||
+ | Exit - Exit the mythwelcome application. | ||
+ | |||
+ | Cancel - Cancel the popup menu. | ||
+ | </pre> | ||
+ | |||
+ | Don't forget: you will most likely need to [[Mythwelcome#Allow_a_user_to_run_the_MythShutdown_program_with_root_privileges | set up sudo]], as well. | ||
+ | |||
+ | == Start xterm == | ||
+ | |||
+ | There is a hidden feature that allows you to start an xterm (or anything else really) from the mythwelcome | ||
+ | screen. Useful if you need to do some trouble shooting. You can access it by pressing the F12 key (default key binding). | ||
+ | You can enter the command line string that will be used to start the xterm / program on the Mythshutdown settings page (F11 key). | ||
+ | |||
+ | To disable this feature, just delete the commandline setting | ||
+ | |||
+ | == (Un)Lock shutdown == | ||
+ | |||
+ | An even more "hidden" (undocumented) feature is that you can lock / unlock mythshutdown from the mythwelcome screen with a single keypress. | ||
+ | |||
+ | This can be achieved from the popup menu (see above), or by just pressing 0 | ||
+ | |||
+ | == Exit mythwelcome == | ||
+ | |||
+ | Also undocumented is that pressing END (NEXTVIEW keybinding), then mythwelcome will exit. | ||
+ | |||
+ | == evilwm == | ||
+ | |||
+ | mythwelcome is known to have focus problems with evilwm. If you are experiencing any | ||
+ | problems try running mythwelcome under a xterm, i.e. | ||
+ | |||
+ | xterm -e mythwelcome | ||
+ | |||
+ | |||
+ | == Configuring the Cases Power Button to Shutdown via Mythwelcome (optional) == | ||
+ | |||
+ | Reconfiguring the cases power button to kill the mythfrontend is an easy way to trigger a clean/managed shutdown from a hardware control. By killing mythfrontend, mythwelcome will manage a clean shutdown (i.e when mythbackend is not busy recording... or locked e.t.c.). | ||
+ | |||
+ | The following was tested on Mythbuntu / Ubuntu 11.04 32bit | ||
+ | |||
+ | Step 1: Backup the following (in case you need to revert): | ||
+ | sudo cp -p /etc/acpi/powerbtn.sh /etc/acpi/powerbtn.sh.orig | ||
+ | |||
+ | Step 2: Comment out (or remove) the following line in /etc/acpi/powerbtn.sh | ||
+ | /sbin/shutdown -h now "Power button pressed" | ||
+ | |||
+ | Step 3: Directly under the commented out line, add: | ||
+ | /usr/bin/killall mythfrontend.real | ||
+ | |||
+ | = Archive: Using mythwelcome with nvram-wakeup = | ||
+ | |||
+ | {{Note box|This section is archival in nature and may not be up to date..}} | ||
== Configuration == | == Configuration == | ||
Line 18: | Line 203: | ||
Change your system startup to run mythwelcome instead of mythfrontend. | Change your system startup to run mythwelcome instead of mythfrontend. | ||
− | Change the Shutdown/Wakeup Options in mythtv-setup to call the mythshutdown program. | + | Change the General=>Shutdown/Wakeup Options in mythtv-setup (MythTV Backend Setup) to call the mythshutdown program. |
[[Image:Mythtvsetup-start.png]] | [[Image:Mythtvsetup-start.png]] | ||
+ | If your mythtv user is not root you will need to run Mythshutdown with root privileges, see the section below on root privileges | ||
+ | |||
And if you start wondering why it doesn't work, come back and read the | And if you start wondering why it doesn't work, come back and read the | ||
rest of this article. | rest of this article. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Prerequisites == | == Prerequisites == | ||
Line 95: | Line 264: | ||
like this | like this | ||
"/usr/sbin/nvram-wakeup -A -C /etc/nvram-wakeup.conf" | "/usr/sbin/nvram-wakeup -A -C /etc/nvram-wakeup.conf" | ||
+ | |||
+ | Note that Mythwelcome will append "--settime xxxxxxxxxx" to this command | ||
+ | where xxxxxxxxxx is the next wakeup time in UTC format. | ||
nvram-wakeup restart - command to set which bootloader menu option to use | nvram-wakeup restart - command to set which bootloader menu option to use | ||
Line 110: | Line 282: | ||
lilo users should use something like this | lilo users should use something like this | ||
"lilo -R PowerOff" | "lilo -R PowerOff" | ||
+ | |||
+ | OpenSUSE Users should use "/usr/sbin/grubonce x" (run as root) | ||
+ | where x is the menu entry in your grub boot menu. | ||
+ | If you run "grubonce" with no prarameters it will print out boot the menu list | ||
Poweroff Command - The command mythshutdown should use to poweroff the computer. | Poweroff Command - The command mythshutdown should use to poweroff the computer. | ||
Line 159: | Line 335: | ||
</pre> | </pre> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== MythBackend setup options == | == MythBackend setup options == | ||
Line 190: | Line 358: | ||
and nvram-wakeup all of which require root privileges if you don't run the mythbackend | and nvram-wakeup all of which require root privileges if you don't run the mythbackend | ||
as root you will have to use sudo to give mythshutdown root privileges and change the | as root you will have to use sudo to give mythshutdown root privileges and change the | ||
− | Server Halt command to 'sudo | + | Server Halt command to 'sudo -H mythshutdown --shutdown'. |
You will have to restart the backend for the new settings to take effect. | You will have to restart the backend for the new settings to take effect. | ||
− | + | ||
== Bootloader setup == | == Bootloader setup == | ||
Line 234: | Line 402: | ||
See the nvram-wakeup documentation for more info on how to setup lilo. | See the nvram-wakeup documentation for more info on how to setup lilo. | ||
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Allow a user to run the MythShutdown program with root privileges == | == Allow a user to run the MythShutdown program with root privileges == | ||
Line 304: | Line 411: | ||
run reboot, poweroff, grub/lilo and nvram-wakeup. | run reboot, poweroff, grub/lilo and nvram-wakeup. | ||
− | Add the following line to your '/etc/sudoers' file: | + | Add the following line to the end of your '/etc/sudoers' file. |
− | + | ||
− | + | '''Note:''' | |
− | + | This file must be edited by using the command: | |
+ | |||
+ | sudo visudo | ||
+ | |||
Change mythtv to the user you use to run mythwelcome and the mythshutdown program. | Change mythtv to the user you use to run mythwelcome and the mythshutdown program. | ||
You may also have to change the path to mythshutdown to suit your setup. | You may also have to change the path to mythshutdown to suit your setup. | ||
− | = | + | %mythtv localhost = NOPASSWD: /usr/bin/mythshutdown |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | This is another example sudo setup: | |
− | + | # this defaults setting is reported to be required on fedora. | |
+ | # check sudoers(5) for what the default is on your system | ||
+ | Defaults:mythtv !requiretty | ||
+ | |||
+ | Cmnd_Alias SHUTDOWN = /usr/bin/mythshutdown, /bin/sh -c /usr/bin/setwakeup.sh [0-9]*, /sbin/shutdown | ||
+ | mythtv localhost = NOPASSWD: SHUTDOWN | ||
− | + | Then in mythtv-setup change the "setwakeup time command" to | |
+ | sudo -H mythshutdown --setwakeup $time | ||
+ | |||
− | [[Category: | + | [[Category:MythTV_Software]] |
Latest revision as of 16:20, 23 September 2019
Contents
Introduction
Mythwelcome is an mythTV application that can prevent the backend from shutting down the system if it is busy commercial flagging, downloading EPG data, transcoding or shutdown has been locked by a user. Mythwelcome can be very useful if you run both frontend and backend on a single machine and use ACPI_Wakeup to automatically shutdown and wakeup your machine. Prior to the introduction of MythWelcome, MythFrontend would always start up, and, therefore, MythBackend would never shut down.
What is MythWelcome
MythWelcome is a Myth themed application that shows a welcome/status information screen that will be shown whenever the frontend is not running ie. when an automatic startup has occurred to record a program. It shows some information about what the backend is currently doing idle, recording, commercial flagging, transcoding or locked by a user etc.). It also shows what the backend is recording, what the next scheduled recording is and shows a warning if there are any schedule conflicts. There is also a push button to start the frontend.
It is useful if you want to setup a dedicated MythTV system that you don't want to run 24/7 but you want to automatically wake up to record just like a normal video recorder and shutdown again when it is idle.
Mythwelcome will also prevent the backend from shutting down the system if it is busy commercial flagging, downloading EPG data, transcoding or shutdown has been locked by a user.
Working with mythwelcome
A new addition in 0.19. This utility program displays a myth themed dialog which shows a welcome/status information screen that is designed to be shown whenever the frontend is not running.
This has been introduced for those people that want to use scheduled wakeup and shutdown to record scheduled shows to save on power consumption. Prior to this the Frontend would always start up which in turn meant that the backend would never shutdown when the recording had finished thus defeating the whole purpose.
The Welcome screen will show the status of the backend and wait for you to manually start the frontend with your remote.
Using MythWelcome/MythShutdown with ACPI
See the ACPI_Wakeup page for details on setting up ACPI Wakeup.
MythShutdown program
The mythshutdown command line utility is a multi-purpose helper program used by both mythbackend and mythwelcome. The program needs to be configured to work properly by editing the settings in the GUI.
See Mythshutdown for details.
Mythwelcome/Mythshutdown Settings
Like most of MythTV Mythwelcome and Mythshutdown store their settings in the myth database. All of the settings are settable from the GUI. There are two separate settings pages. One is shown by starting mythwelcome with the -s/--setup parameter or by pressing the 'SHOWSETTINGS' key (defaults to F11 key) in Mythwelcome. You will probably only ever set these options once when you first setup Mythwelcome.
Command to Set Wakeup Time Command to run to set the ACPI alarm in bios. The $time variable will contain the next wakeup time Wakeup time format Format for the time string passed to the 'Set Wakeup Time Command. Set to 'time_t' for seconds since epoch. nvram-wakeup Restart Command Must be set to a blank value if using ACPI wakeup. Command to reboot Command used to reboot system. Command to shutdown Command used to shutdown system. Command to run Xterm This is the command to use to open an XTerm window. Leave blank to disable this feature. Tip: If the default font size is too small to see on your TV change the default setting to: 'xterm -fa Courier -fs 14' to change the font style and size. Command to start the Frontend This is the command mythwelcome should use to start the FE. It is usefull if you want to change the verbose level or add a log file to output message etc.
The second set of settings are available by pressing 'i/INFO' key in mythwelcome and allows you to setup the daily wakeup/shutdown periods and control whether to automatically start the mythfrontend when mythwelcome is started and it is determined that it was started manually.
Period 1 Start Time - These setting determine a period of time that the master backend Period 1 End Time should always wake up for. Set both times to 00:00 to disable this feature. Period 2 Start Time - Second wakeup/shutdown period settings. Period 2 End Time Note: Period 1 and period 2 should be in correct chronological order. So for example if you have two periods 10:00-13:00 and 19:00-22:00 then 10:00-13:00 must be period 1 and 19:00-22:00 must be period 2. This is because if the start times for both daily wakeup periods has passed for today then the next wake time will be set to the first daily wakeup time tomorrow even if the second daily wakeup time is before the first. Automatically Start - Normally when mythwelcome starts up it checks to see whether Mythfrontend the system was started to record something or because of a wakeup/shutdown period. If not it will automatically start the frontend. You can disable this feature by unchecking this option. Shutdown with Master - (Frontend only machines). If set mythwelcome will shutdown this system Backend when the master backend shutsdown.
A popup menu is available by pressing the 'm/MENU' key in mythwelcome and allows you to lock/unlock the machine from shutting down, run mythfilldatabase or do a shutdown now.
POPUP MENU If you press the m/MENU key mythwelcome will display a popup menu with the following options. Lock Shutdown - Prevents the system from shutting down even if it is idle (see also below) Unlock Shutdown - Allows the system to shutdown when it is idle (see also below). Run Mythfilldatabase - Force mythfilldatabase to run now. Shutdown Now - Force the system to shutdown even if it is not idle or is in a wakeup/shutdown period. FE only machines simply shutdown using the 'Poweroff command' that has been setup in settings. Master BE machines will not shutdown if the backend is recording or is about to start recording otherwise mythwelcome sets the time of the next wakeup and shuts down the system. Requires sudo to be setup properly to allow mythwelcome to call the mythshutdown program with root privileges. See above. Exit - Exit the mythwelcome application. Cancel - Cancel the popup menu.
Don't forget: you will most likely need to set up sudo, as well.
Start xterm
There is a hidden feature that allows you to start an xterm (or anything else really) from the mythwelcome screen. Useful if you need to do some trouble shooting. You can access it by pressing the F12 key (default key binding). You can enter the command line string that will be used to start the xterm / program on the Mythshutdown settings page (F11 key).
To disable this feature, just delete the commandline setting
(Un)Lock shutdown
An even more "hidden" (undocumented) feature is that you can lock / unlock mythshutdown from the mythwelcome screen with a single keypress.
This can be achieved from the popup menu (see above), or by just pressing 0
Exit mythwelcome
Also undocumented is that pressing END (NEXTVIEW keybinding), then mythwelcome will exit.
evilwm
mythwelcome is known to have focus problems with evilwm. If you are experiencing any problems try running mythwelcome under a xterm, i.e.
xterm -e mythwelcome
Configuring the Cases Power Button to Shutdown via Mythwelcome (optional)
Reconfiguring the cases power button to kill the mythfrontend is an easy way to trigger a clean/managed shutdown from a hardware control. By killing mythfrontend, mythwelcome will manage a clean shutdown (i.e when mythbackend is not busy recording... or locked e.t.c.).
The following was tested on Mythbuntu / Ubuntu 11.04 32bit
Step 1: Backup the following (in case you need to revert): sudo cp -p /etc/acpi/powerbtn.sh /etc/acpi/powerbtn.sh.orig
Step 2: Comment out (or remove) the following line in /etc/acpi/powerbtn.sh /sbin/shutdown -h now "Power button pressed"
Step 3: Directly under the commented out line, add: /usr/bin/killall mythfrontend.real
Archive: Using mythwelcome with nvram-wakeup
Configuration
REALLY-QUICK START
If you're in a desperate hurry:
Run mythwelcome --setup from a terminal and edit the settings to suit your setup.
Change your system startup to run mythwelcome instead of mythfrontend.
Change the General=>Shutdown/Wakeup Options in mythtv-setup (MythTV Backend Setup) to call the mythshutdown program.
If your mythtv user is not root you will need to run Mythshutdown with root privileges, see the section below on root privileges
And if you start wondering why it doesn't work, come back and read the rest of this article.
Prerequisites
You should have already installed and have a working nvram-wakeup setup including modifying your bootloader menu to add a Poweroff menu option if your bios requires a reboot when setting the wakeup time in the bios.
Mythwelcome/Mythshutdown Settings
Like most of MythTV Mythwelcome and Mythshutdown store their settings in the myth database. All of the settings are settable from the GUI. There are two separate settings pages. One is shown by starting mythwelcome with the -s/--setup parameter or by pressing the 'SHOWSETTINGS' key (defaults to F11 key) in Mythwelcome. You will probably only ever set these options once when you first setup Mythwelcome.
nvram-wakeup command - command to set wakeup time in bios ''recent changes(post 0.20.2) to the time format code cause problems'' nvram-wakeup only accepts time_t (seconds since unix epoch) as a date/time format. mythshutdown only uses ISO-8601 (yyyy-MM-ddThh:mm:ss). Both programs now use the same setting name in the database for their format token. Since getting the wakeup time in the BIOS involves using both programs, it's now impossible. You can get around this like this "date -d "`echo $time | sed "s/T/ /"`" +%s | xargs nvram-wakeup -s" Replace the preset arguments on the end with the ones that work for you. The sed is in there to strip the "T" because gnu date can't parse ISO-8601 format properly (a bug known for at least 3 years), despite being able to produce it. if you are really lucky nvram-wakeup will be able to recognise your M/B automatically "/usr/sbin/nvram-wakeup" if you need to explicitly set the info-writer use something like this "/usr/sbin/nvram-wakeup -A -I aopen_ax37" if you need to use a custom config file use something like this "/usr/sbin/nvram-wakeup -A -C /etc/nvram-wakeup.conf" Note that Mythwelcome will append "--settime xxxxxxxxxx" to this command where xxxxxxxxxx is the next wakeup time in UTC format. nvram-wakeup restart - command to set which bootloader menu option to use command after next reboot. This command is run if your bios requires you to reboot to allow nvram-wakeup settings to take effect. Leave blank if your bios doesn't require a reboot. older versions of grub require something like this "echo 'savedefault --default=1 --once quit' | /sbin/grub" (Note use: \' for the single quotes when entering the command else it wont save) newer versions of grub can use something like this "grub-set-default 1" lilo users should use something like this "lilo -R PowerOff" OpenSUSE Users should use "/usr/sbin/grubonce x" (run as root) where x is the menu entry in your grub boot menu. If you run "grubonce" with no prarameters it will print out boot the menu list Poweroff Command - The command mythshutdown should use to poweroff the computer. e.g. "/sbin/poweroff" Reboot Command - The command mythshutdown should use to reboot the computer. Used when your BIOS requires a reboot to allow nvram-wakeup settings to take effect. e.g. "/sbin/reboot" - if bios requires a reboot. e.g. "/sbin/poweroff" - important to include this if bios does not require a reboot. Start XTerm Command - This is the command to use to open an XTerm window. Leave blank to disable this feature. Tip: If the default font size is too small to see on your TV change the default setting to: 'xterm -fa Courier -fs 14' to change the font style and size. Start Frontend Command - This is the command mythwelcome should use to start the FE. It is usefull if you want to change the verbose level or add a log file to output message etc.
The second set of settings are available by pressing 'i/INFO' key in mythwelcome and allows you to setup the daily wakeup/shutdown periods and control whether to automatically start the mythfrontend when mythwelcome is started and it is determined that it was started manually.
Period 1 Start Time - These setting determine a period of time that the master backend Period 1 End Time should always wake up for. Set both times to 00:00 to disable this feature. Period 2 Start Time - Second wakeup/shutdown period settings. Period 2 End Time Note: Period 1 and period 2 should be in correct chronological order. So for example if you have two periods 10:00-13:00 and 19:00-22:00 then 10:00-13:00 must be period 1 and 19:00-22:00 must be period 2. This is because if the start times for both daily wakeup periods has passed for today then the next wake time will be set to the first daily wakeup time tomorrow even if the second daily wakeup time is before the first. Automatically Start - Normally when mythwelcome starts up it checks to see whether Mythfrontend the system was started to record something or because of a wakeup/shutdown period. If not it will automatically start the frontend. You can disable this feature by unchecking this option. Shutdown with Master - (Frontend only machines). If set mythwelcome will shutdown this system Backend when the master backend shutsdown.
MythBackend setup options
The mythbackend needs to co-operate with mythwelcome to work as intended. It does this by calling the helper program 'mythshutdown' to check whether it is safe to shutdown, to set the time to wake up for the next scheduled recording and to do the actual shutdown.
You should run mythtv-setup and on the Shutdown/Wakeup Options page set the following settings:
Block shutdown before client connected: should be checked Idletimeout (secs): any value greater that 0 Wakeup time format: yyyy-MM-ddThh:mm Set wakeup time command: mythshutdown --setwakeup $time Server Halt command: mythshutdown --shutdown Pre shutdown check command: mythshutdown --check
Because 'mythshutdown --shutdown' needs to run grub/lilo, reboot, poweroff and nvram-wakeup all of which require root privileges if you don't run the mythbackend as root you will have to use sudo to give mythshutdown root privileges and change the Server Halt command to 'sudo -H mythshutdown --shutdown'.
You will have to restart the backend for the new settings to take effect.
Bootloader setup
If your motherboard/bios requires a reboot after changing the startup time in the bios with nvram-wakeup you should configure grub/lilo with a special menu boot option to reboot and immediately shutdown.
In addition, if your /boot directory is in another filesystem it may not be mounted automatically to protect the kernel. In these cases, instead of calling grub-set-default directly, you're going to need to use a shell script that mounts the /boot filesystem first.
Grub Users Only
Simply add the following menu boot option to your grub.conf file:
title=PowerOff savedefault 0 cat /boot/grub/default halt
You should change the '0' to the menu item number you want to boot normally by default. Also add 'default saved' towards the top of the file. The command to read the file is to force grub to sync the file to disk. Some versions have a bug which means they do not do this before the halt executes.
Set the nvram-wakeup restart command to '/sbin/grub-set-default 1'. The 1 should be the menu item number of the PowerOff menu item you added above starting from 0.
Lilo Users Only
As part of nvram-wakeup you can download some kernel images that do nothing but shutdown the system. (see http://sourceforge.net/project/showfiles.php?group_id=35022&package_id=91149)
Add a boot option to the lilo.conf file such as:
image=/boot/bzimage.poweroff label=PowerOff
Change the nvram-wakeup restart command to 'lilo -R PowerOff'
See the nvram-wakeup documentation for more info on how to setup lilo.
Allow a user to run the MythShutdown program with root privileges
Because you would normally run mythwelcome and the mythshutdown script as a normal user without root privileges you will need to setup sudo to allow you to run the mythshutdown --shutdown as the root user to allow it to run reboot, poweroff, grub/lilo and nvram-wakeup.
Add the following line to the end of your '/etc/sudoers' file.
Note: This file must be edited by using the command:
sudo visudo
Change mythtv to the user you use to run mythwelcome and the mythshutdown program. You may also have to change the path to mythshutdown to suit your setup.
%mythtv localhost = NOPASSWD: /usr/bin/mythshutdown
This is another example sudo setup:
# this defaults setting is reported to be required on fedora. # check sudoers(5) for what the default is on your system Defaults:mythtv !requiretty Cmnd_Alias SHUTDOWN = /usr/bin/mythshutdown, /bin/sh -c /usr/bin/setwakeup.sh [0-9]*, /sbin/shutdown mythtv localhost = NOPASSWD: SHUTDOWN
Then in mythtv-setup change the "setwakeup time command" to
sudo -H mythshutdown --setwakeup $time