Merge pull request #794 from croneter/fix-nfs-masterlock
Fix Kodi Masterlock for nfs paths (requires restart)
This commit is contained in:
commit
de19813a85
1 changed files with 32 additions and 22 deletions
|
@ -466,6 +466,31 @@ class InitialSetup(object):
|
||||||
server['machineIdentifier'], server['ip'], server['port'],
|
server['machineIdentifier'], server['ip'], server['port'],
|
||||||
server['scheme'])
|
server['scheme'])
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _add_sources(root, extension):
|
||||||
|
changed = False
|
||||||
|
count = 2
|
||||||
|
for source in root.findall('.//path'):
|
||||||
|
if source.text == extension:
|
||||||
|
count -= 1
|
||||||
|
if count == 0:
|
||||||
|
# sources already set
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
# Missing smb:// occurences, re-add.
|
||||||
|
changed = True
|
||||||
|
for _ in range(0, count):
|
||||||
|
source = etree.SubElement(root, 'source')
|
||||||
|
etree.SubElement(
|
||||||
|
source,
|
||||||
|
'name').text = "PlexKodiConnect Masterlock Hack"
|
||||||
|
etree.SubElement(
|
||||||
|
source,
|
||||||
|
'path',
|
||||||
|
{'pathversion': "1"}).text = extension
|
||||||
|
etree.SubElement(source, 'allowsharing').text = "true"
|
||||||
|
return changed
|
||||||
|
|
||||||
def setup(self):
|
def setup(self):
|
||||||
"""
|
"""
|
||||||
Initial setup. Run once upon startup.
|
Initial setup. Run once upon startup.
|
||||||
|
@ -507,28 +532,13 @@ class InitialSetup(object):
|
||||||
with utils.XmlKodiSetting('sources.xml',
|
with utils.XmlKodiSetting('sources.xml',
|
||||||
force_create=True,
|
force_create=True,
|
||||||
top_element='sources') as xml:
|
top_element='sources') as xml:
|
||||||
|
changed = False
|
||||||
|
for extension in ('smb://', 'nfs://'):
|
||||||
root = xml.set_setting(['video'])
|
root = xml.set_setting(['video'])
|
||||||
count = 2
|
changed = self._add_sources(root, extension) or changed
|
||||||
for source in root.findall('.//path'):
|
if changed:
|
||||||
if source.text == "smb://":
|
xml.write_xml = True
|
||||||
count -= 1
|
reboot = True
|
||||||
if count == 0:
|
|
||||||
# sources already set
|
|
||||||
break
|
|
||||||
else:
|
|
||||||
# Missing smb:// occurences, re-add.
|
|
||||||
for _ in range(0, count):
|
|
||||||
source = etree.SubElement(root, 'source')
|
|
||||||
etree.SubElement(
|
|
||||||
source,
|
|
||||||
'name').text = "PlexKodiConnect Masterlock Hack"
|
|
||||||
etree.SubElement(
|
|
||||||
source,
|
|
||||||
'path',
|
|
||||||
{'pathversion': "1"}).text = "smb://"
|
|
||||||
etree.SubElement(source, 'allowsharing').text = "true"
|
|
||||||
if reboot is False:
|
|
||||||
reboot = xml.write_xml
|
|
||||||
except utils.ParseError:
|
except utils.ParseError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue