gerbera / gerbera

UPnP Media Server for 2024: Stream your digital media through your home network and consume it on all kinds of UPnP supporting devices 📱💻📺
https://gerbera.io
Other
1.21k stars 212 forks source link

web interface to edit config.xml #960

Closed EricdeWaal closed 4 years ago

EricdeWaal commented 4 years ago

Would it be very difficult to make a web interface with the possible settings and options that modify config.xml when saved? I am thinking of something like Webmin, which I use to manage some servers, and my homebrew NAS (debian buster) on which I run Gerbera. It would make life a lot easier for newbies, and could be self documented. That way the current elaborate documentation would not be necessary anymore, and it can be updated together with a release, so that the 2 always match. I think it would be a great step forward to making a good product a lot more user friendly!

Eric

whyman commented 4 years ago

I think most of the settings could have a web UI to configure, transcoding comes to mind.

With some options there is a chicken and egg issue, for example network config, as we have a web based UI.

I worry about giving the daemon the option to edit its own config file, seems like a security issue waiting to happen... but I suppose we allow to add random files via web-ui already.

EricdeWaal commented 4 years ago

Hi Ian,

Well, considering that through widely used systems like Webmin, Plesk, DirectAdmin and the likes you can remotely manage an entire server I would not worry about that too much.

And one could have 2 web ui's, one for the media management as we already have, and a separate UI for the system.

If both come default with a proper  authentication already in place, it should be no risk IMHO.

⁣Regards,

Eric

Op 4 aug. 2020 11:22, om 11:22, Ian Whyman notifications@github.com schreef:

I think most of the settings could have a web UI to configure, transcoding comes to mind.

With some options there is a chicken and egg issue, for example network config, as we have a web based UI.

I worry about giving the daemon the option to edit its own config file, seems like a security issue waiting to happen... but I suppose we allow to add random files via web-ui already.

-- You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub: https://github.com/gerbera/gerbera/issues/960#issuecomment-668486669

KarlStraussberger commented 4 years ago

I agree with @whyman that we should not expose all of the settings. But there's plenty of to edit by the user. Maybe we can even allow settings per directory as @ytimenkov proposed.

EricdeWaal commented 4 years ago

Maybe I did not make myself very clear: I did not mean any gui generated by the deamon, just a separate web page that just edits the config file, to make Gerbera more user friendly. So that a user does not need to know all the options, but makes selections from dropdown lists.

Op 4 aug. 2020 13:48, om 13:48, Karlchen notifications@github.com schreef:

I agree with @whyman that we should not expose all of the settings. But there's plenty of to edit by the user. Maybe we can even allow settings per directory as @ytimenkov proposed.

-- You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub: https://github.com/gerbera/gerbera/issues/960#issuecomment-668548554

KarlStraussberger commented 4 years ago

That's exactly what I am thinking of. Plus an extra to configure some folders with different values.

KarlStraussberger commented 4 years ago

I worry about giving the daemon the option to edit its own config file, seems like a security issue waiting to happen... but I suppose we allow to add random files via web-ui already.

@whyman I am considering to extend mt_internal_settings to store all changed values. So ConfigManager can read those values on startup and the rest of the code works as before. Might get a bit tricky for entries that can appear more than once (key; /import/mappings/extension-mimetype/map[42]/attribute:from). This can also be the place to store settings for directories (like resources, new scan options)