Skip to content

Commit

Permalink
add recognize nextcloud app
Browse files Browse the repository at this point in the history
  • Loading branch information
ibizaman authored and ibizaman committed Jan 9, 2025
1 parent 3a1f94b commit 83a3d54
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 3 deletions.
18 changes: 18 additions & 0 deletions docs/redirects.json
Original file line number Diff line number Diff line change
Expand Up @@ -1361,6 +1361,24 @@
"services-nextcloudserver-options-shb.nextcloud.apps.ldap.userGroup": [
"services-nextcloud.html#services-nextcloudserver-options-shb.nextcloud.apps.ldap.userGroup"
],
"services-nextcloudserver-options-shb.nextcloud.apps.memories": [
"services-nextcloud.html#services-nextcloudserver-options-shb.nextcloud.apps.memories"
],
"services-nextcloudserver-options-shb.nextcloud.apps.memories.vaapi": [
"services-nextcloud.html#services-nextcloudserver-options-shb.nextcloud.apps.memories.vaapi"
],
"services-nextcloudserver-options-shb.nextcloud.apps.memories.enable": [
"services-nextcloud.html#services-nextcloudserver-options-shb.nextcloud.apps.memories.enable"
],
"services-nextcloudserver-options-shb.nextcloud.apps.memories.photosPath": [
"services-nextcloud.html#services-nextcloudserver-options-shb.nextcloud.apps.memories.photosPath"
],
"services-nextcloudserver-options-shb.nextcloud.apps.recognize": [
"services-nextcloud.html#services-nextcloudserver-options-shb.nextcloud.apps.recognize"
],
"services-nextcloudserver-options-shb.nextcloud.apps.recognize.enable": [
"services-nextcloud.html#services-nextcloudserver-options-shb.nextcloud.apps.recognize.enable"
],
"services-nextcloudserver-options-shb.nextcloud.apps.onlyoffice": [
"services-nextcloud.html#services-nextcloudserver-options-shb.nextcloud.apps.onlyoffice"
],
Expand Down
44 changes: 41 additions & 3 deletions modules/services/nextcloud-server.nix
Original file line number Diff line number Diff line change
Expand Up @@ -549,6 +549,20 @@ in
};
};
};

recognize = lib.mkOption {
description = ''
Recognize App. [Nextcloud App Store](https://apps.nextcloud.com/apps/recognize)
Enabling this app will set up the Recognize app and configure all its dependencies.
'';
default = {};
type = lib.types.submodule {
options = {
enable = lib.mkEnableOption "Recognize app.";
};
};
};
};
};
};
Expand Down Expand Up @@ -785,9 +799,6 @@ in
environment.systemPackages = [
# Needed for a few apps. Would be nice to avoid having to put that in the environment and instead override https://github.com/NixOS/nixpkgs/blob/261abe8a44a7e8392598d038d2e01f7b33cf26d0/nixos/modules/services/web-apps/nextcloud.nix#L1035
pkgs.ffmpeg-headless

# Needed for the recognize app.
pkgs.nodejs
];

services.postgresql.settings = lib.mkIf (! (isNull cfg.postgresSettings)) cfg.postgresSettings;
Expand Down Expand Up @@ -1211,5 +1222,32 @@ in
PrivateDevices = lib.mkForce false;
};
}))

(lib.mkIf cfg.apps.recognize.enable
(let
cfg' = cfg.apps.recognize;
in
{
services.nextcloud.extraApps = {
inherit (nextcloudApps) recognize;
};

systemd.services.nextcloud-setup.script =
''
${occ} config:app:set recognize nice_binary --value ${pkgs.coreutils}/bin/nice
${occ} config:app:set recognize node_binary --value ${pkgs.nodejs}/bin/node
${occ} config:app:set recognize faces.enabled --value true
${occ} config:app:set recognize faces.batchSize --value 50
${occ} config:app:set recognize imagenet.enabled --value true
${occ} config:app:set recognize imagenet.batchSize --value 100
${occ} config:app:set recognize landmarks.batchSize --value 100
${occ} config:app:set recognize landmarks.enabled --value true
${occ} config:app:set recognize tensorflow.cores --value 1
${occ} config:app:set recognize tensorflow.gpu --value false
${occ} config:app:set recognize tensorflow.purejs --value false
${occ} config:app:set recognize musicnn.enabled --value true
${occ} config:app:set recognize musicnn.batchSize --value 100
'';
}))
];
}

0 comments on commit 83a3d54

Please sign in to comment.