forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Package-Manager: Portage-2.3.5, Repoman-2.3.2
- Loading branch information
Showing
2 changed files
with
178 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,6 @@ | ||
DIST Crud-3.0.10.tar.gz 72960 SHA256 462d05e21d17cc6b11cdc441971d1a7f07688512b5f7903217a574c6c39efd91 SHA512 2f60557f2c783bb448e06c1ca40b536a1d7d5f3caf0626fa6716a28f808492d4799e238f16c022571be96921105b074b6763920fd7b9cc77b76d17ceadae2040 WHIRLPOOL 6c8d78dd30e8373a2b014fe4f6d17a4e2ec1051a6dc09d8b0759c6cd76ae78cb633e2c1eaab125aa29e66903de201337da979b3e412e8861a2431588251d817b | ||
DIST Crud-3.1.0.tar.gz 72993 SHA256 e30a916c04ca282509c728c0b0e48fa62a3036f2d735cc9b7ea810947d81259f SHA512 7ec84afaa336b1bd582b7f39724f77081bdb3008947c4124ad96e4bc7755a03fbe31e01666d4d1939ebe17b342db37bf3766a42d88fbed0e99706807ff5b9d01 WHIRLPOOL 8be4760c112bc8f0b08bf2b5f274113ef2203c8b21da39a1aa9f85c89e30077fb5c697700b5e6e3ec02c77b302089773cdd3be0612cd75d25bca2a8326d496b5 | ||
DIST zoneminder-1.28.0.tar.gz 2804199 SHA256 b9ee65635753e094dcad6cdb480acc42bff8b8f023ee008790883a4308273ca2 SHA512 ac2a036adac436d76db8bb0b161d063111cc7cc7f6bcb9ca1b46862cfb0285b291926df716df645c0be47b7465bbbf3b1050c85529ff5068bdcc34f1c8ba6df1 WHIRLPOOL 012a088ab6411cf7a1ec1e0c4d9c9f1e61889c3729ea736baafb5174a20f61a82c280b7c5bfd669e031b3e1844abe1de0a577e73f82295b080d88b4ae43b627b | ||
DIST zoneminder-1.28.1.tar.gz 3864811 SHA256 e55fa6ce1fd6c27912cd1de67fca3f80fad579f330020a384dc82838704d11ba SHA512 0ae29870e12b7ad0852510a17439df49dd35245aa1486a5d0ff71e17dbf89840d08c65b4485c93739f1fbcc253599162e28e0382c28927aa84cd734248587ea1 WHIRLPOOL 62a52810437c0360fb83eb6f8210d6f089448bc6b9cf7b46e6ad8db7f952c3e3ba9832f2e25be65a476655991e3dd7ae70ed83198c7a4563cff68283e7f06226 | ||
DIST zoneminder-1.30.0.tar.gz 9757409 SHA256 e7c964c339305f42a044ca8e34fa4e6a33c452fdaf33642458735daf8b864325 SHA512 cbff14447a568648a0475e878be5cd19cb694c65814fe33c20774752410e31f3f4ff9e5695667d4d50634b3193dc50aaca2d950efc151bbb968d3f9609d35db4 WHIRLPOOL af901055bb1ac9ae668fae23f80aff20632d6ee785e0fe5ab6f71f86fe6e1a8ca2e4dae919c1754ac84025f7bc614cc9cea7470209b2a7a35d3b27746eb9a46b | ||
DIST zoneminder-1.30.2.tar.gz 9931753 SHA256 499277b295bdcc2bb38b562a9061fac171236536b88b590f948f4f41ad1f7b5c SHA512 98bd6d42ecc19bcd317a30e1a9c57bd6bd295593bcc6c12e2fbe1beddfe43fb0301e042323a88969fd5f7da1dc45a1c01324878837633e5a5ed4fa54bed8690a WHIRLPOOL 98b4882dcf6fddb25bc912f22766ad1cc7c374bfb74e76ceceb8c4392d7408057460ab07e4a3d370b1fb646d10f489d81685c8a7904f43c3756ed64fd46f194f |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,176 @@ | ||
# 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 | ||
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.26.5"-automagic.patch | ||
"${FILESDIR}/${PN}-1.28.1"-mysql_include_path.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 | ||
sed -i "${T}"/10_zoneminder.conf -e "s:%ZM_WEBDIR%:${MY_ZM_WEBDIR}:g" | ||
|
||
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 | ||
} |