xmltv.sock is not configurable
I came across this while attempting to run tvheadend in a diskless setup.
Enabling the External XMLTV grabber will actually create the xmltv.sock in the NFS mounted home directory and its does work. On the next startup, the Path has now "changed" to be the full path to the actual socket (i.e. the NFS path)
I really think that the the path to the xmltv.sock should be configurable.
The perhaps "correct" way to do this (under linux, at least) is to drop a tvheadend.conf file into /etc/tmpfiles.d with the following content:
d /run/tvheadend 0755 hts video
And then default the path to being under /run/tvheadend. One could also move the tvheadend PID file there and change the tvheadend.service systemd control file.