From f7b759a80e65adc0eb12935d7700bab66a4e4ff5 Mon Sep 17 00:00:00 2001 From: atagen Date: Sun, 21 Jun 2026 14:13:51 +1000 Subject: [PATCH] nixos/tack: init (cherry picked from commit 74b9979f50c299d1ebe22fbc40bef117c301502a) --- nixos/modules/module-list.nix | 1 + nixos/modules/programs/tack.nix | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 nixos/modules/programs/tack.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 6134fee6a1ab..05183e91e7b5 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -327,6 +327,7 @@ ./programs/sysdig.nix ./programs/system-config-printer.nix ./programs/systemtap.nix + ./programs/tack.nix ./programs/tcpdump.nix ./programs/television.nix ./programs/throne.nix diff --git a/nixos/modules/programs/tack.nix b/nixos/modules/programs/tack.nix new file mode 100644 index 000000000000..6b39c72bda4e --- /dev/null +++ b/nixos/modules/programs/tack.nix @@ -0,0 +1,26 @@ +{ + config, + lib, + pkgs, + ... +}: +let + cfg = config.programs.tack; +in +{ + options.programs.tack = { + enable = lib.mkEnableOption "tack, flake-like toml nix pins"; + + package = lib.mkPackageOption pkgs "tack" { }; + + nixConfTokens = lib.mkEnableOption "tack reading access tokens from nix.conf (significantly improves comparison speed)"; + }; + + config = lib.mkIf cfg.enable { + environment.systemPackages = [ cfg.package ]; + + environment.sessionVariables = lib.mkIf cfg.nixConfTokens { + TACK_NIX_CONF_TOKENS = "1"; + }; + }; +}