[mythtv-users] Mythweb missing menu items

Stephen Worthington stephen_agent at jsw.gen.nz
Wed Jul 17 10:21:34 UTC 2019

On Tue, 16 Jul 2019 21:30:07 +0100, you wrote:

>On 16/07/2019 20:26, bhaskins wrote:
>> On 7/15/2019 3:59 AM, John Pilkington wrote:
>>> On 15/07/2019 03:54, bhaskins wrote:
>>>> My (very) old Mythtv backend has just lost it's hard drive so I am 
>>>> trying to setup a new I3 box.
>>>> My Normal usage is to program shows from my HDHR Prime using Mythweb 
>>>> and then use any one of several frontends for playback.
>>>> The problem is that the part of Mythweb that show " recorded", 
>>>> "manual record", etc is totally missing and it is showing a error 
>>>> that the TV is not set up yet. "No TV Configured"
>>>> This will be a backend only so I'm confused by this.
>>>> Hdhomerunconfig,gui works fine.
>>>> What am I missing?
>>>> Thanks,
>>>>    Bert
>>> Backend-only installations have given problems in the (distant) past. 
>>> Perhaps install frontend packages?  Or give more details.
>>> John P
>> The frontend is installed and it can't find any channels either.
>> That seems to be the problem, I can't setup any channels and if the 
>> starting channel is 0 that of course won't work.
>> There seem to be many items missing in setup that were there in previous 
>> versions and the online documentation refers to these previous versions.
>> Im sorry but I can't remember how I did this last time.
>> Thanks,
>>    Bert
>It looks as if your replies have been off-list.  That's not a good idea 
>because I don't use mythweb or networked tuners.  But the list regularly 
>has posts with network tuner problems caused, IIUC, by the backend being 
>started when the first device comes online instead of waiting until all 
>devices are available.  I start the backend and frontend manually - 
>which works for me;  others may be able to improve on my guesses.

If it is the problem where mythbackend starts when the first network
interface is up (localhost), but before any other networking is up,
the way to tell is to simply restart mytbackend manually.  For Ubuntu:

sudo systemctl restart mythtv-backend

Doing that starts mythbackend well after all the network interfaces
are up and it will then see them and be able to talk to the network
tuners.  Mythbackend it getting started earlier due to the system
startup working better and faster since systemd.  Each new Ubuntu
version is better optimised and 18.04 now starts mythbackend very
quickly after localhost is up, unless it is told not to.  And if you
have the system on an SSD now, that makes more things start faster in
parallel.  So anyone who uses network tuners or external frontends (or
anything that uses the network) with mythbackend now needs the fix for
this.  There are lots of threads about it.  Here is what I post to
tell people how to fix it.

The fix is a bit complicated - you have to make a systemd unit that
tests for the Ethernet interface actually being up and able to pass
traffic, and then have mythbackend wait on that unit before it is
started.  The tools to do this are on my web server.  If you are not
running a server version of Ubuntu and have not disabled
NetworkManager, run the following commands to set it all up.  Watch
out for line wrapping - my email client does that with longer lines
such as the wget commands, so the wget and the URL after it should be
on one line.

sudo su
cd /usr/local/bin
wget http://www.jsw.gen.nz/mythtv/wait-until-pingable.py
chmod u=rwx,g=r,o=r wait-until-pingable.py
systemctl enable NetworkManager-wait-online.service
systemctl start NetworkManager-wait-online.service
cd /etc/systemd/system
mkdir mythtv-backend.service.d
chmod u=rwx,g=rx,o=rx mythtv-backend.service.d
cd mythtv-backend.service.d
chmod u=rw,g=r,o=r mythtv-backend-wait-until-pingable.conf
cd ..
wget http://www.jsw.gen.nz/mythtv/local-network-pingable.service
chmod u=rw,g=r,o=r local-network-pingable.service

Here you will need to change the text in
local-network-pingable.service where it says "switch.jsw.gen.nz" and
replace that with the IP address or DNS name of your first network
tuner (if the tuner is pingable), or otherwise something on your
network such as your switch or router that is normally pingable when
your MythTV box is booting.

Use nano or your favourite editor:

nano local-network-pingable.service

Then save the change and exit from nano or your editor and do these

systemctl enable local-network-pingable.service
systemctl start local-network-pingable.service
systemctl status local-network-pingable.service

The systemctl status command should show that the
local-network-pingable.service has started and the ping worked.  If
not, fix that before proceeding.  Then do these commands:

systemctl daemon-reload

After that, on boot mythbackend will wait for either the ping to work,
or the 30 second timeout specified in the
local-network-pingable.service file.  If you want to change that
timeout, it is the "30" after the ping address.

More information about the mythtv-users mailing list