Package Details: zoneminder 1.34.7-1

Git Clone URL: (read-only, click to copy)
Package Base: zoneminder
Description: A full-featured, open source, state-of-the-art video surveillance software system
Upstream URL:
Keywords: camera cctv monitor record security surveillance video zoneminder
Licenses: GPL2
Conflicts: zoneminder-git
Submitter: None
Maintainer: Nocifer
Last Packager: Nocifer
Votes: 59
Popularity: 0.42
First Submitted: 2008-03-21 00:09
Last Updated: 2020-03-26 22:04

Dependencies (44)

Required by (1)

Sources (8)

Pinned Comments

Nocifer commented on 2020-01-18 10:01

A fair warning to everyone:

From 1.34 onwards the webroot will be moved from /srv/zoneminder to /usr/share/webapps/zoneminder.

The configuration files for Apache & Nginx provided by this package have been adjusted accordingly, but, as per pacman's packaging standards, they will only overwrite your existing configuration files if those have been left in their default state.

This means that, if you've ever manually edited the Apache/Nginx configuration files that come with this package, be prepared to experience a broken setup after updating to ZoneMinder 1.34, because your configuration files will not be automatically adjusted and thus will keep pointing to /srv/zoneminder, which will now be invalid.

Nocifer commented on 2018-10-02 14:34

Any and all feedback will be much appreciated. Thanks!


Update: 1.32.3-1 -> 1.34.0-1

