From 6732c71613a7f53f4c463c50db709bf799fe82ca Mon Sep 17 00:00:00 2001 From: Kyure_A <49436968+Kyure-A@users.noreply.github.com> Date: Thu, 25 Jul 2024 22:10:16 +0900 Subject: [PATCH] sheldon: add module --- modules/programs/sheldon.nix | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 modules/programs/sheldon.nix diff --git a/modules/programs/sheldon.nix b/modules/programs/sheldon.nix new file mode 100644 index 00000000..cbd3767f --- /dev/null +++ b/modules/programs/sheldon.nix @@ -0,0 +1,34 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.programs.sheldon; + tomlFormat = pkgs.formats.toml {}; +in { + meta.maintainers = pkgs.sheldon.meta.maintainers; + + options.programs.sheldon = { + enable = mkEnableOption "sheldon"; + + package = mkOption { + type = types.package; + default = pkgs.sheldon; + defaultText = literalExpression "pkgs.sheldon"; + description = "The package to use for the sheldon binary."; + }; + + settings = mkOption { + inherit (tomlFormat) type; + default = { }; + }; + }; + + config = mkIf cfg.enable { + home.packages = [ cfg.packages ]; + + xdg.configFile."sheldon/plugins.toml" = mkIf (cfg.settings != { }) { + source = tomlFormat.generate "sheldon-config" cfg.settings; + }; + }; +}