[SOLVED] Why can't I change guisettings.xml ?

  • Apologies for a noob question, but I am stuck.

    I need to enable the webserver in /userdata/guisettings.xml, but every time I use nano to change this line :

    <setting id="services.webserver" default="true">false</setting>

    ...after I reboot it reverts from true to false. I have tried systemctl stop kodi then nano to edit the file, and then systemctl start kodi.

    But it always reverts.

    How can I edit this file and get the webserver running again?

  • I've set one via the UI and I've no idea where it's been stored; but not in cleartext in guisettings.xml so I'd guess it's somewhere in the MySQL DB that my install uses, and right now I don't have the option to go poking around in DB tables to check. However, if it can be set via guisettings.xml the format is probably be the same as the webserver username, so crib that and experiment. If no difference, revert the change and no harm is done.

  • Sorry, I don't follow.

    I'm just trying to use a text editor like nano change false to true and something is overwriting my change, always reverting it back to false.

    There appears to be some trick to editing /userdata/guisettings.xml to avoid this.

    But what is the trick?

  • As mentioned, I tried systemctl stop kodi, but the value still reverted to false when I rebooted.

    As for the default value, I want true, not false, like this:

    <setting id="services.webserver" default="true">true</setting>

    But on reboot it looks like this:

    <setting id="services.webserver" default="true">false</setting>

  • It's a Mac Mini.

    info <general>: Starting Kodi (21.2 (21.2.0) Git:21.2-Omega). Platform: Linux x86 64-bit
    info <general>: Using Release Kodi x64
    info <general>: Kodi compiled 2025-01-19 by GCC 13.2.0 for Linux x86 64-bit version 6.6.71 (394823)
    info <general>: Running on LibreELEC (official): 12.0.2, kernel: Linux x86 64-bit version 6.6.71
    info <general>: FFmpeg version/source: 6.0.1
    info <general>: Host CPU:       Intel(R) Core(TM) i7-3615QM CPU @ 2.30GHz, 8 cores available

    I can get the exact model of the Mini, if that would help.

    I'm booting it either by pressing the power button or issuing reboot in a shell via ssh.

  • Is LE installed to (and booting from) the internal drive or are you booting from a USB stick? - If booting from a USB stick are you using "run" or "live" mode? .. because "live" does not provide persistent storage so settings will be intentionally wiped/reset on reboot.

    NB: Kodi is a GUI driven app. Connecting it to a TV/monitor for 2 mins to configure things as you need them to be is usually easier than trying to shortcut things from the console.

  • LE is installed on the SSD, yes. No USB stick. It boots into LE.

    This is going to sound silly, but ... the Mac Mini is hooked up to a projector via HDMI but in a place where I can't easily connect a USB cable for a keyboard. I have been using the iOS remote app, but obviously that needs network access which got disabled by mistake.

    If it's really impossible to edit guisettings.xml, then I can order a 5m USB cable to reach the Mini.

    I guess I'm just baffled that I can't edit an XML settings file and reboot.

    Seems like a really basic, standard task on Linux, no... ?

  • Neither XML nor Linux question, but how kodi behave.

    You have to use

    Code
    <setting id="services.webserver">true</setting>

    without the default="true" attribute.


    guisettings.xml is owned by kodi. To force a specific option it is recommended to create an advancedsettings.xml entry.


    Usually you can still use kodi-remote via ssh to control the UI.