e3c54aa64e
Add the currencyrate plugin. This is used by other plugins to fetch currency rates. This can be used for setting fiat amounts in bolt12 invoices. Signed-off-by: William Casarin <jb55@jb55.com>
35 lines
990 B
Nix
35 lines
990 B
Nix
{ config, lib, pkgs, ... }:
|
|
|
|
with lib;
|
|
let
|
|
options.services.clightning.plugins = {
|
|
currencyrate.enable = mkEnableOption "Currencyrate (clightning plugin)";
|
|
helpme.enable = mkEnableOption "Help me (clightning plugin)";
|
|
monitor.enable = mkEnableOption "Monitor (clightning plugin)";
|
|
rebalance.enable = mkEnableOption "Rebalance (clightning plugin)";
|
|
};
|
|
|
|
cfg = config.services.clightning.plugins;
|
|
pluginPkgs = config.nix-bitcoin.pkgs.clightning-plugins;
|
|
in {
|
|
imports = [
|
|
./clboss.nix
|
|
./commando.nix
|
|
./feeadjuster.nix
|
|
./prometheus.nix
|
|
./summary.nix
|
|
./zmq.nix
|
|
];
|
|
|
|
inherit options;
|
|
|
|
config = {
|
|
services.clightning.extraConfig = mkMerge [
|
|
(mkIf cfg.currencyrate.enable "plugin=${pluginPkgs.currencyrate.path}")
|
|
(mkIf cfg.helpme.enable "plugin=${pluginPkgs.helpme.path}")
|
|
(mkIf cfg.monitor.enable "plugin=${pluginPkgs.monitor.path}")
|
|
(mkIf cfg.rebalance.enable "plugin=${pluginPkgs.rebalance.path}")
|
|
];
|
|
};
|
|
}
|