public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andreas Hüttel" <dilfridge@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: www-misc/zoneminder/files/, www-misc/zoneminder/
Date: Thu, 22 Feb 2018 22:48:19 +0000 (UTC)	[thread overview]
Message-ID: <1519339682.f8796ea819bb3bc16ea85ec84c43dd9f21010982.dilfridge@gentoo> (raw)

commit:     f8796ea819bb3bc16ea85ec84c43dd9f21010982
Author:     MalakymR <MalakymR <AT> esdf <DOT> uk>
AuthorDate: Wed Sep  6 14:06:22 2017 +0000
Commit:     Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Feb 22 22:48:02 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8796ea8

www-misc/zoneminder: version bump to 1.30.4

* sample modified to work with new 2.4 apache syntax
* README: import schema as root

Closes: https://github.com/gentoo/gentoo/pull/5661

 www-misc/zoneminder/Manifest                       |   1 +
 www-misc/zoneminder/files/10_zoneminder.conf       |  20 ++-
 www-misc/zoneminder/files/README.gentoo            |  12 +-
 .../files/zoneminder-1.30.4-path_zms.patch         |  16 ++
 www-misc/zoneminder/zoneminder-1.30.4.ebuild       | 178 +++++++++++++++++++++
 5 files changed, 210 insertions(+), 17 deletions(-)

diff --git a/www-misc/zoneminder/Manifest b/www-misc/zoneminder/Manifest
index e8f8359c774..7352a3c915e 100644
--- a/www-misc/zoneminder/Manifest
+++ b/www-misc/zoneminder/Manifest
@@ -2,3 +2,4 @@ DIST Crud-3.0.10.tar.gz 72960 BLAKE2B d7dd9d7f7d465dab910708ce34f1348983d14e80ac
 DIST Crud-3.1.0.tar.gz 72993 BLAKE2B d11938a0a667f6747bbe3609e51ccc5665b8d243e1787a5779319c679f1f20301afd6b0a14c5489976b9f66f57b5f18ef3ae0ee5a24e1368702cb43a5d564dd5 SHA512 7ec84afaa336b1bd582b7f39724f77081bdb3008947c4124ad96e4bc7755a03fbe31e01666d4d1939ebe17b342db37bf3766a42d88fbed0e99706807ff5b9d01
 DIST zoneminder-1.30.0.tar.gz 9757409 BLAKE2B b67340b9cf8f0875a5ea5c4aef2c4a2770532987e8482952a3e81036006efe6f84dc142309ca2926c33d72fca9b157739daf15d9f6716e31b56a00fd704921e7 SHA512 cbff14447a568648a0475e878be5cd19cb694c65814fe33c20774752410e31f3f4ff9e5695667d4d50634b3193dc50aaca2d950efc151bbb968d3f9609d35db4
 DIST zoneminder-1.30.2.tar.gz 9931753 BLAKE2B 3c48d5886053ed72788028b0c7a1f483ca2f659b6614bf0cbc1a5de7c9a7ed21aa730b614ba7400b96b057e076724364d24958e3ee5ff8e1134aeb9f142c38fd SHA512 98bd6d42ecc19bcd317a30e1a9c57bd6bd295593bcc6c12e2fbe1beddfe43fb0301e042323a88969fd5f7da1dc45a1c01324878837633e5a5ed4fa54bed8690a
+DIST zoneminder-1.30.4.tar.gz 9937220 BLAKE2B feab8251b3f36f3fb91e1ea52a25b06e131a81c398f8c97a4ef304848bc65abaf5514bded1783c1ab6ec2287e279baa69d406e24191d59276315d7131af42104 SHA512 b55b2541bcaba08f89b95fdfb06b6cf3fc7b462b1f3fac2bb3fd6e8ee890735d4fac343c7625cf59b22fd25c19585900050cb5305b35aa8f6557421be09450b3

