public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Ian Delaney" <idella4@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-fs/owfs/files/, sys-fs/owfs/
Date: Fri, 19 Feb 2016 03:10:59 +0000 (UTC)	[thread overview]
Message-ID: <1455848377.e788d1233936b0c24d52abd74c43fc6a4a6e09cf.idella4@gentoo> (raw)

commit:     e788d1233936b0c24d52abd74c43fc6a4a6e09cf
Author:     Thomas D <whissi <AT> whissi <DOT> de>
AuthorDate: Thu Feb 18 21:20:35 2016 +0000
Commit:     Ian Delaney <idella4 <AT> gentoo <DOT> org>
CommitDate: Fri Feb 19 02:19:37 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e788d123

sys-fs/owfs: Bumped to v3.1p1

Changes:

 * Bumped to upstream v3.1p1 (Closes #572004)

 * Bumped to EAPI=6

 * Added ewarn to tell user that they maybe have to install a custom UDEV
   rule (Closes #315935)

 * Various runscript fixes

   - Services were misusing "need net" (See #439092)

   - start_pre added to fix problems caused by non-existing pidfile dir
     (Closes #553418)

Package-Manager: portage-2.2.27

 sys-fs/owfs/Manifest                       |   1 +
 sys-fs/owfs/files/owfs-3.1-vendordir.patch |  26 +++++
 sys-fs/owfs/files/owfs.initd-r1            |  36 ++++++
 sys-fs/owfs/files/owftpd.initd-r1          |  36 ++++++
 sys-fs/owfs/files/owhttpd.initd-r1         |  36 ++++++
 sys-fs/owfs/files/owserver.initd-r1        |  35 ++++++
 sys-fs/owfs/metadata.xml                   |  21 ++--
 sys-fs/owfs/owfs-3.1_p1.ebuild             | 171 +++++++++++++++++++++++++++++
 8 files changed, 351 insertions(+), 11 deletions(-)

diff --git a/sys-fs/owfs/Manifest b/sys-fs/owfs/Manifest
index c70827c..cb7f4e3 100644
--- a/sys-fs/owfs/Manifest
+++ b/sys-fs/owfs/Manifest
@@ -1 +1,2 @@
 DIST owfs-2.7p21.tar.gz 1247466 SHA256 070a3368e9400e900618f8a704f487baf3671f6764715b4de04b151c66d3306d SHA512 ec6d372d32ebf59278c2c68d5fbed42664f52bc1702f4ea8e5506457594943413e37801d341102029cb48a9d8c3d6b3d68615a1dd517c93aa0a475a1bb06c4cf WHIRLPOOL 31901ae07a7431a368cdb4fa0a30a1885da29f55187dc601b53f2e9ebf4e11aba73de93d7f6308671ecb3afa8433548b41a2e79a9a0cc4771adee93a5a6a1ddd
+DIST owfs-3.1p1.tar.gz 1400962 SHA256 e69421ae534565c1f8530a2447f583401f4d0d4b1cf3cb8cf399a57133ed7f81 SHA512 f5c2694ce1076969cf4a6970a07b2c2edee42cfbc6886c1790d777d650cc0afe42cf3282328f8832d5286a0aa5827c48e3d4657412ba3391db5e26adfa890cf5 WHIRLPOOL 2a3a4ebeb3eebaf0d370a7dcc8a9a5fb95defa3e218039f9203b996e4ac2272c2a16323bb8e43da39df9a389dbd057e49c936f40bdc08de201076fbd8d2fdba4

diff --git a/sys-fs/owfs/files/owfs-3.1-vendordir.patch b/sys-fs/owfs/files/owfs-3.1-vendordir.patch
new file mode 100644
index 0000000..2592e8a
--- /dev/null
+++ b/sys-fs/owfs/files/owfs-3.1-vendordir.patch
@@ -0,0 +1,26 @@
+diff --git a/module/ownet/perl5/Makefile.am b/module/ownet/perl5/Makefile.am
+index 5823f4b..cebe1e6 100644
+--- a/module/ownet/perl5/Makefile.am
++++ b/module/ownet/perl5/Makefile.am
+@@ -8,7 +8,7 @@ OWNet/Makefile: OWNet/Makefile.PL
+ if HAVE_DEBIAN
+ 	cd OWNet; $(PERL) Makefile.PL INSTALLDIRS=vendor
+ else
+-	cd OWNet; $(PERL) Makefile.PL
++	cd OWNet; $(PERL) Makefile.PL INSTALLDIRS=vendor
+ endif
+ 
+ install-data-local: OWNet/Makefile
+diff --git a/module/swig/perl5/Makefile.am b/module/swig/perl5/Makefile.am
+index 8e5f583..49cd252 100644
+--- a/module/swig/perl5/Makefile.am
++++ b/module/swig/perl5/Makefile.am
+@@ -19,7 +19,7 @@ else
+ if HAVE_DEBIAN
+ 	( cd OW; $(PERL) Makefile.PL INSTALLDIRS=vendor )
+ else
+-	( cd OW; $(PERL) Makefile.PL )
++	( cd OW; $(PERL) Makefile.PL INSTALLDIRS=vendor )
+ if HAVE_FREEBSD
+ 	$(PERL) -pi -e 's/ doc_(perl|site|\$$\(INSTALLDIRS\))_install$$//' OW/Makefile
+ 

diff --git a/sys-fs/owfs/files/owfs.initd-r1 b/sys-fs/owfs/files/owfs.initd-r1
new file mode 100644
index 0000000..4d7f6d4
--- /dev/null
+++ b/sys-fs/owfs/files/owfs.initd-r1
@@ -0,0 +1,36 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+INSTANCE=${SVCNAME#*.}
+PROGRAM=${SVCNAME%%.*}
+PIDFILE=${PIDFILE:-/run/owfs/${PROGRAM}.pid}
+OWUID=${OWUID:-owfs}
+OWGID=${OWGID:-owfs}
+
+depend() {
+	need owserver
+	use logger
+}
+
+start_pre() {
+	checkpath -d -m 0750 -o ${OWUID}:${OWGID} "$(dirname ${PIDFILE})"
+}
+
+start() {
+	ebegin "Starting ${SVCNAME}"
+	start-stop-daemon --start --exec /usr/bin/${PROGRAM} \
+		--pidfile ${PIDFILE} --user ${OWUID}:${OWGID} -- \
+		--pid-file ${PIDFILE} \
+		--background --error_print 1 \
+		${OWFS_OPTS:--m /var/lib/owfs/mnt --allow_other -s 127.0.0.1:4304}
+	eend $?
+}
+
+stop() {
+	ebegin "Stopping ${SVCNAME}"
+	start-stop-daemon --stop --exec /usr/bin/${PROGRAM} \
+		--pidfile ${PIDFILE} -u ${OWUID}
+	eend $?
+}

diff --git a/sys-fs/owfs/files/owftpd.initd-r1 b/sys-fs/owfs/files/owftpd.initd-r1
new file mode 100644
index 0000000..c79545a
--- /dev/null
+++ b/sys-fs/owfs/files/owftpd.initd-r1
@@ -0,0 +1,36 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+INSTANCE=${SVCNAME#*.}
+PROGRAM=${SVCNAME%%.*}
+PIDFILE=${PIDFILE:-/run/owfs/${PROGRAM}.pid}
+OWUID=${OWUID:-owfs}
+OWGID=${OWGID:-owfs}
+
+depend() {
+	need owserver
+	use logger
+}
+
+start_pre() {
+	checkpath -d -m 0750 -o ${OWUID}:${OWGID} "$(dirname ${PIDFILE})"
+}
+
+start() {
+	ebegin "Starting ${SVCNAME}"
+	start-stop-daemon --start --exec /usr/bin/${PROGRAM} \
+		--pidfile ${PIDFILE} --user ${OWUID}:${OWGID} -- \
+		--pid-file ${PIDFILE} \
+		--background --error_print 1 \
+		${OWFTPD_OPTS:---nozero -p 127.0.0.1:4381 -s 127.0.0.1:4304 --max_clients 5 --timeout_ftp 600}
+	eend $?
+}
+
+stop() {
+	ebegin "Stopping ${SVCNAME}"
+	start-stop-daemon --stop --exec /usr/bin/${PROGRAM} \
+		--pidfile ${PIDFILE} -u ${OWUID}
+	eend $?
+}

diff --git a/sys-fs/owfs/files/owhttpd.initd-r1 b/sys-fs/owfs/files/owhttpd.initd-r1
new file mode 100644
index 0000000..9ea39ff
--- /dev/null
+++ b/sys-fs/owfs/files/owhttpd.initd-r1
@@ -0,0 +1,36 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+INSTANCE=${SVCNAME#*.}
+PROGRAM=${SVCNAME%%.*}
+PIDFILE=${PIDFILE:-/run/owfs/${PROGRAM}.pid}
+OWUID=${OWUID:-owfs}
+OWGID=${OWGID:-owfs}
+
+depend() {
+	need owserver
+	use logger
+}
+
+start_pre() {
+	checkpath -d -m 0750 -o ${OWUID}:${OWGID} "$(dirname ${PIDFILE})"
+}
+
+start() {
+	ebegin "Starting ${SVCNAME}"
+	start-stop-daemon --start --exec /usr/bin/${PROGRAM} \
+		--pidfile ${PIDFILE} --user ${OWUID}:${OWGID} -- \
+		--pid-file ${PIDFILE} \
+		--background --error_print 1 \
+		${OWHTTPD_OPTS:---nozero -p 127.0.0.1:4380 -s 127.0.0.1:4304}
+	eend $?
+}
+
+stop() {
+	ebegin "Stopping ${SVCNAME}"
+	start-stop-daemon --stop --exec /usr/bin/${PROGRAM} \
+		--pidfile ${PIDFILE} -u ${OWUID}
+	eend $?
+}

diff --git a/sys-fs/owfs/files/owserver.initd-r1 b/sys-fs/owfs/files/owserver.initd-r1
new file mode 100644
index 0000000..da47a82
--- /dev/null
+++ b/sys-fs/owfs/files/owserver.initd-r1
@@ -0,0 +1,35 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+INSTANCE=${SVCNAME#*.}
+PROGRAM=${SVCNAME%%.*}
+PIDFILE=${PIDFILE:-/run/owfs/${PROGRAM}.pid}
+OWUID=${OWUID:-owfs}
+OWGID=${OWGID:-owfs}
+
+depend() {
+	use logger
+}
+
+start_pre() {
+	checkpath -d -m 0750 -o ${OWUID}:${OWGID} "$(dirname ${PIDFILE})"
+}
+
+start() {
+	ebegin "Starting ${SVCNAME}"
+	start-stop-daemon --start --exec /usr/bin/${PROGRAM} \
+		--pidfile ${PIDFILE} --user ${OWUID}:${OWGID} -- \
+		--pid-file ${PIDFILE} \
+		--background --error_print 1 \
+		${OWSERVER_OPTS:---nozero -p 127.0.0.1:4304 -d /dev/ttyS0}
+	eend $?
+}
+
+stop() {
+	ebegin "Stopping ${SVCNAME}"
+	start-stop-daemon --stop --exec /usr/bin/${PROGRAM} \
+		--pidfile ${PIDFILE} -u ${OWUID}
+	eend $?
+}

diff --git a/sys-fs/owfs/metadata.xml b/sys-fs/owfs/metadata.xml
index abb9646..1d6d937 100644
--- a/sys-fs/owfs/metadata.xml
+++ b/sys-fs/owfs/metadata.xml
@@ -1,21 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-	<longdescription>
-OWFS (One Wire File System) is an easy way to use the powerful 1-wire system
-of Dallas/Maxim. A simple and flexible program to monitor and control the
-physical environment. You can write scripts to read temperature, flash
-lights, write to an LCD, log and graph, ...
-</longdescription>
+	<longdescription lang="en">
+		OWFS (One Wire File System) is an easy way to use the powerful 1-wire system
+		of Dallas/Maxim. A simple and flexible program to monitor and control the
+		physical environment. You can write scripts to read temperature, flash
+		lights, write to an LCD, log and graph, ...
+	</longdescription>
+	<upstream>
+		<remote-id type="sourceforge">owfs</remote-id>
+	</upstream>
 	<use>
 		<flag name="ftpd">Enable building the OWFS FTP server (owftpd)</flag>
 		<flag name="fuse">Enable building the FUSE-based OWFS client (owfs)</flag>
 		<flag name="httpd">Enable building the OWFS web server (owhttpd)</flag>
-		<flag name="parport">Enable support for the DS1410E parallel port
-		adapter</flag>
+		<flag name="parport">Enable support for the DS1410E parallel port adapter</flag>
 		<flag name="server">Enable building the OWFS server (owserver)</flag>
 	</use>
-	<upstream>
-		<remote-id type="sourceforge">owfs</remote-id>
-	</upstream>
 </pkgmetadata>

diff --git a/sys-fs/owfs/owfs-3.1_p1.ebuild b/sys-fs/owfs/owfs-3.1_p1.ebuild
new file mode 100644
index 0000000..e444582
--- /dev/null
+++ b/sys-fs/owfs/owfs-3.1_p1.ebuild
@@ -0,0 +1,171 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+DISTUTILS_OPTIONAL=1
+
+inherit autotools distutils-r1 perl-functions user
+
+MY_P=${P/_/}
+
+DESCRIPTION="Access 1-Wire devices like a filesystem"
+SRC_URI="mirror://sourceforge/owfs/${MY_P}.tar.gz"
+HOMEPAGE="http://owfs.org/ https://sourceforge.net/projects/owfs/"
+
+KEYWORDS="~amd64 ~arm ~x86"
+SLOT="0/1"
+LICENSE="GPL-2"
+
+RDEPEND="
+	fuse? ( sys-fs/fuse )
+	perl? ( dev-lang/perl:= )
+	php? ( dev-lang/php:=[cli] )
+	python? ( ${PYTHON_DEPS} )
+	tcl? ( dev-lang/tcl:0= )
+	usb? ( virtual/libusb:0 )
+	zeroconf? ( net-dns/avahi[mdnsresponder-compat] )"
+
+DEPEND="${RDEPEND}
+	perl? ( dev-lang/swig )
+	php? ( dev-lang/swig )
+	python? ( dev-lang/swig )"
+
+IUSE="debug ftpd fuse httpd parport perl php python tcl usb zeroconf"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.1-vendordir.patch
+)
+
+S=${WORKDIR}/${MY_P}
+
+OWUID=${OWUID:-owfs}
+OWGID=${OWGID:-owfs}
+
+pkg_setup() {
+	use perl && perl_set_version
+
+	enewgroup ${OWGID} 150
+	enewuser  ${OWUID} 150 -1 -1 ${OWGID}
+}
+
+src_prepare() {
+	default
+
+	# Support user's CFLAGS and LDFLAGS.
+	sed -i "s/@CPPFLAGS@/@CPPFLAGS@ ${CFLAGS}/" \
+		module/swig/perl5/OW/Makefile.linux.in || die
+	sed -i "s/@LIBS@/@LIBS@ ${LDFLAGS}/" \
+		module/swig/perl5/OW/Makefile.linux.in || die
+
+	eautoreconf
+}
+
+src_configure() {
+	# disable owpython since we can build python anyway
+	# and without it, we don't have to fix the build ;)
+	local myeconf=(
+		$(use_enable debug)
+		$(use_enable fuse owfs)
+		$(use_enable ftpd owftpd)
+		$(use_enable httpd owhttpd)
+		$(use_enable parport)
+		$(use_enable perl owperl)
+		$(use_enable php owphp)
+		--disable-owpython
+		$(use_enable tcl owtcl)
+		$(use_enable zeroconf zero)
+		$(use_enable usb)
+	)
+
+	if use httpd || use ftpd || use fuse; then
+		myeconf+=( --enable-owserver )
+	else
+		myeconf+=( --disable-owserver )
+	fi
+
+	econf ${myeconf[@]}
+}
+
+src_compile() {
+	default
+
+	if use python; then
+		local CFLAGS="${CFLAGS} -fno-strict-aliasing"
+
+		pushd module/ownet/python > /dev/null || die
+		distutils-r1_src_compile
+		popd > /dev/null || die
+
+		pushd module/swig/python > /dev/null || die
+		emake ow_wrap.c
+		distutils-r1_src_compile
+		popd > /dev/null || die
+	fi
+}
+
+src_test() { :; }
+
+src_install() {
+	default
+
+	if use httpd || use ftpd || use fuse; then
+		newinitd "${FILESDIR}"/owserver.initd-r1 owserver
+		newconfd "${FILESDIR}"/owserver.confd owserver
+
+		for i in httpd ftpd; do
+			if use ${i}; then
+				newinitd "${FILESDIR}"/ow${i}.initd-r1 ow${i}
+				newconfd "${FILESDIR}"/ow${i}.confd ow${i}
+			fi
+		done
+
+		if use fuse; then
+			dodir /var/lib/owfs
+			dodir /var/lib/owfs/mnt
+			newinitd "${FILESDIR}"/owfs.initd-r1 owfs
+			newconfd "${FILESDIR}"/owfs.confd owfs
+		fi
+	fi
+
+	use perl && perl_delete_localpod
+
+	if use python; then
+		pushd module/ownet/python > /dev/null || die
+		distutils-r1_src_install
+		popd > /dev/null || die
+
+		pushd module/swig/python > /dev/null || die
+		distutils-r1_src_install
+		popd > /dev/null || die
+	fi
+}
+
+pkg_postinst() {
+	if use httpd || use ftpd || use fuse; then
+		echo
+		if [[ ${OWUID} != root ]]; then
+			ewarn
+			ewarn "In order to allow the OWFS daemon user '${OWUID}' to read"
+			ewarn "from and/or write to a 1 wire bus controller device, make"
+			ewarn "sure the user has appropriate permission to access the"
+			ewarn "corresponding device node/path (e.g. /dev/ttyS0), for example"
+			ewarn "by adding the user to the group 'uucp' (for serial devices)"
+			ewarn "or 'usb' (for USB devices accessed via usbfs on /proc/bus/usb),"
+			ewarn "or install an appropriate UDEV rules (see http://owfs.org/index.php?page=udev-and-usb"
+			ewarn "for more information)."
+			ewarn
+			if use fuse; then
+				ewarn "In order to allow regular users to read from and/or write to"
+				ewarn "1 wire bus devices accessible via the owfs FUSE filesystem"
+				ewarn "client and its filesystem mountpoint, make sure the user is"
+				ewarn "a member of the group '${OWGID}'."
+				ewarn
+			fi
+			echo
+		fi
+	fi
+}


             reply	other threads:[~2016-02-19  3:11 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-19  3:10 Ian Delaney [this message]
  -- strict thread matches above, loose matches on Subject: below --
2017-03-30  8:06 [gentoo-commits] repo/gentoo:master commit in: sys-fs/owfs/files/, sys-fs/owfs/ Michael Palimaka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1455848377.e788d1233936b0c24d52abd74c43fc6a4a6e09cf.idella4@gentoo \
    --to=idella4@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox