From d5bd6cca86170ad4012dc5b9e6d8076cf0eee47a Mon Sep 17 00:00:00 2001 From: jurraca Date: Fri, 7 Feb 2025 14:14:16 +0000 Subject: [PATCH] fix module invocation: revert to passing flake as argument, add package option with default from flake --- flake.nix | 2 +- nix/module.nix | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index 89a97a6..49efb08 100644 --- a/flake.nix +++ b/flake.nix @@ -53,6 +53,6 @@ default = kartograf; }); - nixosModules.default = import ./nix/module.nix; + nixosModules.kartograf = import ./nix/module.nix self; }; } diff --git a/nix/module.nix b/nix/module.nix index 7e62ed8..7e540d2 100644 --- a/nix/module.nix +++ b/nix/module.nix @@ -1,4 +1,4 @@ -{ config, pkgs, lib, ... }: +flake: { config, pkgs, lib, ... }: with lib; @@ -16,6 +16,11 @@ in { options.services.kartograf = { enable = mkEnableOption "kartograf"; + package = mkOption { + type = types.package; + default = (flake.packages.${pkgs.stdenv.hostPlatform.system}).kartograf; + description = mdDoc "kartograf binary to use"; + }; clean = mkEnableOption "cleaning up of temporary artifacts after processing." // { default = true; }; useIRR = mkEnableOption "using Internet Routing Registry (IRR) data" // { default = true; }; useRV = mkEnableOption "using RouteViews (RV) data" // { default = true; }; @@ -59,7 +64,7 @@ in serviceConfig = { Environment = "PYTHONUNBUFFERED=1"; ExecStopPost = "${postScript}/bin/post-script"; - ExecStart = ''${kartograf}/bin/kartograf map \ + ExecStart = ''${cfg.package}/bin/kartograf map \ ${optionalString cfg.clean "--cleanup" } \ ${optionalString cfg.useIRR "--irr" } \ ${optionalString cfg.useRV "--routeviews" } \