1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-11-23 03:29: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, ... }:
with lib;
let
cfg = config.programs.atuin;
daemonCfg = cfg.daemon;
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;
@ -143,7 +152,7 @@ in {
};
}
(mkIf cfg.daemon.enable (mkMerge [
(mkIf daemonCfg.enable (mkMerge [
{
assertions = [
{
@ -175,7 +184,8 @@ in {
};
Service = {
ExecStart = "${lib.getExe cfg.package} daemon";
Environment = [ "ATUIN_LOG=info" ];
Environment = lib.optionals (daemonCfg.logLevel != null)
[ "ATUIN_LOG=${daemonCfg.logLevel}" ];
Restart = "on-failure";
RestartSteps = 3;
RestartMaxDelaySec = 6;
@ -197,7 +207,10 @@ in {
enable = true;
config = {
ProgramArguments = [ "${lib.getExe cfg.package}" "daemon" ];
EnvironmentVariables = { ATUIN_LOG = "info"; };
EnvironmentVariables =
lib.optionalAttrs (daemonCfg.logLevel != null) {
ATUIN_LOG = daemonCfg.logLevel;
};
KeepAlive = {
Crashed = true;
SuccessfulExit = false;