-
-
Notifications
You must be signed in to change notification settings - Fork 15.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
zoneminder: init at 1.32.3 and add NixOS module #53495
Conversation
Only Infinisil was detected as code owner by GH. |
Turns out there are a few parts not quite working yet - main features such as recording and motion detection are though. I need to fix those up before we merge. |
@volth, any nicer way to handle PERL5LIB and the move to |
Maybe remove -T and
I thought taint mode was highly recommended for perl programs and since that's what upstream uses, I'm hesitant to go that route.
|
70d5baa
to
c222e69
Compare
113c9b2
to
80b4752
Compare
I was able to sucessfully run this on a Raspberry Pi 3 on aarch64. However there were some issues I ran into:
|
Sorry, I don't know why Hydra doesn't build the perl packages for aarch64. Perhaps @grahamc knows? |
Isn't the case that the packages are not built on aarch64 because the tests fail (for whatever reason)?
The DB user used by ZM shouldn't have permissions to create databases and database users. Of course we could use the nixos mechanism to create the db, but that assumes that the database is on the same host. This is the reason I didn't do this as my ZM install is different from the DB. Maybe the nicest option is to update the description for |
In any case, I have just pushed the latest iteration. Working here on amd64. |
@peterhoeg Just out of curiosity: did you look at all into declarative camera configuration? This is by no means a feature request, just a question. |
I thought about it, but didn't look into it. ZM is a bit of a mess where some things are defined at compile time, some things can be overridden using config files and most things are in the database. The way to do cameras would be to define them in an attrset and generate the required sql (I understand mysql understands some variation of UPSERT). I thought it was more important to get it out there first. We can always add features! |
The patching of the package and the nixos module are both ugly - I'm very open to feedback to make this nicer. |
I think getting ZM packaged is important so I am going to go ahead an merge this. Let's get some people using it and then make things nicer. |
Motivation for this change
I needed ZoneMinder and now it works. Refer to the derivation for a lot of comments concerning why certain things are done the way they are.
Cc: @volth for the perl parts (and others of course)
UPDATE:
while it works, there are a few parts that don't so I need to fix those before this is ready to merge.The architecture of this application is a complete mess....UPDATE 2: now it works, including integration with home-assistant which will come in a separate PR.
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)nix path-info -S
before and after)