* [Buildroot] [PATCH] package/tvheadend: change configuration directory @ 2016-11-28 9:45 Damjan Marion 2016-11-28 20:56 ` Thomas Petazzoni 2016-11-30 22:10 ` Yann E. MORIN 0 siblings, 2 replies; 10+ messages in thread From: Damjan Marion @ 2016-11-28 9:45 UTC (permalink / raw) To: buildroot Currently tvheadend configuration is stored in /home/tvheadend/.hts/tvheadend. This patch changes this location to /etc/tvheadend which seems to be more appropriate place. Signed-off-by: Damjan Marion <damjan.marion@gmail.com> --- package/tvheadend/S99tvheadend | 4 ++-- package/tvheadend/tvheadend.mk | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/package/tvheadend/S99tvheadend b/package/tvheadend/S99tvheadend index 65669ce..98167bf 100644 --- a/package/tvheadend/S99tvheadend +++ b/package/tvheadend/S99tvheadend @@ -13,7 +13,7 @@ PIDFILE=/var/run/$NAME.pid # Read configuration variable file if it is present [ -r "/etc/default/${NAME}" ] && . "/etc/default/${NAME}" -ARGS="-f" +ARGS="-f -c /etc/tvheadend" [ -z "${TVH_USER}" ] || ARGS="${ARGS} -u ${TVH_USER}" [ -z "${TVH_GROUP}" ] || ARGS="${ARGS} -g ${TVH_GROUP}" [ -z "${TVH_ADAPTERS}" ] || ARGS="${ARGS} -a ${TVH_ADAPTERS}" @@ -22,7 +22,7 @@ ARGS="-f" [ "${TVH_DEBUG}" = "1" ] && ARGS="${ARGS} -s" # If first run, start in wizard mode -if [ -z "$(ls -1 /home/tvheadend/.hts/tvheadend/accesscontrol/ 2>/dev/null)" ]; then +if [ -z "$(ls -1 /etc/tvheadend/accesscontrol/ 2>/dev/null)" ]; then ARGS="${ARGS} -C" fi diff --git a/package/tvheadend/tvheadend.mk b/package/tvheadend/tvheadend.mk index a3afec8..11e56b6 100644 --- a/package/tvheadend/tvheadend.mk +++ b/package/tvheadend/tvheadend.mk @@ -93,6 +93,7 @@ endef define TVHEADEND_INSTALL_TARGET_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install + mkdir -p $(TARGET_DIR)/etc/tvheadend endef # Remove documentation and source files that are not needed because we @@ -116,10 +117,10 @@ define TVHEADEND_INSTALL_INIT_SYSV endef define TVHEADEND_USERS - tvheadend -1 tvheadend -1 * /home/tvheadend - video TVHeadend daemon + tvheadend -1 tvheadend -1 * - - video TVHeadend daemon endef define TVHEADEND_PERMISSIONS - /home/tvheadend r 0700 tvheadend tvheadend - - - - - + /etc/tvheadend r 0700 tvheadend tvheadend - - - - - endef $(eval $(generic-package)) -- 2.9.3 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH] package/tvheadend: change configuration directory 2016-11-28 9:45 [Buildroot] [PATCH] package/tvheadend: change configuration directory Damjan Marion @ 2016-11-28 20:56 ` Thomas Petazzoni 2016-11-30 22:10 ` Yann E. MORIN 1 sibling, 0 replies; 10+ messages in thread From: Thomas Petazzoni @ 2016-11-28 20:56 UTC (permalink / raw) To: buildroot Hello, I'm adding Yann E. Morin and Bernd Kuhls in Cc, since they are listed in our DEVELOPERS file for this package. Yann, Bernd, could you have a look at the below patch? Damjan: next time, could you use our get-developers script to get the proper list of recipients for your patches, so that the appropriate developers get automatically Cc'ed? Thanks! Thomas On Mon, 28 Nov 2016 10:45:12 +0100, Damjan Marion wrote: > Currently tvheadend configuration is stored in > /home/tvheadend/.hts/tvheadend. This patch changes this location > to /etc/tvheadend which seems to be more appropriate place. > > Signed-off-by: Damjan Marion <damjan.marion@gmail.com> > --- > package/tvheadend/S99tvheadend | 4 ++-- > package/tvheadend/tvheadend.mk | 5 +++-- > 2 files changed, 5 insertions(+), 4 deletions(-) > > diff --git a/package/tvheadend/S99tvheadend b/package/tvheadend/S99tvheadend > index 65669ce..98167bf 100644 > --- a/package/tvheadend/S99tvheadend > +++ b/package/tvheadend/S99tvheadend > @@ -13,7 +13,7 @@ PIDFILE=/var/run/$NAME.pid > # Read configuration variable file if it is present > [ -r "/etc/default/${NAME}" ] && . "/etc/default/${NAME}" > > -ARGS="-f" > +ARGS="-f -c /etc/tvheadend" > [ -z "${TVH_USER}" ] || ARGS="${ARGS} -u ${TVH_USER}" > [ -z "${TVH_GROUP}" ] || ARGS="${ARGS} -g ${TVH_GROUP}" > [ -z "${TVH_ADAPTERS}" ] || ARGS="${ARGS} -a ${TVH_ADAPTERS}" > @@ -22,7 +22,7 @@ ARGS="-f" > [ "${TVH_DEBUG}" = "1" ] && ARGS="${ARGS} -s" > > # If first run, start in wizard mode > -if [ -z "$(ls -1 /home/tvheadend/.hts/tvheadend/accesscontrol/ 2>/dev/null)" ]; then > +if [ -z "$(ls -1 /etc/tvheadend/accesscontrol/ 2>/dev/null)" ]; then > ARGS="${ARGS} -C" > fi > > diff --git a/package/tvheadend/tvheadend.mk b/package/tvheadend/tvheadend.mk > index a3afec8..11e56b6 100644 > --- a/package/tvheadend/tvheadend.mk > +++ b/package/tvheadend/tvheadend.mk > @@ -93,6 +93,7 @@ endef > > define TVHEADEND_INSTALL_TARGET_CMDS > $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install > + mkdir -p $(TARGET_DIR)/etc/tvheadend > endef > > # Remove documentation and source files that are not needed because we > @@ -116,10 +117,10 @@ define TVHEADEND_INSTALL_INIT_SYSV > endef > > define TVHEADEND_USERS > - tvheadend -1 tvheadend -1 * /home/tvheadend - video TVHeadend daemon > + tvheadend -1 tvheadend -1 * - - video TVHeadend daemon > endef > define TVHEADEND_PERMISSIONS > - /home/tvheadend r 0700 tvheadend tvheadend - - - - - > + /etc/tvheadend r 0700 tvheadend tvheadend - - - - - > endef > > $(eval $(generic-package)) -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH] package/tvheadend: change configuration directory 2016-11-28 9:45 [Buildroot] [PATCH] package/tvheadend: change configuration directory Damjan Marion 2016-11-28 20:56 ` Thomas Petazzoni @ 2016-11-30 22:10 ` Yann E. MORIN 2016-11-30 22:27 ` Thomas Petazzoni 2016-11-30 22:27 ` Damjan Marion 1 sibling, 2 replies; 10+ messages in thread From: Yann E. MORIN @ 2016-11-30 22:10 UTC (permalink / raw) To: buildroot Damjan, All, On 2016-11-28 10:45 +0100, Damjan Marion spake thusly: > Currently tvheadend configuration is stored in > /home/tvheadend/.hts/tvheadend. This patch changes this location > to /etc/tvheadend which seems to be more appropriate place. I disagree. This location is not only about "configuration" but also about "state". It contains user-specified settings, recordings, DVB scan status... For example, accesscontrol can be updated from the WebUI to add/remopve users or change their rights. I don't remember the full set of stuff that gets in there, but there's almost no "configuration", but mostly "settings" than can be updated a lot; the most ovious being records (not the media streams, but the settings like channel, start and end times...) Besides, /etc can be read-only, and we need a writable location. And /etc is not a correct location to expect to be writable. /home is most probably writable by users (although we do not provide that guarantee in Buildroot, it is still much better than /etc). So, it does not belong to /etc. What was your rationale for moving it, besides "it seems more appropriate" ? Regards, Yann E. MORIN. > Signed-off-by: Damjan Marion <damjan.marion@gmail.com> > --- > package/tvheadend/S99tvheadend | 4 ++-- > package/tvheadend/tvheadend.mk | 5 +++-- > 2 files changed, 5 insertions(+), 4 deletions(-) > > diff --git a/package/tvheadend/S99tvheadend b/package/tvheadend/S99tvheadend > index 65669ce..98167bf 100644 > --- a/package/tvheadend/S99tvheadend > +++ b/package/tvheadend/S99tvheadend > @@ -13,7 +13,7 @@ PIDFILE=/var/run/$NAME.pid > # Read configuration variable file if it is present > [ -r "/etc/default/${NAME}" ] && . "/etc/default/${NAME}" > > -ARGS="-f" > +ARGS="-f -c /etc/tvheadend" > [ -z "${TVH_USER}" ] || ARGS="${ARGS} -u ${TVH_USER}" > [ -z "${TVH_GROUP}" ] || ARGS="${ARGS} -g ${TVH_GROUP}" > [ -z "${TVH_ADAPTERS}" ] || ARGS="${ARGS} -a ${TVH_ADAPTERS}" > @@ -22,7 +22,7 @@ ARGS="-f" > [ "${TVH_DEBUG}" = "1" ] && ARGS="${ARGS} -s" > > # If first run, start in wizard mode > -if [ -z "$(ls -1 /home/tvheadend/.hts/tvheadend/accesscontrol/ 2>/dev/null)" ]; then > +if [ -z "$(ls -1 /etc/tvheadend/accesscontrol/ 2>/dev/null)" ]; then > ARGS="${ARGS} -C" > fi > > diff --git a/package/tvheadend/tvheadend.mk b/package/tvheadend/tvheadend.mk > index a3afec8..11e56b6 100644 > --- a/package/tvheadend/tvheadend.mk > +++ b/package/tvheadend/tvheadend.mk > @@ -93,6 +93,7 @@ endef > > define TVHEADEND_INSTALL_TARGET_CMDS > $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install > + mkdir -p $(TARGET_DIR)/etc/tvheadend > endef > > # Remove documentation and source files that are not needed because we > @@ -116,10 +117,10 @@ define TVHEADEND_INSTALL_INIT_SYSV > endef > > define TVHEADEND_USERS > - tvheadend -1 tvheadend -1 * /home/tvheadend - video TVHeadend daemon > + tvheadend -1 tvheadend -1 * - - video TVHeadend daemon > endef > define TVHEADEND_PERMISSIONS > - /home/tvheadend r 0700 tvheadend tvheadend - - - - - > + /etc/tvheadend r 0700 tvheadend tvheadend - - - - - > endef > > $(eval $(generic-package)) > -- > 2.9.3 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot -- .-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH] package/tvheadend: change configuration directory 2016-11-30 22:10 ` Yann E. MORIN @ 2016-11-30 22:27 ` Thomas Petazzoni 2016-11-30 22:28 ` Damjan Marion 2016-11-30 22:27 ` Damjan Marion 1 sibling, 1 reply; 10+ messages in thread From: Thomas Petazzoni @ 2016-11-30 22:27 UTC (permalink / raw) To: buildroot Hello, On Wed, 30 Nov 2016 23:10:53 +0100, Yann E. MORIN wrote: > On 2016-11-28 10:45 +0100, Damjan Marion spake thusly: > > Currently tvheadend configuration is stored in > > /home/tvheadend/.hts/tvheadend. This patch changes this location > > to /etc/tvheadend which seems to be more appropriate place. > > I disagree. This location is not only about "configuration" but also > about "state". It contains user-specified settings, recordings, DVB scan > status... > > For example, accesscontrol can be updated from the WebUI to add/remopve > users or change their rights. I don't remember the full set of stuff > that gets in there, but there's almost no "configuration", but mostly > "settings" than can be updated a lot; the most ovious being records (not > the media streams, but the settings like channel, start and end times...) > > Besides, /etc can be read-only, and we need a writable location. And > /etc is not a correct location to expect to be writable. /home is most > probably writable by users (although we do not provide that guarantee in > Buildroot, it is still much better than /etc). > > So, it does not belong to /etc. > > What was your rationale for moving it, besides "it seems more appropriate" ? Could we have the configuration in /etc and the state in /var, like most sane Linux daemons do? Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH] package/tvheadend: change configuration directory 2016-11-30 22:27 ` Thomas Petazzoni @ 2016-11-30 22:28 ` Damjan Marion 2016-11-30 22:46 ` Thomas Petazzoni 0 siblings, 1 reply; 10+ messages in thread From: Damjan Marion @ 2016-11-30 22:28 UTC (permalink / raw) To: buildroot > On 30 Nov 2016, at 23:27, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote: > > Hello, > > On Wed, 30 Nov 2016 23:10:53 +0100, Yann E. MORIN wrote: > >> On 2016-11-28 10:45 +0100, Damjan Marion spake thusly: >>> Currently tvheadend configuration is stored in >>> /home/tvheadend/.hts/tvheadend. This patch changes this location >>> to /etc/tvheadend which seems to be more appropriate place. >> >> I disagree. This location is not only about "configuration" but also >> about "state". It contains user-specified settings, recordings, DVB scan >> status... >> >> For example, accesscontrol can be updated from the WebUI to add/remopve >> users or change their rights. I don't remember the full set of stuff >> that gets in there, but there's almost no "configuration", but mostly >> "settings" than can be updated a lot; the most ovious being records (not >> the media streams, but the settings like channel, start and end times...) >> >> Besides, /etc can be read-only, and we need a writable location. And >> /etc is not a correct location to expect to be writable. /home is most >> probably writable by users (although we do not provide that guarantee in >> Buildroot, it is still much better than /etc). >> >> So, it does not belong to /etc. >> >> What was your rationale for moving it, besides "it seems more appropriate" ? > > Could we have the configuration in /etc and the state in /var, like most > sane Linux daemons do? +1 -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 1600 bytes Desc: not available URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20161130/c06fbff0/attachment.p7s> ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH] package/tvheadend: change configuration directory 2016-11-30 22:28 ` Damjan Marion @ 2016-11-30 22:46 ` Thomas Petazzoni 2016-11-30 22:52 ` Damjan Marion 0 siblings, 1 reply; 10+ messages in thread From: Thomas Petazzoni @ 2016-11-30 22:46 UTC (permalink / raw) To: buildroot Hello, On Wed, 30 Nov 2016 23:28:30 +0100, Damjan Marion wrote: > > Could we have the configuration in /etc and the state in /var, like most > > sane Linux daemons do? > > +1 Well a +1 here is not really useful. A patch or at least initial investigation of the feasibility would be a lot more useful :-) Thanks, Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH] package/tvheadend: change configuration directory 2016-11-30 22:46 ` Thomas Petazzoni @ 2016-11-30 22:52 ` Damjan Marion 2016-12-01 8:19 ` Thomas Petazzoni 0 siblings, 1 reply; 10+ messages in thread From: Damjan Marion @ 2016-11-30 22:52 UTC (permalink / raw) To: buildroot > On 30 Nov 2016, at 23:46, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote: > > Hello, > > On Wed, 30 Nov 2016 23:28:30 +0100, Damjan Marion wrote: > >>> Could we have the configuration in /etc and the state in /var, like most >>> sane Linux daemons do? >> >> +1 > > Well a +1 here is not really useful. A patch or at least initial > investigation of the feasibility would be a lot more useful :-) I can resubmit the patch if we all agree that /var is better place. I just wanted to say that I agree with you... -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 1600 bytes Desc: not available URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20161130/ec8a0819/attachment.p7s> ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH] package/tvheadend: change configuration directory 2016-11-30 22:52 ` Damjan Marion @ 2016-12-01 8:19 ` Thomas Petazzoni 2016-12-01 9:04 ` Damjan Marion 0 siblings, 1 reply; 10+ messages in thread From: Thomas Petazzoni @ 2016-12-01 8:19 UTC (permalink / raw) To: buildroot Hello, On Wed, 30 Nov 2016 23:52:06 +0100, Damjan Marion wrote: > > Well a +1 here is not really useful. A patch or at least initial > > investigation of the feasibility would be a lot more useful :-) > > I can resubmit the patch if we all agree that /var is better place. > I just wanted to say that I agree with you... Well, the problem is that your change would put both the configuration and state into /var. While the correct thing is to have the configuration in /etc and the state in /var. Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH] package/tvheadend: change configuration directory 2016-12-01 8:19 ` Thomas Petazzoni @ 2016-12-01 9:04 ` Damjan Marion 0 siblings, 0 replies; 10+ messages in thread From: Damjan Marion @ 2016-12-01 9:04 UTC (permalink / raw) To: buildroot > On 1 Dec 2016, at 09:19, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote: > > Hello, > > On Wed, 30 Nov 2016 23:52:06 +0100, Damjan Marion wrote: > >>> Well a +1 here is not really useful. A patch or at least initial >>> investigation of the feasibility would be a lot more useful :-) >> >> I can resubmit the patch if we all agree that /var is better place. >> I just wanted to say that I agree with you... > > Well, the problem is that your change would put both the configuration > and state into /var. While the correct thing is to have the > configuration in /etc and the state in /var. tvheadend doesn?t have static configuration beside few command line parameters which are already in /etc/default/tvheadend. Everything else is in json encoded files and it is changed via web ui. i.e. when you add new user via web ui, daemon will create new json file with all user parameters. -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 1600 bytes Desc: not available URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20161201/ce72ca5a/attachment.p7s> ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH] package/tvheadend: change configuration directory 2016-11-30 22:10 ` Yann E. MORIN 2016-11-30 22:27 ` Thomas Petazzoni @ 2016-11-30 22:27 ` Damjan Marion 1 sibling, 0 replies; 10+ messages in thread From: Damjan Marion @ 2016-11-30 22:27 UTC (permalink / raw) To: buildroot > On 30 Nov 2016, at 23:10, Yann E. MORIN <yann.morin.1998@free.fr> wrote: > > Damjan, All, > > On 2016-11-28 10:45 +0100, Damjan Marion spake thusly: >> Currently tvheadend configuration is stored in >> /home/tvheadend/.hts/tvheadend. This patch changes this location >> to /etc/tvheadend which seems to be more appropriate place. > > I disagree. This location is not only about "configuration" but also > about "state". It contains user-specified settings, recordings, DVB scan > status... > > For example, accesscontrol can be updated from the WebUI to add/remopve > users or change their rights. I don't remember the full set of stuff > that gets in there, but there's almost no "configuration", but mostly > "settings" than can be updated a lot; the most ovious being records (not > the media streams, but the settings like channel, start and end times...) > > Besides, /etc can be read-only, and we need a writable location. And > /etc is not a correct location to expect to be writable. /home is most > probably writable by users (although we do not provide that guarantee in > Buildroot, it is still much better than /etc). > > So, it does not belong to /etc. ack, what about /var/tvheadend ? > > What was your rationale for moving it, besides "it seems more appropriate? ? nothing critical, just having same behavior like other system daemons I newer saw before system daemon storing it?s data in the user folder. -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 1600 bytes Desc: not available URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20161130/6041edb8/attachment.p7s> ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2016-12-01 9:04 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-11-28 9:45 [Buildroot] [PATCH] package/tvheadend: change configuration directory Damjan Marion 2016-11-28 20:56 ` Thomas Petazzoni 2016-11-30 22:10 ` Yann E. MORIN 2016-11-30 22:27 ` Thomas Petazzoni 2016-11-30 22:28 ` Damjan Marion 2016-11-30 22:46 ` Thomas Petazzoni 2016-11-30 22:52 ` Damjan Marion 2016-12-01 8:19 ` Thomas Petazzoni 2016-12-01 9:04 ` Damjan Marion 2016-11-30 22:27 ` Damjan Marion
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox