1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-11-30 06:59:45 +01:00

atuin: make daemon log level configurable

This commit is contained in:
Varun Narravula 2024-11-16 13:20:52 -08:00
parent 4a9a3e6e80
commit 080b11b4d4
No known key found for this signature in database
GPG key ID: A1F17E43F6747FC0

View file

@ -1,10 +1,8 @@
{ config, pkgs, lib, ... }: { config, pkgs, lib, ... }:
with lib; with lib;
let let
cfg = config.programs.atuin; cfg = config.programs.atuin;
daemonCfg = cfg.daemon;
tomlFormat = pkgs.formats.toml { }; tomlFormat = pkgs.formats.toml { };
@ -96,7 +94,18 @@ in {
''; '';
}; };
daemon.enable = mkEnableOption "atuin daemon"; daemon = {
enable = mkEnableOption "Atuin daemon";
logLevel = mkOption {
default = null;
type =
types.nullOr (types.enum [ "trace" "debug" "info" "warn" "error" ]);
description = ''
Verbosity of Atuin daemon logging.
'';
};
};
}; };
config = let flagsStr = escapeShellArgs cfg.flags; config = let flagsStr = escapeShellArgs cfg.flags;
@ -143,7 +152,7 @@ in {
}; };
} }
(mkIf cfg.daemon.enable (mkMerge [ (mkIf daemonCfg.enable (mkMerge [
{ {
assertions = [ assertions = [
{ {
@ -175,7 +184,8 @@ in {
}; };
Service = { Service = {
ExecStart = "${lib.getExe cfg.package} daemon"; ExecStart = "${lib.getExe cfg.package} daemon";
Environment = [ "ATUIN_LOG=info" ]; Environment = lib.optionals (daemonCfg.logLevel != null)
[ "ATUIN_LOG=${daemonCfg.logLevel}" ];
Restart = "on-failure"; Restart = "on-failure";
RestartSteps = 3; RestartSteps = 3;
RestartMaxDelaySec = 6; RestartMaxDelaySec = 6;
@ -197,7 +207,10 @@ in {
enable = true; enable = true;
config = { config = {
ProgramArguments = [ "${lib.getExe cfg.package}" "daemon" ]; ProgramArguments = [ "${lib.getExe cfg.package}" "daemon" ];
EnvironmentVariables = { ATUIN_LOG = "info"; }; EnvironmentVariables =
lib.optionalAttrs (daemonCfg.logLevel != null) {
ATUIN_LOG = daemonCfg.logLevel;
};
KeepAlive = { KeepAlive = {
Crashed = true; Crashed = true;
SuccessfulExit = false; SuccessfulExit = false;