Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 7 Jan 2020 11:12:17 +0000 (UTC)
From:      Vasil Dimov <vd@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r522323 - in head/net-p2p/c-lightning: . files
Message-ID:  <202001071112.007BCHoj078832@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: vd
Date: Tue Jan  7 11:12:17 2020
New Revision: 522323
URL: https://svnweb.freebsd.org/changeset/ports/522323

Log:
  net-p2p/c-lightning: fix bitcoin-cli exec setup
  
  lightningd does execute bitcoin-cli internally during runtime.
  
  Fix two problems with that:
  
  * The bitcoin-cli executable is usually located in
    /usr/local/bin/bitcoin-cli but service(8) would remove /usr/local/bin
    from PATH before executing our rc script /usr/local/etc/rc.d/lightningd
    and so the lightningd daemon would inherit a PATH that does not contain
    bitcoin-cli. To fix this give the full path to bitcoin-cli to lightningd.
  
  * bitcoin-cli(1) tries to create its datadir when it starts if it does not
    exist. By default that is ${HOME}/.bitcoin. service(8) would set HOME=/
    and if / is mounted read-only, then this creation would fail. Because we
    don't want this directory created (it is not necessary and remains empty)
    tell lightningd to execute
    bitcoin-cli --datadir=/some/directory/that/already/exists.
  
  Also, append ${lightningd_extra_args} to the lightingd arguments. This was
  forgotten in the initial commit and setting lightningd_extra_args would have
  had no effect.
  
  Reported by:	https://github.com/bitcoin-software

Modified:
  head/net-p2p/c-lightning/Makefile
  head/net-p2p/c-lightning/files/lightningd.in

Modified: head/net-p2p/c-lightning/Makefile
==============================================================================
--- head/net-p2p/c-lightning/Makefile	Tue Jan  7 10:38:50 2020	(r522322)
+++ head/net-p2p/c-lightning/Makefile	Tue Jan  7 11:12:17 2020	(r522323)
@@ -4,6 +4,7 @@
 PORTNAME=	c-lightning
 # To build from an arbitrary git commit comment PORTVERSION and PORTREVISION (if present)
 PORTVERSION=	0.8.0
+PORTREVISION=	1
 DISTVERSIONPREFIX=	v
 # and uncomment the following two lines (use for example -git-HEAD or -git-f8d8348c)
 #PORTVERSION=	0

Modified: head/net-p2p/c-lightning/files/lightningd.in
==============================================================================
--- head/net-p2p/c-lightning/files/lightningd.in	Tue Jan  7 10:38:50 2020	(r522322)
+++ head/net-p2p/c-lightning/files/lightningd.in	Tue Jan  7 11:12:17 2020	(r522323)
@@ -36,9 +36,18 @@ command_args=""
 command_args="${command_args} --lightning-dir=${lightningd_base_dir}"
 command_args="${command_args} --network=${lightningd_network}"
 command_args="${command_args} --daemon"
+# service(8) would execute us with LOCALBASE stripped out from PATH,
+# thus specify the full path to bitcoin-cli.
+command_args="${command_args} --bitcoin-cli=%%LOCALBASE%%/bin/bitcoin-cli"
+# bitcoin-cli(1) tries to create its "datadir" (by default ${HOME}/.bitcoin)
+# if it does not exist. Provide something that already exists to avoid the
+# creation of unnecessary empty directories.
+command_args="${command_args} --bitcoin-datadir=${lightningd_base_dir}"
 
 if [ -e "${lightningd_conf}" ] ; then
 	command_args="${command_args} --conf=${lightningd_conf}"
 fi
+
+command_args="${command_args} ${lightningd_extra_args}"
 
 run_rc_command "$1"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202001071112.007BCHoj078832>