Installing Zoneminder on Opensuse 16.0

I try to install zoneminder on OS 16.0.

I tried the rpms from community servers ecsos and joelgb:ZoneMinderMaster

ecsos was absolutely impossible, due to pearl things not available
joelgb was finally installed, but then I did not get any further. I didn’t find any “initial scripts” like for creating the database, letting apache and system know about zm etc. I tried a lot of things with goolge AI, which was not helpful at all, and I hope I have undone everything it made me try…

So right now I have joelgb rpm installed without errors and nothing more.

How do I continue?

(I am willing to deinstall it, and begin from scratch with another approach, if necessary. It’s a new, fresh installed “virgin” openSuse 16 system).

I hope o your expertise and help :slight_smile:
Thanks a lot!
Daniel

I learned yesterday in Software.opensuse.org package finder does not find packages that it isn’t a good idea to /home Repos which you did via https://software.opensuse.org/
Unfortenately that isn’t an answer to your questions. The only thing left could be building from source but thats discouraged as they tell in https://github.com/ZoneMinder/ZoneMinder/blob/master/README.md And I don’t have experience in that. All the required packages should be installed first and stuff like that.

I have no idea, sorry.

edit: I forget the word use in

it isn’t a good idea to use /home Repos

All perl things are available.
You should read README.SUSE under /usr/share/doc/packages/zoneminder

I was in the same situation.
I installed apache, mariadb.
I installed ZoneMinder from this repo: https://download.opensuse.org/repositories/home:joelgb:branches:home:Monex:stable/16.0/
And after setting up database in mariadb with help from https://wiki.zoneminder.com/Installing_using_ZoneMinder_RPMs_for_SuSE I was able to see ZoneMinder.
But I had an issue with SELinux, but it is different story.

The rpm from ecsos can’t be installed for unresolvable dependencies: nothing provides… (I don’t have all details present, but it was about something perl). Even after I added the devel_languages_perl repo , perl things are missing.

An AI I asked for help told me that the rpm asks for pearl-things (sorry the amateur…expression) of an older pearl version that is not available anymore, and things are named differently now.

The rpm from joelgb:ZoneMinderMaster could be installed, but the “zm_database_init” is not available (I can’t find it).

If you know how to resolve the dependencies of the ecsos rpm on OpenSuse 16.0, I’d be grateful if you let me know and give it another try.

This is definitiv wrong!
All dependencies exists!

If it helps, I saved whole procedure of installing ZineMinder (just in case), because I remember that perl issue too. So Have a look at what was installed:

zypper in ZoneMinder
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following 22 recommended packages were automatically selected:
  apache2-mod_perl apache2-utils mosquitto net-tools-deprecated perl-Convert-BinHex perl-Device-SerialPort perl-Expect perl-FastCGI perl-MIME-tools perl-Package-Stash-XS
  perl-SOAP-Lite php8-ctype php8-dom php8-gd php8-iconv php8-openssl php8-sqlite php8-sysvsem php8-tokenizer php8-xmlreader php8-xmlwriter w3m

The following 102 NEW packages are going to be installed:
  apache2 apache2-mod_perl apache2-mod_php8 apache2-prefork apache2-utils FastCGI fcgiwrap fcgiwrap-nginx libapr1 libapr-util1 libcjson1 libfcgi0 libgsoap-2_8_130
  libmosquitto1 libmosquittopp1 libossp-uuid16 libwebsockets19 libwebsockets-evlib_uv mosquitto net-tools-deprecated perl-AppConfig perl-Archive-Zip perl-Class-Inspector
  perl-Class-Load perl-Class-Mix perl-Class-Std perl-Class-Std-Fast perl-Convert-BinHex perl-Crypt-Eksblowfish perl-Crypt-Rijndael perl-Crypt-SSLeay perl-Crypt-URandom
  perl-Data-Entropy perl-Data-Float perl-Data-OptList perl-Date-Manip perl-DBD-mysql perl-DBI perl-Device-SerialPort perl-Dist-CheckConflicts perl-Email-Date-Format
  perl-Expect perl-FastCGI perl-HTTP-Lite perl-IO-Interface perl-IO-SessionData perl-IO-Socket-Multicast perl-IO-stringy perl-IO-Tty perl-JSON-MaybeXS perl-Linux-Pid
  perl-MailTools perl-MIME-Lite perl-MIME-tools perl-MIME-Types perl-Module-Build perl-Module-Implementation perl-Module-Runtime perl-Number-Bytes-Human perl-OSSP-uuid
  perl-Package-Stash perl-Package-Stash-XS perl-Params-Classify perl-Params-Util perl-PHP-Serialization perl-SOAP-Lite perl-SOAP-WSDL perl-Sub-Install perl-Sys-CPU
  perl-Sys-MemInfo perl-Sys-Mmap perl-Task-Weaken perl-Template-Toolkit perl-Tie-IxHash perl-Time-Local perl-XML-Parser-Lite php8 php8-APCu php8-bz2 php8-cli php8-ctype
  php8-dom php8-gd php8-iconv php8-intl php8-mbstring php8-mysql php8-openssl php8-pdo php8-sockets php8-sqlite php8-sysvsem php8-tokenizer php8-xmlreader php8-xmlwriter
  php8-zip php8-zlib python3-zm_database_init system-user-wwwrun w3m zip ZoneMinder