diff --git a/www-misc/zoneminder/files/10_zoneminder.conf b/www-misc/zoneminder/files/10_zoneminder.conf
index 277d680d24b..eb9961d1322 100644
--- a/www-misc/zoneminder/files/10_zoneminder.conf
+++ b/www-misc/zoneminder/files/10_zoneminder.conf
@@ -1,18 +1,16 @@
-ScriptAlias /cgi-bin/zms "/usr/libexec/zoneminder/cgi-bin/zms"
-ScriptAlias /cgi-bin/nph-zms "/usr/libexec/zoneminder/cgi-bin/nph-zms"
+ScriptAlias /zm/cgi-bin "/usr/libexec/zoneminder/cgi-bin/"
 
 <Directory "/usr/libexec/zoneminder/cgi-bin">
   AllowOverride All
-  Options ExecCGI
-  Order allow,deny
-  Allow from all
-</Directory> 
+  Options +ExecCGI
+  Require all granted
+</Directory>
 
-Alias /zoneminder "%ZM_WEBDIR%"
+Alias /zm "%ZM_WEBDIR%"
 
 <Directory "%ZM_WEBDIR%">
-  Options -Indexes MultiViews FollowSymLinks
+  Options -Indexes +MultiViews +FollowSymLinks
   AllowOverride All
-  Order allow,deny
-  Allow from all
-</Directory> 
+  Require all granted
+</Directory>
+

