From: "Joonas Niilola" <juippis@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/motion/, media-video/motion/files/
Date: Thu, 4 Jun 2020 07:14:27 +0000 (UTC) [thread overview]
Message-ID: <1591254852.58c1002e91e59ca9edba1a4781f3024b0dbdf99e.juippis@gentoo> (raw)
commit: 58c1002e91e59ca9edba1a4781f3024b0dbdf99e
Author: Hans Fernhout <hfern <AT> fernhout <DOT> info>
AuthorDate: Thu Jun 4 07:09:24 2020 +0000
Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Thu Jun 4 07:14:12 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=58c1002e
media-video/motion: version bump to 4.3.1
Summary of changes:
- support new version 4.3.1
- EAPI6 to EAPI7
- GLEP81 support: user and group management via dedicated packages
- untangled support for mariadb and mysql
- remove libav
- confd support for commandline options, umask and work dir
- initd checkpre function to check existence of work dir and log dir
- support for OpenRC's supervise-daemon via a local use flag
- added myself as proxy-maintainer
Closes: https://bugs.gentoo.org/665930
Closes: https://bugs.gentoo.org/673410
Closes: https://bugs.gentoo.org/717312
Signed-off-by: Johannes Willem Fernhout <hfern <AT> fernhout.info>
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
media-video/motion/Manifest | 1 +
media-video/motion/files/motion.confd-r4 | 28 ++++++
media-video/motion/files/motion.initd-r4 | 30 ++++++
media-video/motion/files/motion.service | 4 +-
.../files/{motion.service => motion.service-r4} | 14 ++-
media-video/motion/metadata.xml | 10 ++
media-video/motion/motion-4.3.1.ebuild | 104 +++++++++++++++++++++
7 files changed, 185 insertions(+), 6 deletions(-)
diff --git a/media-video/motion/Manifest b/media-video/motion/Manifest
index 00403820c80..2ea48fa4c59 100644
--- a/media-video/motion/Manifest
+++ b/media-video/motion/Manifest
@@ -1 +1,2 @@
DIST motion-release-4.1.1.tar.gz 447795 BLAKE2B 8c7dfdad89f49ba8ec39689d268b4bc95c6a8bd85d4bd333f66638b2e815b3c59b2e42dd93811601b2ee7870100a0a21eaa789633056f74a5cc9f39f4f92229f SHA512 3b08d464f9243ccfc4b53b16cfc2001d1e0d206bf0295d55d8914914bc14ad0248ce5ac622cb7eb89ed32e1913a9a10add1b56497c4094ba876f7f85d6ad4143
+DIST motion-release-4.3.1.tar.gz 849633 BLAKE2B 33039d9b8b6db0698767892997be958d84a881cc56e8cdc31d8c27242c972e629d328197c92f91c1b71a957d85807877dc602f474d430384b1e27c9213ddc697 SHA512 17033dab055c4f1d9e2912a27d0a5b419d325b0781def98428a6117e38c62201b87199210071ba93d6c4dae514733b749e39cbc1befe6242f157d4583e07dcc6
diff --git a/media-video/motion/files/motion.confd-r4 b/media-video/motion/files/motion.confd-r4
new file mode 100644
index 00000000000..8a200d14928
--- /dev/null
+++ b/media-video/motion/files/motion.confd-r4
@@ -0,0 +1,28 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+#
+# Motion OpenRC conf.d file
+# All settings are optional
+
+# Set the user and group under which motion will be run
+#MOTION_USER="motion"
+#MOTION_GROUP="motion"
+
+#Set motion's config file:
+#MOTION_CONFIGFILE="/etc/motion/motion.conf"
+
+#Set motion's log file. Leave unset for syslog:
+#MOTION_LOGFILE="/var/log/motion/motion.log"
+
+#Set log type: 1-9 for COR, STR, ENC, NET, DBL, EVT, TRK, VID, ALL
+#MOTION_LOGTYPE="9"
+
+#Set log level: 1-9 for EMG, ALR, CRT, ERR, WRN, NTC, INF, DBG, ALL
+#MOTION_LOGLEVEL="6"
+
+#Set a default dir where motion places its output
+#MOTION_DIR="/var/lib/motion"
+
+#Set the umask for the output files, for additonal security
+#MOTION_UMASK="007"
+
diff --git a/media-video/motion/files/motion.initd-r4 b/media-video/motion/files/motion.initd-r4
new file mode 100644
index 00000000000..30d5e25cb08
--- /dev/null
+++ b/media-video/motion/files/motion.initd-r4
@@ -0,0 +1,30 @@
+#!/sbin/openrc-run
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+: ${MOTION_USER:="motion"}
+: ${MOTION_GROUP:="motion"}
+
+[ "${MOTION_UMASK}" ] && umask="${MOTION_UMASK}"
+[ "${MOTION_CONFIGFILE}" ] && command_args="-c ${MOTION_CONFIGFILE}"
+[ "${MOTION_LOGFILE}" ] && command_args="${command_args} -l ${MOTION_LOGFILE}"
+[ "${MOTION_LOGTYPE}" ] && command_args="${command_args} -k ${MOTION_LOGTYPE}"
+[ "${MOTION_LOGLEVEL}" ] && command_args="${command_args} -d ${MOTION_LOGLEVEL}"
+
+command=/usr/bin/motion
+command_user="${MOTION_USER}:${MOTION_GROUP}"
+
+start_pre() {
+ if [ "${MOTION_DIR}" ] ; then
+ mkdir -p "${MOTION_DIR}"
+ checkpath -d -o "${MOTION_USER}" "${MOTION_DIR}"
+ directory="${MOTION_DIR}"
+ fi
+ if [ "${MOTION_LOGFILE}" ] ; then
+ local LOGFILE=${MOTION_LOGFILE##*/}
+ local LOGDIR=${MOTION_LOGFILE%$LOGFILE}
+ mkdir -p "${LOGDIR}"
+ checkpath -d -o "${MOTION_USER}" "${LOGDIR}"
+ fi
+}
+
diff --git a/media-video/motion/files/motion.service b/media-video/motion/files/motion.service
index 559b94b6b29..d4755bdb48e 100644
--- a/media-video/motion/files/motion.service
+++ b/media-video/motion/files/motion.service
@@ -8,13 +8,13 @@ Type=simple
ExecStart=/usr/bin/motion -n -c /etc/motion/motion.conf
StandardError=null
-User=motion
+#User=motion
Group=video
#RuntimeDirectory=motion
#RuntimeDirectoryMode=0750
-WorkingDirectory=/var/lib/motion
+#WorkingDirectory=/var/lib/motion
[Install]
WantedBy=multi-user.target
diff --git a/media-video/motion/files/motion.service b/media-video/motion/files/motion.service-r4
similarity index 56%
copy from media-video/motion/files/motion.service
copy to media-video/motion/files/motion.service-r4
index 559b94b6b29..1564fb2699c 100644
--- a/media-video/motion/files/motion.service
+++ b/media-video/motion/files/motion.service-r4
@@ -1,3 +1,9 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+#
+# Motion OpenRC systemd service file
+
+
[Unit]
Description=Motion detection daemon
After=local-fs.target network.target
@@ -9,12 +15,12 @@ ExecStart=/usr/bin/motion -n -c /etc/motion/motion.conf
StandardError=null
User=motion
-Group=video
+Group=motion
-#RuntimeDirectory=motion
-#RuntimeDirectoryMode=0750
+UMask=007
+WorkingDirectory=-/var/lib/motion
-WorkingDirectory=/var/lib/motion
[Install]
WantedBy=multi-user.target
+
diff --git a/media-video/motion/metadata.xml b/media-video/motion/metadata.xml
index b1389a2954b..301a7616abb 100644
--- a/media-video/motion/metadata.xml
+++ b/media-video/motion/metadata.xml
@@ -1,11 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
+ <maintainer type="person">
+ <email>hfern@fernhout.info</email>
+ <name>Hans Fernhout</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<maintainer type="project">
<email>media-video@gentoo.org</email>
</maintainer>
<use>
+ <flag name="mariadb">Add mariadb database support</flag>
<flag name="mmal">Enables Multi-Media Abstraction Layer (MMAL) decoding support: Available e.g. on the Raspberry Pi.</flag>
+ <flag name="supervise-daemon">Add experimental suppport for OpenRC's supervise-daemon process supervision</flag>
</use>
<upstream>
<remote-id type="github">Motion-Project/motion</remote-id>
diff --git a/media-video/motion/motion-4.3.1.ebuild b/media-video/motion/motion-4.3.1.ebuild
new file mode 100644
index 00000000000..41e650e61fd
--- /dev/null
+++ b/media-video/motion/motion-4.3.1.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools readme.gentoo-r1 systemd
+
+DESCRIPTION="A software motion detector"
+HOMEPAGE="https://motion-project.github.io"
+SRC_URI="https://github.com/Motion-Project/${PN}/archive/release-${PV}.tar.gz -> ${PN}-release-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="ffmpeg mariadb mmal mysql postgres sqlite supervise-daemon v4l webp"
+
+RDEPEND="
+ acct-group/motion
+ acct-user/motion
+ virtual/jpeg:=
+ ffmpeg? ( media-video/ffmpeg:0= )
+ mariadb? ( dev-db/mariadb-connector-c )
+ mmal? ( media-libs/raspberrypi-userland )
+ mysql? ( dev-db/mysql-connector-c )
+ postgres? ( dev-db/postgresql:= )
+ sqlite? ( dev-db/sqlite:3 )
+ webp? ( media-libs/libwebp:= )
+"
+DEPEND="${RDEPEND}
+ net-libs/libmicrohttpd
+ v4l? (
+ media-libs/libv4l
+ virtual/os-headers
+ )
+"
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+You need to setup a configuraton file (/etc/motion/motion.conf) before
+running motion for the first time.
+
+If motion is built with the mysql or mariadb use flags then please make
+sure to configure a matching database_type in the config file.
+
+Motion runs by default under user motion and group motion:
+- change this if needed in /etc/conf.d/motion
+- or add users who need access to the output files to the motion group
+
+To install motion as a service, use:
+- rc-update add motion default # with OpenRC
+- systemctl enable motion.service # with systemd
+"
+
+S="${WORKDIR}"/${PN}-release-${PV}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_with ffmpeg) \
+ $(use_with mariadb) \
+ $(use_with mmal) \
+ $(use_with mysql) \
+ $(use_with postgres pgsql) \
+ $(use_with sqlite sqlite3) \
+ $(use_with v4l v4l2) \
+ $(use_with webp) \
+ --without-optimizecpu
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ docdir=/usr/share/doc/${PF} \
+ examplesdir=/usr/share/doc/${PF}/examples \
+ install
+
+ # build INITDAD string cwto be added to initd based on use flags, eg
+ # "depend() {
+ # use mysql
+ # }
+ #
+ # supervisor=supervise-daemon"
+ local INITDADJ=""
+ ( use mysql || use mariadb ) && INITDADJ=" use mysql\n"
+ use postgres && INITDADJ="${INITDADJ} use postgresql\n"
+ [ "${#INITDADJ}" -gt 0 ] && INITDADJ="depend() {\n${INITDADJ}}\n"
+ if use supervise-daemon ; then
+ INITDADJ="${INITDADJ}\nsupervisor=supervise-daemon\n"
+ else
+ INITDADJ="${INITDADJ}\npidfile=/run/\${RC_SVCNAME}.pid\ncommand_background=true\n"
+ fi
+ cp "${FILESDIR}/${PN}.initd-r4" "${T}/initd" || die
+ echo -e ${INITDADJ} >> "${T}/initd" || die
+
+ newinitd "${T}/initd" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd-r4" ${PN}
+ systemd_newunit "${FILESDIR}/${PN}.service-r4" "${PN}.service"
+ readme.gentoo_create_doc
+ readme.gentoo_print_elog
+}
next reply other threads:[~2020-06-04 7:14 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-04 7:14 Joonas Niilola [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-06-26 18:05 [gentoo-commits] repo/gentoo:master commit in: media-video/motion/, media-video/motion/files/ David Seifert
2021-04-14 14:44 John Helmert III
2017-02-10 13:44 Wolfram Schlich
2017-01-16 11:49 Wolfram Schlich
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=1591254852.58c1002e91e59ca9edba1a4781f3024b0dbdf99e.juippis@gentoo \
--to=juippis@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