102 new packages to install.

Package download size:    32.2 MiB

Package install size change:
              |     145.1 MiB  required by packages that will be installed
   145.1 MiB  |  -      0 B    released by packages that will be removed

from which repo did you install?

Look:

zypper addrepo https://download.opensuse.org/repositories/home:ecsos:server/16.0/home:ecsos:server.repo
Repository 'ecsos's Home Project: Server Software (16.0)' hinzufügen .................................[fertig]
Repository 'ecsos's Home Project: Server Software (16.0)' erfolgreich hinzugefügt

URI                         : https://download.opensuse.org/repositories/home:/ecsos:/server/16.0/
Aktiviert                   : Ja
GPG-Überprüfung             : Ja
Automatische Aktualisierung : Nein
Priorität                   : 99 (Standard-Priorität)

Repository-Prioritäten treten in Kraft:                                     (Siehe 'zypper lr -P' für Details)
      90 (erhöhte Priorität)  :  1 Repository
      99 (Standard-Priorität) :  5 Repositorys

zypper refresh
Repository 'Perl and perl modules (16.0)' ist aktuell.
Es wird nach gpg-Schlüsseln im Repository ecsos's Home Project: Server Software (16.0) gesucht.
  gpgkey=https://download.opensuse.org/repositories/home:/ecsos:/server/16.0/repodata/repomd.xml.key
Metadaten von Repository 'ecsos's Home Project: Server Software (16.0)' abrufen ......................[fertig]
Cache für Repository 'ecsos's Home Project: Server Software (16.0)' erzeugen .........................[fertig]
Repository 'repo-openh264 (16.0)' ist aktuell.
Repository 'repo-oss (16.0)' ist aktuell.
Repository 'packman' ist aktuell.
Repository 'repo-oss' ist aktuell.
Alle Repositorys wurden aktualisiert.

zypper install ZoneMinder
Dienst 'openSUSE' wird aktualisiert.
Repository-Daten werden geladen...
Installierte Pakete werden gelesen...
Paketabhängigkeiten werden aufgelöst...

Problem: 1: nichts stellt 'python3-zm_database_init >= 3.2.1' bereit, das vom zu installierenden ZoneMinder-1.38.1-lp160.149.2.x86_64 benötigt wird
 Lösung 1: ZoneMinder-1.38.1-lp160.149.2.x86_64 nicht installieren
 Lösung 2: ZoneMinder-1.38.1-lp160.149.2.x86_64 durch Ignorieren einiger Abhängigkeiten brechen

Edit by Sauerland:
added Code-Tags

@danielbasel

Please use Code-Tags, example is here:
Code-Tags

Please take a look at the repository’s metadata.
You’ll see that you also need home:ecsos:python.

I gave you repo in my first answer. Scroll up.

I added your home and python repos and now I could install it. However now I’m stuck. What’s next to do?

I read

  • After install run “zm_database_init”,
    but trying to run it as root it says “cannot execute, required file not found”, even when I type
    /usr/bin/zm_database_init
    (the file is actually there, as a simple text file belonging to root)

Is there any step by step help anywhere that applies to the recent version?
Or can you tell me what to do next?

That’s very strange.
But it should be fixed in version 3.3.3-lp160.9.1.
Can you update and test it?

Just did it. Now it starts but:

zm_database_init
INFO: when db is correctly installed and you just reinstalled rpm, then answer all questions with 'n'
Error:  module 'configparser' has no attribute 'SafeConfigParser'

Grrr. :slight_smile:
That thing is far too old.
I’ve now updated the patch.
But I’m no Python expert.
Does it work now with version -3.3.3-lp160.10.1?

:slight_smile:
Thank you!

Yes, the database has been created.
I think now the files in /srv/www/htdocs/zm must be created?
Is there a script or a howto for this?

What do you want to create?

It’s all ready.

sudo systemctl start zm

Just enter https://[your server address]/zm/
or http://[your server address]/zm/

So, I’ve been fiddling about with it a bit and have found out the following:

  • installed Zoneminder from community repo rpms
  • apache could not start (aborted with errors)
  • found out that its a problem with /etc/apache2/vhosts.d/zm.conf and selinux
    (setenforce 0 or renaming zm.conf to zm.conf.bak let apache start)
  • I did
    restorecon -v /etc/apache2/vhosts.d/zm.conf
  • that made apache start, but now http://localhost/zm gave error 500
  • found out that php8-intl was missing, so
zypper install php8-intl
systemctl restart apache2
  • now http://localhost/zm starts, but my other files under /srv/www/htdocs are not accessible anymore, so I changed
in /etc/apache2/vhosts.d/zm.conf
DocumentRoot "/usr/share/zoneminder/www" to
DocumentRoot "/srv/www/htdocs"

Now localhost/zm starts and localhost/index.html (in /srv/www/htdocs) both work

Next:
right now zm only shows the privacy page, server button shows “stopped”. I’ll read that privacy page and hope to continue with getting it work :slight_smile:

If you have any hints what to do next: very welcome!