From 0d469a7965380629e8a9e0b3c8ead75926ee63f7 Mon Sep 17 00:00:00 2001 From: Silvan Calarco Date: Sat, 6 Jan 2024 07:14:52 +0100 Subject: [PATCH] add sysusers and tmpfiles configuration files; fix systemd service [release 4.4.0-2mamba;Thu May 26 2022] --- motion-initscript | 114 ---------------------------------------------- motion.service | 12 +++++ motion.spec | 20 ++++++-- motion.sysusers | 2 + motion.tmpfiles | 1 + 5 files changed, 32 insertions(+), 117 deletions(-) delete mode 100644 motion-initscript create mode 100644 motion.service create mode 100644 motion.sysusers create mode 100644 motion.tmpfiles diff --git a/motion-initscript b/motion-initscript deleted file mode 100644 index 81ea440..0000000 --- a/motion-initscript +++ /dev/null @@ -1,114 +0,0 @@ -#!/bin/bash -# -# motion Startup script for the Motion Detection System -# -# chkconfig: - 85 15 -# description: Motion detection system. It is used to detect movement based \ -# on compare images. -# processname: motion -# pidfile: /var/run/motion.pid -# config: /etc/motion.conf -# -### BEGIN INIT INFO -# Provides: motion -# Required-Start: $local_fs -# Required-Stop: $local_fs -# Default-Start: -# Default-Stop: -# Short-Description: Start and stop motion detection system -# Description: The Motion detection system is used to detect movement based -# on image comparison. -### END INIT INFO - -# Source function library. -. /etc/rc.d/init.d/functions - -motion=${MOTION-/usr/bin/motion} -prog=motion -pidfile=/var/run/motion.pid -lockfile=/var/lock/subsys/motion - -start() { - [ -x $exec ] || exit 5 - [ -f $config ] || exit 6 - echo -n $"Starting $prog: " - # We try to determine which architecture we have so we can - # load libv4l to support more USB cameras. x86_64 and ppc64 - # are both supported by rpmfusion. - case $(uname -i) in - "x86_64" ) - #We load libv4l for 64 Bit x86 architectures - LD_PRELOAD=/usr/lib64/libv4l/v4l2convert.so daemon $motion 2> /dev/null ;; - "ppc64" ) - #We load libv4l for 64 Bit PPC architectures - LD_PRELOAD=/usr/lib64/libv4l/v4l2convert.so daemon $motion 2> /dev/null ;; - * ) - #Default case, we load libv4l for all 32 Bit architectures - LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so daemon $motion 2> /dev/null ;; - esac - retval=$? - echo - [ $retval -eq 0 ] && touch $lockfile - return $retval -} - -stop() { - echo -n $"Stopping $prog: " - killproc $motion - retval=$? - [ $retval = 0 ] && rm -f $lockfile -} - -restart() { - stop - start -} - -reload() { - echo -n $"Reloading $prog configuration: " - killproc $motion -HUP - retval=$? - echo - return $retval -} - -rh_status() { - # run checks to determine if the service is running or use generic status - pidof $motion -} - -rh_status_q() { - rh_status >/dev/null 2>&1 -} - - -# See how we were called. -case "$1" in - start) - $1 - ;; - stop) - $1 - ;; - restart) - $1 - ;; - reload) - $1 - ;; - force-reload) - #force_reload - reload - ;; - status) - rh_status - ;; - condrestart|try-restart) - rh_status_q || exit 0 - restart - ;; - *) - echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" - exit 1 -esac -exit $? diff --git a/motion.service b/motion.service new file mode 100644 index 0000000..943585b --- /dev/null +++ b/motion.service @@ -0,0 +1,12 @@ +[Unit] +Description=Motion daemon +After=local-fs.target network.target + +[Service] +User=motion +ExecStart=/usr/bin/motion -n +Type=simple +StandardError=null + +[Install] +WantedBy=multi-user.target diff --git a/motion.spec b/motion.spec index 7cde2ff..7a78ce2 100644 --- a/motion.spec +++ b/motion.spec @@ -3,7 +3,7 @@ Name: motion Epoch: 1 Version: 4.4.0 -Release: 1mamba +Release: 2mamba Summary: A Video-surveilance-system Group: Applications/Multimedia Vendor: openmamba @@ -11,9 +11,11 @@ Distribution: openmamba Packager: Silvan Calarco URL: http://lavrsen.dk/foswiki/bin/view/Motion/WebHome Source: https://github.com/Motion-Project/motion.git/release-%{version}/motion-%{version}.tar.bz2 -Source1: motion-initscript +Source1: motion.service Source2: motion-conf Source3: http://www.lavrsen.dk/foswiki/pub/Motion/MotionBrowser/motionbrowser.tar +Source4: motion.tmpfiles +Source5: motion.sysusers Patch0: %{name}-3.2.11-ffmpeg.patch Patch1: %{name}-3.2.12-motionbrowser.patch License: GPL @@ -78,8 +80,10 @@ autoreconf -f -i %find_lang %{name} #mkdir -p %{buildroot}%{_var}/run/motion -install -D -m0755 data/motion.service %{buildroot}%{_unitdir}/motion.service +install -D -m0644 %{SOURCE1} %{buildroot}%{_unitdir}/motion.service install -D -m0644 data/motion-dist.conf %{buildroot}%{_sysconfdir}/motion/motion.conf +install -D -m0644 %{SOURCE4} %{buildroot}%{_tmpfilesdir}/motion.conf +install -D -m0644 %{SOURCE5} %{buildroot}%{_sysusersdir}/motion.conf install -d %{buildroot}%{serverdir} cp -a mb %{buildroot}%{serverdir}/motion @@ -93,6 +97,11 @@ _EOF %clean [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" +%pre +%tmpfiles_create_package motion %{SOURCE4} +%sysusers_create_package motion %{SOURCE5} +: + %post %systemd_post motion : @@ -116,6 +125,8 @@ _EOF %{_sysconfdir}/motion/motion-dist.conf %{_bindir}/motion %{_unitdir}/motion.service +%{_sysusersdir}/motion.conf +%{_tmpfilesdir}/motion.conf %dir %{_docdir}/%{name} %{_docdir}/%{name}/* %dir %{serverdir}/motion/ @@ -133,6 +144,9 @@ _EOF #CREDITS README README.axis_2100 README.FreeBSD README.MacOSX %changelog +* Thu May 26 2022 Silvan Calarco 4.4.0-2mamba +- add sysusers and tmpfiles configuration files; fix systemd service + * Tue Oct 26 2021 Automatic Build System 4.4.0-1mamba - automatic version update by autodist diff --git a/motion.sysusers b/motion.sysusers new file mode 100644 index 0000000..1489a53 --- /dev/null +++ b/motion.sysusers @@ -0,0 +1,2 @@ +u motion - - /var/lib/motion +m motion video diff --git a/motion.tmpfiles b/motion.tmpfiles new file mode 100644 index 0000000..8342ff3 --- /dev/null +++ b/motion.tmpfiles @@ -0,0 +1 @@ +d /var/lib/motion 0700 motion motion - -