THIS UPDATE CAN BREAK EXISTING SETUPS. For more info check the pinned comment above or the notes in the PKGBUILD.

  • Removed hard dependency on Apache, Nginx and MariaDB.
  • Moved install logic to a separate script ( that can be run manually by the user.
  • ZoneMinder's webroot moved from /srv/zoneminder to /usr/share/webapps/zoneminder, as per web application standards.
  • Fixes:
    • Changed /var/log/zoneminder permissions from 775 to 755, now logrotate should stop complaining.
    • Changed supported architectures to 'any' for ARM compatibility; if any issues arise, please let me know.
    • Added pod2man as an optional dependency, to support building the package in Docker.

Update: 1.32.2-3 -> 1.32.3-1

  • Changed Nginx's configuration so that now it listens on all interfaces instead of only on localhost. This fixes remote access and also prevents some potential conflicts with other conf files that may be present.
  • Added proper support for multiserver setups in the install script during updates: now it will properly check whether we're running a local database server or not and will run the updater accordingly. Also added a new function for updating the PTZ control presets.
  • Enabled PHP's disabled-by-default semaphore support. This fixes issues like camera playback controls not working and camera device info (e.g. current state, fps, zoom level, et al) not being shown.
  • Gave 'zmuser' some new privileges on database 'zm' that are needed to perform the 1.32.3 update.

Update: 1.32.2-2 -> 1.32.2-3

  • Added spawn-fcgi & multiwatch as dependencies. Now fcgiwrap will spawn in multiple instances, so ZoneMinder will be able to utilize more than one CGI threads at the same time and thus show concurrent camera streams, which solves issues like having no image while editing zones, etc. The default number of instances is 10, which should be enough for 2 or 3 cameras, but you can of course edit the provided service file and change the number as you see fit. Big thanks to @chapatt for bringing this to my attention!

Update: 1.32.2-1 -> 1.32.2-2

  • Included a /zm/ link inside the /www/ folder that points back to /www/. This fixes pretty much every instance of sloppy hardcoded links within ZM's codebase. Big thanks to @Kubax for the idea!

Update: 1.32.1-3 -> 1.32.2-1

NOTE: There's a bunch of small-ish errors in ZM's operation due to some parts of it having the localhost/zm/ link hardcoded and thus breaking when ZM is run from anywhere else, e.g. localhost:8095. I'm in the process of locating these errors and either reporting them upstream or fixing them myself, but I can't know for sure when or even if they'll be fixed. Big thanks to @Kubax for reporting this.

  • Changed temp folder location: /var/lib/zoneminder/temp -> /var/tmp/zoneminder
  • Fixed /api/app/tmp to correctly point to the temp folder
  • Overhauled how the install script makes the choice between Nginx and Apache, as follows:
    • If Nginx is installed and active, regardless of whether Apache is also installed or active or both, we choose Nginx.
    • If Nginx is installed but inactive, and Apache is not installed, we choose Nginx.
    • If Nginx is installed but inactive, and Apache is installed, we choose Apache.
    • If Nginx is not installed, and Apache is installed, we choose Apache.
    • If neither of them is installed, we simply inform the user about it and do nothing.

It's a fairly simple script and I have tested it as much as I can, but things usually find a way to break apart after introducing such... uhm... breaking changes. If things do break for you, please blame me and not the script itself; and also report here what exactly is broken so I can fix it ;)

Update: 1.32.1-2 -> 1.32.1-3

  • MariaDB no longer required (for use with remote databases)
  • Apache added as an optional dependency and preferred over Nginx if both are installed

Update: 1.32.1-1 -> 1.32.1-2

  • Fixed update process (it erroneously required zoneminder.service to be active while updating its database, when it should rather be the opposite)
  • Fixed desktop launcher
  • Added logrotate support
  • Removed 'perl-module-load-conditional' from dependencies as it is already included in core Perl package
  • Other minor fixes (e.g. the license file was being installed in the wrong place)

Latest Comments

1 2 3 4 5 6 ... Next › Last »

DaMadOne commented on 2020-03-24 22:13

@nocifer you're absolutely correct. It is a dependency of ffmpeg and the official package is what I'm using.

I did just do a whole system update on it that went a little wrong. I hadn't updated the ZM VM in nearly a year (was on a 5.2 kernel). I thought I had fully recovered from it but obviously not. Once I got ZM compiled and tried to run it I found other missing depends that should be there because other packages requires them. Like php requires oniguruma.. I had php, but not oniguruma somehow.

TL:DR I think I'm sorted out now.. Carry on.

Nocifer commented on 2020-03-24 08:41

@DaMadOne from what I can tell, libmfx is supposed to be a dependency of ffmpeg. Or at least that's the case for the official Arch package, some alternative packages I checked (e.g. ffmpeg-full or ffmpeg-amd-full-git) don't seem to include it.

Could you be using one of these ffmpeg variants? If that's so, I would first ask their AUR maintainers why they do not include libmfx as a dependency.

DaMadOne commented on 2020-03-24 05:16

libmfx is a dependency. Can't compile without it as of this moment.

zombielinux commented on 2020-02-11 17:59

I'm having an issue where NGINX is returning error 502 when hitting submit on the monitor configuration window. This is on a fresh setup as well.

It seems to create it, but I get a stream of "'zma -m 1' exited abnormally, exit status 127" I seem to have traced it to "error while loading shared libraries: cannot open shared object file: No such file or directory"

maybe a rebuild is necessary

Perhaps we're missing a dependency?

EDIT: Syu your build environment beforehand. Did that, then rebuilt. Now all is well.

sav commented on 2020-02-09 15:32

No problem. Everything works. You are a hero.

Nocifer commented on 2020-02-04 23:31

@jlanzobr ah, right, I suppose this bears mentioning as well: to any and all reading this, from 1.34 onwards, the timezone (which is a crucial component of ZoneMinder and the source of way too many issues if misconfigured) is no longer set in /etc/php/conf.d/zoneminder.ini, it is set and stored internally, directly in the database. There is now a new setting in ZM's configuration page where one must go and select the correct timezone, otherwise bad stuff will happen.

jlanzobr commented on 2020-01-31 01:09

@Nocifer: thanks for replying. I'm using Apache. Turns out I got hit by this bug:

Setting Options > System > AUTH_RELAY = none solved the issue, just like in that bug report. I also corrected my timezone, which allowed my Events page to work correctly as well. Hopefully they manage to really fix this issue soon - it's marked as closed but those two options can break your install if not correctly migrated, so I'd say it should be marked open!

Nocifer commented on 2020-01-30 12:27

@jlanzobr what is the exact error you're getting? Is anything relevant printed out in the service logs of fcgiwrap-multiwatch, php-fpm or nginx/apache, or in Zoneminder itself (all its logs are located at /var/log/zoneminder)?

The only really breaking change in this new package release is the switch of the webroot from /srv to /usr/share/webapps, but this apparently is not the cause of your issue, since the web interface is otherwise functioning properly. Other than that, nothing has changed as regards to PHP or any other part of the package. So the issue is either something caused by an upstream change, or it's a bug I've introduced by e.g. forgetting to properly edit some part of the configuration files to reflect the webroot switch.

Unfortunately, I currently don't have a camera to test this myself, so until I get one, the only thing I can do is try to interpret any errors you find. So, again, the best thing to do at this point is to check if there are any concrete errors printed in any of the logs I mentioned.

jlanzobr commented on 2020-01-29 03:26

After the update, I can't see my streams despite ZoneMinder saying they're running. I changed the WEB_H_STREAM_METHOD between mpeg and jpeg and there doesn't seem to be a difference. I can't view any events either. Am I missing some magic in open_basedir or what else could it be?

eshep commented on 2020-01-19 08:07

@Nocifer, I am thrilled to report that the problems I was having have been resolved with the 1.34 package. This version also has a much nicer event viewer than previous ones. Thank you for the fixes and updated packaging, much appreciated!