Hi!
Gene Baxter <
GenoBob@gmail.com> was so kind to prepare scripts for creating ZoneMinder-1.30.x packages for Slackware-14.2 from sources.
The scripts works excellent, they were published on
https://slackbuilds.org/
ZoneMinder-1.30.0 works excellent. I tested all functionalities.
The only (known) failure is function getDiskPercent in functions.php.
The path you provide is ZM_DIR_EVENTS, which is relative and php function disk_total_space do not understand. You have to provide a full absolute path, which in this case is $path = ZM_PATH_WEB.'/'.ZM_DIR_EVENTS.
When this is corrected, ZoneMinder-1.30.0 is fully functional in Slackware-14.2 (x64 at my computer).
I get your new unpublished ZoneMinder-1.30.2 source from
https://github.com/ZoneMinder/ZoneMinder/releases.
Mr. Gene Baxter also modified his scripts to fetch/compile/package your master branch of ZoneMinder. I did that on 4th april at 12:20 GMT+2
Both 1.30.2 versions express those failures:
1. "disk space error" inherited from previous versions - please correct that, as it is published here:
viewtopic.php?f=34&t=24534&p=97846&hili ... 55a#p97846
1.1 as you add info about space on ZM_PATH_MAP you did not changed a function getDiskPercent in functions.php
This is corrected and working getDiskPercent
----------------------------------------------------------------------------------
function getDiskPercent($path) {
if ($path != '')
{ // web/skins/classic/views/console.php line 198 call with parameter ZM_PATH_MAP - /dev/shm
//$path = ZM_PATH_MAP;
}
else
$path = ZM_PATH_WEB.'/'.ZM_DIR_EVENTS;
//
$total = disk_total_space($path);
if ( $total === false ) {
Error("disk_total_space returned false. Verify the web account user has access to " . $path );
return 0;
} elseif ( $total == 0 ) {
Error("disk_total_space indicates the following path has a filesystem size of zero bytes" . $path );
return 100;
}
$free = disk_free_space($path);
if ( $free === false ) {
Error("disk_free_space returned false. Verify the web account user has access to " . $path );
}
$space = round((($total - $free) / $total) * 100);
return( $space );
}
----------------------------------------------------------------------------------
2. Fatal misbehaviour:
When a monitor is once set to function "modect" - detect & record motions, there is no way to change this state:
Select back "monitor" function - the monitor still detects & records events.
Select back "nodect" or "none" function - the monitor still detects & records events.
Select that monitor is disabled (enabled not selected)- the monitor still detects & records events.
The only way to stop detect & record motions is to stop Zoneminder.
At next start "modect" did not worked, "monitor" instead. After Zoneminder restart with monitor set to "modect" i was in that state but again can not be put to other state as mentioned above.
Looks like restart of ZoneMinder is required to change function of monitor, where "modect" is priority.
Pointing out, that when installing a package, the previous version was completely removed and "mysql -u root drop database zm" and fresh install of a zm database.
All tests were executed in Virtualbox virtual Slackware-x64-14.2 and only one camera connected - local notebook integrated webcam on /dev/video0.
I would be glad to help with debugging those failures. Please describe which options in zm settings to switch on, to be able to log errors and where and what to search for in logs.
Greetings to developers!