From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from eddie.linux-mips.org ([148.251.95.138] helo=cvs.linux-mips.org) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1k2Vwp-00050G-C6 for ptxdist@pengutronix.de; Mon, 03 Aug 2020 10:35:56 +0200 Received: (from localhost user: 'ladis' uid#1021 fake: STDIN (ladis@eddie.linux-mips.org)) by eddie.linux-mips.org id S23991082AbgHCIfxDCF2X (ORCPT ); Mon, 3 Aug 2020 10:35:53 +0200 Date: Mon, 3 Aug 2020 10:35:52 +0200 From: Ladislav Michl Message-ID: <20200803083552.GA985634@lenoch> References: <20200802174609.GA776640@lenoch> <20200803063606.GK17724@pengutronix.de> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20200803063606.GK17724@pengutronix.de> Subject: Re: [ptxdist] [PATCH] gpsd: fix gpsdctl@.service List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: ptxdist@pengutronix.de On Mon, Aug 03, 2020 at 08:36:06AM +0200, Michael Olbrich wrote: > On Sun, Aug 02, 2020 at 07:46:09PM +0200, Ladislav Michl wrote: > > gpsdctl@.service is supposed to call gpsdctl which is not installed > > at all. Also fix gpsctl vs gpsdctl confusion. > > > > Signed-off-by: Ladislav Michl > > --- > > projectroot/usr/lib/systemd/system/gpsdctl@.service | 4 ++-- > > rules/gpsd.in | 9 +++++++++ > > rules/gpsd.make | 8 +++++--- > > 3 files changed, 16 insertions(+), 5 deletions(-) > > > > diff --git a/projectroot/usr/lib/systemd/system/gpsdctl@.service b/projectroot/usr/lib/systemd/system/gpsdctl@.service > > index 24d291408..6266fd8b8 100644 > > --- a/projectroot/usr/lib/systemd/system/gpsdctl@.service > > +++ b/projectroot/usr/lib/systemd/system/gpsdctl@.service > > @@ -8,5 +8,5 @@ After=dev-%i.device > > Type=oneshot > > Environment="GPSD_SOCKET=/var/run/gpsd.sock" > > RemainAfterExit=yes > > -ExecStart=/usr/bin/gpsdctl add /dev/%I > > -ExecStop=/usr/bin/gpsdctl remove /dev/%I > > +ExecStart=/usr/sbin/gpsdctl add /dev/%I > > +ExecStop=/usr/sbin/gpsdctl remove /dev/%I > > diff --git a/rules/gpsd.in b/rules/gpsd.in > > index b69570af0..b69accac3 100644 > > --- a/rules/gpsd.in > > +++ b/rules/gpsd.in > > @@ -260,10 +260,19 @@ menu "install options" > > queries with a format that is substantially easier to > > parse than the NMEA 0183 emitted by most GPS receivers. > > > > + config GPSD_GPSDCTL > > + bool > > + prompt "gpdsctl" > > + help > > + gpdsctl is a tool for sending commands to an instance of > > + gpsd over its control socket to add or remove devices from > > + the daemon's device list. > > + > > config GPSD_SYSTEMD_UNIT > > bool > > default y > > depends on INITMETHOD_SYSTEMD && GPSD_GPSD > > + select GPSD_GPSDCTL > > prompt "systemd unit files for gpsd" > > > > config GPSD_GPSD_ARGS > > diff --git a/rules/gpsd.make b/rules/gpsd.make > > index 7f7e369f3..48bb643bc 100644 > > --- a/rules/gpsd.make > > +++ b/rules/gpsd.make > > @@ -43,7 +43,8 @@ GPSD_PROGS-$(PTXCONF_GPSD_GPSMON) += gpsmon > > GPSD_PROGS-$(PTXCONF_GPSD_NTPSHMMON) += ntpshmmon > > GPSD_PROGS-$(PTXCONF_GPSD_PPSCHECK) += ppscheck > > > > -GPSD_BUILD_CLIENTS := $(if $(strip $(GPSD_PROGS-y)),yes,no) > > +GPSD_BUILD_CLIENTS := $(call ptx/ifdef, PTXCONF_GPSD_GPSDCTL, yes, \ > > + $(if $(strip $(GPSD_PROGS-y)), yes, no)) > > > > # Python programs > > GPSD_PROGS-$(PTXCONF_GPSD_GEGPS) += gegps > > @@ -160,6 +161,9 @@ $(STATEDIR)/gpsd.targetinstall: > > ifdef PTXCONF_GPSD_GPSD > > @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/sbin/gpsd) > > endif > > +ifdef PTXCONF_GPSD_GPSDCTL > > + @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/sbin/gpsdctl) > > +endif > > ifdef PTXCONF_GPSD_SYSTEMD_UNIT > > @$(call install_alternative, gpsd, 0, 0, 644, \ > > /usr/lib/systemd/system/gpsd.service) > > @@ -172,11 +176,9 @@ ifdef PTXCONF_GPSD_SYSTEMD_UNIT > > /usr/lib/systemd/system/gpsd.socket) > > @$(call install_link, gpsd, ../gpsd.socket, \ > > /usr/lib/systemd/system/sockets.target.wants/gpsd.socket) > > -ifdef PTXCONF_GPSD_GPSCTL > > So, I don't know a lot about gpsd. So I need some clarification here. > > There is a gpsd.service and the gpsdctl@.service template. What do they do? > Does gpsd.service do anything useful without gpsdctl@.service? gpsd.service just starts gpsd as a daemon on a device passed as its argument (GPSD_GPSD_ARGS). But GPS receiver could be hotplugged as well and that's when gpsdctl@.service comes to action. > If yes then we should probably install gpsdctl@.service separately and not > add the 'select GPSD_GPSDCTL' dependency above. As gpsdctl@.service calls gpsdctl, which is installed once GPSD_GPSDCTL selected, that dependency is needed. > If no then I think the GPSD_GPSDCTL option is not needed and it can be > gpsdctl can be installed for GPSD_GPSD. This option is usefull if developer wishes to talk to running gpsd using gpsdctl at his own. ladis > Michael > > > @$(call install_alternative, gpsd, 0, 0, 644, \ > > /usr/lib/systemd/system/gpsdctl@.service) > > endif > > -endif > > ifdef PTXCONF_GPSD_PYTHON > > @$(call install_glob, gpsd, 0, 0, -, \ > > /usr/lib/python$(PYTHON3_MAJORMINOR), *.so *.py) > > -- > > 2.28.0 > > > > > > _______________________________________________ > > ptxdist mailing list > > ptxdist@pengutronix.de > > To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de > > > > -- > Pengutronix e.K. | | > Steuerwalder Str. 21 | http://www.pengutronix.de/ | > 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | > > _______________________________________________ > ptxdist mailing list > ptxdist@pengutronix.de > To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de