blob: ba6c7bc02856f056c4a74a3cfaa48a38d365ae94 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
|
# Maintainer (AUR): Mesmer <mesmer@fisica.if.uff.br>
# Contributor (AUR): Troy Will <troydwill at gmail dot com>
# Contributor (AUR): /dev/rs0 </dev/rs0@secretco.de.com>
# Contributor (AUR): Jacek Burghardt <jacek@hebe.us>
# Contributor (AUR): Vojtech Aschenbrenner <v@asch.cz>
# Contributor (AUR): Jason Gardner <buhrietoe@gmail.com>
# Contributor (AUR): Ross melin <rdmelin@gmail.com>
# Contributor (AUR): Charles Spence IV <cspence@unomaha.edu>
# Contributor (AUR): Joe Julian <me@joejulian.name>
# Contributor: Márcio Silva <coadde@hyperbola.info>
# Contributor: André Silva <emulatorman@hyperbola.info>
# Orginally based on a Debian Squeeze package
# parabola changes and rationale:
# - corrected license
# - renamed tarball to avoid collisions
_pkgname=zoneminder
pkgname=zoneminder
pkgver=1.30.4
pkgrel=1
pkgdesc='Capture, analyse, record and monitor video security cameras'
arch=( i686 x86_64 armv7h )
backup=( etc/zm.conf )
url="https://github.com/$pkgname/$pkgname/releases"
license=( GPL2 )
depends=(
mariadb perl-dbd-mysql perl-dbi
apache php php-apache php-gd php-mcrypt perl-php-serialization
perl-libwww perl-net-sftp-foreign
ffmpeg vlc perl-sys-mmap
gnutls polkit
perl-expect perl-archive-zip perl-date-manip
perl-mime-lite perl-mime-tools
)
makedepends=(
cmake netpbm git
)
optdepends=(
'php-apcu-bci: Bring back the API for android control'
netpbm
cambozola
perl-time-modules
perl-x10
perl-astro-suntime
)
install=$_pkgname.install
source=(
$pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/$pkgver.tar.gz
httpd-zoneminder.conf
zoneminder.service
uio.patch
fabs.patch
zoneminder-tmpfile.conf
)
sha256sums=('879f57fdb1e013b3f17b1b0e87c5935683dad14922951d5f29d1370c1e490f2e'
'ff7382b38ac07dadead0ad4d583e3dbcf8da4aaa06b76d048ee334f69f95db67'
'043d77a995553c533d62f48db4b719d29cf6c7074f215d866130e97be57ed646'
'd1816cac69be5e807d22c37fcbe6fef99e38151a5c71233b875c0ebf101fb460'
'fd20faed09eaf825933c2a87b1d04febf99d183b2b36b0041df1e2b2990c49c2'
'cc8af737c3c07750fc71317c81999376e4bbb39da883780164a8747b3d7c95a7')
prepare () {
cd $srcdir/$pkgname-$pkgver/web/api/app/Plugin/
if [ ! -d "crud" ]; then
git clone -b 3.0 https://github.com/FriendsOfCake/crud.git
mkdir -p Crud
mv crud/* Crud
fi
patch $srcdir/$pkgname-$pkgver/src/zm_image.cpp < $srcdir/fabs.patch
patch $srcdir/$pkgname-$pkgver/src/zm_comms.h < $srcdir/uio.patch
}
build() {
cd $srcdir/$pkgname-$pkgver
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DZM_PERL_SUBPREFIX=/lib/perl5 \
-DZM_WEBDIR=/srv/http/zoneminder \
-DZM_CGIDIR=/srv/http/cgi-bin \
-DZM_WEB_USER=http \
-DZM_CONTENTDIR=/var/cache/zoneminder \
-DZM_LOGDIR=/var/log/zoneminder \
-DZM_RUNDIR=/run/zoneminder \
-DZM_TMPDIR=/var/lib/zoneminder/temp \
-DZM_SOCKDIR=/var/lib/zoneminder/sock .
make V=0
}
package() {
cd $srcdir/$pkgname-$pkgver
DESTDIR=$pkgdir make install
# Change Polkit directory permissions to Arch Linux policy
chmod -v 700 $pkgdir/usr/share/polkit-1/rules.d/
chown -v polkitd $pkgdir/usr/share/polkit-1/rules.d/
# BEGIN CREATE_ZONEMINDER_DIRECTORIES
mkdir -pv $pkgdir/var/{cache/zoneminder,log/zoneminder}
chown -Rv http.http $pkgdir/var/{cache/zoneminder,log/zoneminder}
# corresponds to -DZM_SOCKDIR=/var/lib/zoneminder/sock
mkdir -pv $pkgdir/var/lib/zoneminder/sock
chown -v http.http $pkgdir/var/lib/zoneminder/sock
# corresponds to -DZM_TMPDIR=/var/lib/zoneminder/temp
mkdir -pv $pkgdir/var/lib/zoneminder/temp
chown -v http.http $pkgdir/var/lib/zoneminder/temp
chown -v http.http $pkgdir/etc/zm.conf
chmod 0700 $pkgdir/etc/zm.conf
# END CREATE_ZONEMINDER_DIRECTORIES
# Make content directories in /var/cache/zoneminder and to link them in /srv/http/zoneminder
for i in events images temp; do
mkdir $pkgdir/var/cache/$_pkgname/$i
chown -v http.http $pkgdir/var/cache/$_pkgname/$i
ln -s /var/cache/$_pkgname/$i $pkgdir/srv/http/$_pkgname/$i
chown -v --no-dereference http.http $pkgdir/srv/http/$_pkgname/$i
done
# Create a link to the Zoneminder cgi binaries
ln -sv /srv/http/cgi-bin $pkgdir/srv/http/$_pkgname
chown -h http.http $pkgdir/srv/http/{cgi-bin,$_pkgname,$_pkgname/cgi-bin}
# Link Cambozola
# ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$_pkgname
# Install configuration files
mkdir -p $pkgdir/etc/httpd/conf/extra
install -D -m 644 $srcdir/httpd-$_pkgname.conf $pkgdir/etc/httpd/conf/extra
mkdir -p $pkgdir/usr/lib/systemd/system
install -D -m 644 $srcdir/$_pkgname.service $pkgdir/usr/lib/systemd/system
install -D -m 644 COPYING $pkgdir/usr/share/license/$_pkgname
install -D -m 644 db/zm*.sql $pkgdir/usr/share/$_pkgname/db
mkdir -p $pkgdir/usr/share/doc/$_pkgname
# install -D -m 644 $srcdir/README $pkgdir/usr/share/doc/$_pkgname
install -Dm644 ../zoneminder-tmpfile.conf "$pkgdir"/usr/lib/tmpfiles.d/zoneminder.conf
}
|