From 9184cc793680730f9790de0618af70f6b52e10c9 Mon Sep 17 00:00:00 2001 From: Chris Pick Date: Fri, 29 May 2026 10:44:24 -0400 Subject: [PATCH 1/2] Add `determinateNixd.telemetry.sentry.endpoint` Add the missing `telemetry` Determinate Nixd [option](https://docs.determinate.systems/determinate-nix/#determinate-nixd-configuration). --- modules/nix-darwin/default.nix | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/modules/nix-darwin/default.nix b/modules/nix-darwin/default.nix index c98c669..62f7267 100644 --- a/modules/nix-darwin/default.nix +++ b/modules/nix-darwin/default.nix @@ -273,6 +273,13 @@ in The garbage collection strategy used by Determinate Nixd. `automatic` means that Determinate Nixd automatically collects garbage in the background while `disabled` means no garbage collection. ''; }; + telemetry.sentry.endpoint = lib.mkOption { + type = types.nullOr types.str; + default = "unset"; + description = '' + The Sentry endpoint for uploading crash reports. Set to `null` to disable crash reporting. + ''; + }; }; }; default = { }; @@ -780,7 +787,12 @@ in ); in lib.mkIf (explicitlySetAttrs != { }) { - text = builtins.toJSON explicitlySetAttrs; + text = builtins.toJSON ( + explicitlySetAttrs + // lib.optionalAttrs (dnixd.telemetry.sentry.endpoint != "unset") { + telemetry.sentry.endpoint = dnixd.telemetry.sentry.endpoint; + } + ); }; # List of machines for distributed Nix builds in the format From 4e85b3ee823bade33e56792c00621275888dc38d Mon Sep 17 00:00:00 2001 From: Chris Pick Date: Fri, 29 May 2026 15:02:20 -0400 Subject: [PATCH 2/2] Set `telemetry` option even if it's the only one Addresses: https://github.com/DeterminateSystems/determinate/pull/186#discussion_r3325275361 --- modules/nix-darwin/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/modules/nix-darwin/default.nix b/modules/nix-darwin/default.nix index 62f7267..2426f39 100644 --- a/modules/nix-darwin/default.nix +++ b/modules/nix-darwin/default.nix @@ -785,14 +785,14 @@ in ] ] ); - in - lib.mkIf (explicitlySetAttrs != { }) { - text = builtins.toJSON ( + configAttrs = explicitlySetAttrs // lib.optionalAttrs (dnixd.telemetry.sentry.endpoint != "unset") { telemetry.sentry.endpoint = dnixd.telemetry.sentry.endpoint; - } - ); + }; + in + lib.mkIf (configAttrs != { }) { + text = builtins.toJSON configAttrs; }; # List of machines for distributed Nix builds in the format