From f14c1d1e20e81f756129affd7b9baaa13b02f23d Mon Sep 17 00:00:00 2001 From: Guillaume Bogard Date: Mon, 15 Sep 2025 10:21:28 +0200 Subject: [PATCH] nixos/services.qdrant: add options to override packages This makes it possible to deploy a different version of Qdrant, such as an unstable version, using the nixos qdrant module. --- nixos/modules/services/search/qdrant.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/search/qdrant.nix b/nixos/modules/services/search/qdrant.nix index 665dad648a69..78acc84f1a7d 100644 --- a/nixos/modules/services/search/qdrant.nix +++ b/nixos/modules/services/search/qdrant.nix @@ -17,6 +17,10 @@ in services.qdrant = { enable = lib.mkEnableOption "Vector Search Engine for the next generation of AI applications"; + package = lib.mkPackageOption pkgs "qdrant" { }; + + webUIPackage = lib.mkPackageOption pkgs "qdrant-web-ui" { }; + settings = lib.mkOption { description = '' Configuration for Qdrant @@ -64,7 +68,7 @@ in config = lib.mkIf cfg.enable { services.qdrant.settings = { - service.static_content_dir = lib.mkDefault pkgs.qdrant-web-ui; + service.static_content_dir = lib.mkDefault cfg.webUIPackage; storage.storage_path = lib.mkDefault "/var/lib/qdrant/storage"; storage.snapshots_path = lib.mkDefault "/var/lib/qdrant/snapshots"; # The following default values are the same as in the default config, @@ -106,7 +110,7 @@ in serviceConfig = { LimitNOFILE = 65536; - ExecStart = "${pkgs.qdrant}/bin/qdrant --config-path ${configFile}"; + ExecStart = "${cfg.package}/bin/qdrant --config-path ${configFile}"; DynamicUser = true; Restart = "on-failure"; StateDirectory = "qdrant";