diff --git a/www-misc/zoneminder/files/README.gentoo b/www-misc/zoneminder/files/README.gentoo
index 07995214d1c..8713fda6f78 100644
--- a/www-misc/zoneminder/files/README.gentoo
+++ b/www-misc/zoneminder/files/README.gentoo
@@ -3,12 +3,12 @@
    (see https://wiki.gentoo.org/wiki/MySQL/Startup_Guide).
    E.g., when logged into mysql as root,
      mysql> CREATE DATABASE \`zm\`;
-     mysql> GRANT ALL ON zm.* TO 'zmuser'@'localhost' IDENTIFIED BY 'topsecretpassword';
+     mysql> grant select,insert,alter,update,lock tables,delete on zm.* to 'zmuser'@localhost identified by 'zmpass';
+     mysql> flush privileges;
    Once you completed that you should execute the following:
-     cd /usr/share/zoneminder
-     mysql -u zmuser -p < db/zm_create.sql
+     mysql -p < /usr/share/zoneminder/db/zm_create.sql
 
-2. Set your database settings in /etc/zm.conf, including above topsecretpassword
+2. Set your database settings in /etc/zm.conf, including above zmpass
 
 3. Configure apache to use zoneminder, see /usr/share/doc/zoneminder*/10_zoneminder.conf
    for an example configuration snippet.
@@ -23,5 +23,5 @@
 
 6. Finally point your browser to http://your.webserver/zm
 
-If you are upgrading, you will need to run the zmupdate.pl script:
-   /usr/bin/zmupdate.pl --version=oldversionnumber [--user=zmuser --pass=topsecretpassword]
+If you are upgrading, you will need to run the zmupdate.pl script: 
+   /usr/bin/zmupdate.pl

diff --git a/www-misc/zoneminder/files/zoneminder-1.30.4-path_zms.patch b/www-misc/zoneminder/files/zoneminder-1.30.4-path_zms.patch
new file mode 100644
index 00000000000..54772a14769
--- /dev/null
+++ b/www-misc/zoneminder/files/zoneminder-1.30.4-path_zms.patch
@@ -0,0 +1,16 @@
+duplicate the work of utils/zmeditconfigdata.sh
+https://github.com/ZoneMinder/ZoneMinder/commit/5a59a0375dd19f8e5af9b2acadec9f2bb16ee56c
+
+diff -ruN ZoneMinder-1.30.4.orig/scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in ZoneMinder-1.30.4/scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in
+--- ZoneMinder-1.30.4.orig/scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in   2017-08-30 14:55:31.894727925 +0100
++++ ZoneMinder-1.30.4/scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in        2017-08-30 14:57:05.050731752 +0100
+@@ -507,7 +507,7 @@
+   },
+   {
+     name        => "ZM_PATH_ZMS",
+-    default     => "/cgi-bin/nph-zms",
++    default     => "/zm/cgi-bin/nph-zms",
+     description => "Web path to zms streaming server",
+     help        => qqq("
+       The ZoneMinder streaming server is required to send streamed
+

diff --git a/www-misc/zoneminder/zoneminder-1.30.4.ebuild b/www-misc/zoneminder/zoneminder-1.30.4.ebuild
new file mode 100644
index 00000000000..aa27e4b053e
--- /dev/null
+++ b/www-misc/zoneminder/zoneminder-1.30.4.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+# TO DO:
+# * dependencies of unknown status:
+#	dev-perl/Device-SerialPort
+# 	dev-perl/MIME-Lite
+# 	dev-perl/MIME-tools
+# 	dev-perl/PHP-Serialization
+# 	virtual/perl-Archive-Tar
+# 	virtual/perl-libnet
+# 	virtual/perl-Module-Load
+
+EAPI=6
+
+inherit versionator perl-functions readme.gentoo-r1 cmake-utils depend.apache flag-o-matic systemd
+
+MY_PN="ZoneMinder"
+
+MY_CRUD_VERSION="3.1.0"
+
+DESCRIPTION="Capture, analyse, record and monitor any cameras attached to your system"
+HOMEPAGE="http://www.zoneminder.com/"
+SRC_URI="
+	https://github.com/${MY_PN}/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+	https://github.com/FriendsOfCake/crud/archive/v${MY_CRUD_VERSION}.tar.gz -> Crud-${MY_CRUD_VERSION}.tar.gz
+"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64"
+IUSE="curl ffmpeg gcrypt gnutls +mmap +ssl libressl vlc"
+SLOT="0"
+
+REQUIRED_USE="
+	|| ( ssl gnutls )
+"
+
+DEPEND="
+	app-eselect/eselect-php[apache2]
+	dev-lang/perl:=
+	dev-lang/php:*[apache2,cgi,curl,gd,inifile,pdo,mysql,mysqli,sockets]
+	dev-libs/libpcre
+	dev-perl/Archive-Zip
+	dev-perl/Class-Std-Fast
+	dev-perl/Data-Dump
+	dev-perl/Date-Manip
+	dev-perl/Data-UUID
+	dev-perl/DBD-mysql
+	dev-perl/DBI
+	dev-perl/IO-Socket-Multicast
+	dev-perl/SOAP-WSDL
+	dev-perl/Sys-CPU
+	dev-perl/Sys-MemInfo
+	dev-perl/URI-Encode
+	dev-perl/libwww-perl
+	dev-php/pecl-apcu:*
+	sys-auth/polkit
+	sys-libs/zlib
+	virtual/ffmpeg
+	virtual/httpd-php:*
+	virtual/jpeg:0
+	virtual/mysql
+	virtual/perl-ExtUtils-MakeMaker
+	virtual/perl-Getopt-Long
+	virtual/perl-Sys-Syslog
+	virtual/perl-Time-HiRes
+	www-servers/apache
+	curl? ( net-misc/curl )
+	gcrypt? ( dev-libs/libgcrypt:0= )
+	gnutls? ( net-libs/gnutls )
+	mmap? ( dev-perl/Sys-Mmap )
+	ssl? (
+		!libressl? ( dev-libs/openssl:0= )
+		libressl? ( dev-libs/libressl:0= )
+	)
+	vlc? ( media-video/vlc[live] )
+"
+RDEPEND="${DEPEND}"
+
+# we cannot use need_httpd_cgi here, since we need to setup permissions for the
+# webserver in global scope (/etc/zm.conf etc), so we hardcode apache here.
+need_apache
+
+S=${WORKDIR}/${MY_PN}-${PV}
+
+PATCHES=(
+	"${FILESDIR}/${PN}-1.30.2"-diskspace.patch
+	"${FILESDIR}/${PN}-1.30.4"-path_zms.patch
+)
+
+MY_ZM_WEBDIR=/usr/share/zoneminder/www
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	rmdir "${S}/web/api/app/Plugin/Crud" || die
+	mv "${WORKDIR}/crud-${MY_CRUD_VERSION}" "${S}/web/api/app/Plugin/Crud" || die
+}
+
+src_configure() {
+	append-cxxflags -D__STDC_CONSTANT_MACROS
+	perl_set_version
+
+	mycmakeargs=(
+		-DZM_PERL_SUBPREFIX=${VENDOR_LIB#/usr}
+		-DZM_TMPDIR=/var/tmp/zm
+		-DZM_SOCKDIR=/var/run/zm
+		-DZM_WEB_USER=apache
+		-DZM_WEB_GROUP=apache
+		-DZM_WEBDIR=${MY_ZM_WEBDIR}
+		-DZM_NO_MMAP="$(usex mmap OFF ON)"
+		-DZM_NO_X10=OFF
+		-DZM_NO_FFMPEG="$(usex ffmpeg OFF ON)"
+		-DZM_NO_CURL="$(usex curl OFF ON)"
+		-DZM_NO_LIBVLC="$(usex vlc OFF ON)"
+		-DCMAKE_DISABLE_FIND_PACKAGE_OpenSSL="$(usex ssl OFF ON)"
+		-DHAVE_GNUTLS="$(usex gnutls ON OFF)"
+		-DHAVE_GCRYPT="$(usex gcrypt ON OFF)"
+	)
+
+	cmake-utils_src_configure
+
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	# the log directory
+	keepdir /var/log/zm
+	fowners apache:apache /var/log/zm
+
+	# the logrotate script
+	insinto /etc/logrotate.d
+	newins distros/ubuntu1204/zoneminder.logrotate zoneminder
+
+	# now we duplicate the work of zmlinkcontent.sh
+	keepdir /var/lib/zoneminder /var/lib/zoneminder/images /var/lib/zoneminder/events /var/lib/zoneminder/api_tmp
+	fperms -R 0775 /var/lib/zoneminder
+	fowners -R apache:apache /var/lib/zoneminder
+	dosym /var/lib/zoneminder/images ${MY_ZM_WEBDIR}/images
+	dosym /var/lib/zoneminder/events ${MY_ZM_WEBDIR}/events
+	dosym /var/lib/zoneminder/api_tmp ${MY_ZM_WEBDIR}/api/app/tmp
+
+	# bug 523058
+	keepdir ${MY_ZM_WEBDIR}/temp
+	fowners -R apache:apache ${MY_ZM_WEBDIR}/temp
+
+	# the configuration file
+	fperms 0640 /etc/zm.conf
+	fowners root:apache /etc/zm.conf
+
+	# init scripts etc
+	newinitd "${FILESDIR}"/init.d zoneminder
+	newconfd "${FILESDIR}"/conf.d zoneminder
+
+	# systemd unit file
+	systemd_dounit "${FILESDIR}"/zoneminder.service
+
+	cp "${FILESDIR}"/10_zoneminder.conf "${T}"/10_zoneminder.conf || die
+	sed -i "${T}"/10_zoneminder.conf -e "s:%ZM_WEBDIR%:${MY_ZM_WEBDIR}:g" || die
+
+	dodoc AUTHORS BUGS ChangeLog INSTALL NEWS README.md TODO "${T}"/10_zoneminder.conf
+
+	perl_delete_packlist
+
+	readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+	readme.gentoo_print_elog
+
+	local v
+	for v in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least ${PV} ${v}; then
+			elog "You have upgraded zoneminder and may have to upgrade your database now using the 'zmupdate.pl' script."
+		fi
+	done
+}


             reply	other threads:[~2018-02-22 22:48 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-22 22:48 Andreas Hüttel [this message]
  -- strict thread matches above, loose matches on Subject: below --
2018-02-22 22:48 [gentoo-commits] repo/gentoo:master commit in: www-misc/zoneminder/files/, www-misc/zoneminder/ Andreas Hüttel
2017-04-16 19:25 Andreas Hüttel
2016-12-10 20:43 Andreas Hüttel
2016-11-28 16:28 Andreas Hüttel

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=1519339682.f8796ea819bb3bc16ea85ec84c43dd9f21010982.dilfridge@gentoo \
    --to=dilfridge@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