servo: try to integrate peerswap with clightning, but it fails
This commit is contained in:
parent
faa0a7c9ea
commit
02e03227d8
|
@ -70,7 +70,7 @@
|
||||||
# - maxfeepercent defaults to 0.5
|
# - maxfeepercent defaults to 0.5
|
||||||
# - label is a human-friendly label for my records
|
# - label is a human-friendly label for my records
|
||||||
|
|
||||||
{ config, ... }:
|
{ config, pkgs, ... }:
|
||||||
{
|
{
|
||||||
sane.persist.sys.byStore.ext = [
|
sane.persist.sys.byStore.ext = [
|
||||||
{ user = "clightning"; group = "clightning"; mode = "0710"; path = "/var/lib/clightning"; }
|
{ user = "clightning"; group = "clightning"; mode = "0710"; path = "/var/lib/clightning"; }
|
||||||
|
@ -117,6 +117,12 @@
|
||||||
# - feature configs (i.e. experimental-xyz options)
|
# - feature configs (i.e. experimental-xyz options)
|
||||||
sane.services.clightning.extraConfig = ''
|
sane.services.clightning.extraConfig = ''
|
||||||
log-level=debug:lightningd
|
log-level=debug:lightningd
|
||||||
|
# peerswap:
|
||||||
|
# - config example: <https://github.com/fort-nix/nix-bitcoin/pull/462/files#diff-b357d832705b8ce8df1f41934d613f79adb77c4cd5cd9e9eb12a163fca3e16c6>
|
||||||
|
# XXX: peerswap crashes clightning on launch. stacktrace is useless.
|
||||||
|
# plugin=${pkgs.peerswap}/bin/peerswap
|
||||||
|
# peerswap-db-path=/var/lib/clightning/peerswap/swaps
|
||||||
|
# peerswap-policy-path=...
|
||||||
'';
|
'';
|
||||||
sane.services.clightning.extraConfigFiles = [ config.sops.secrets."lightning-config".path ];
|
sane.services.clightning.extraConfigFiles = [ config.sops.secrets."lightning-config".path ];
|
||||||
sops.secrets."lightning-config" = {
|
sops.secrets."lightning-config" = {
|
||||||
|
|
|
@ -26,6 +26,24 @@ buildGoModule rec {
|
||||||
vendorHash = "sha256-OOwXWsFVxieOtzF7arXVNeWo4YB/EQbxQMAIxDVIhfg=";
|
vendorHash = "sha256-OOwXWsFVxieOtzF7arXVNeWo4YB/EQbxQMAIxDVIhfg=";
|
||||||
proxyVendor = true;
|
proxyVendor = true;
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
# upstream Makefile builds with `-ldflags "-X main.GitCommit=<hash>"`, but we bypass Makefile and have to do that manually.
|
||||||
|
# GOFLAGS or CGO_LDFLAGS could both sort of do this, but they struggle with the spaces/quoting of the above,
|
||||||
|
# so instead i manually patch in the values
|
||||||
|
substituteInPlace cmd/peerswap-plugin/main.go \
|
||||||
|
--replace 'var GitCommit string' 'var GitCommit string = "${src.rev}"'
|
||||||
|
substituteInPlace cmd/peerswaplnd/peerswapd/main.go \
|
||||||
|
--replace 'var GitCommit string' 'var GitCommit string = "${src.rev}"'
|
||||||
|
substituteInPlace cmd/peerswaplnd/pscli/main.go \
|
||||||
|
--replace 'var GitCommit string' 'var GitCommit string = "${src.rev}"'
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
# the upstream Makefile compiles peerswap-plugin/main.go into a binary named `peerswap`,
|
||||||
|
# but since we use buildGoModule, that doesn't go through the Makefile and we have to manually rename.
|
||||||
|
mv $out/bin/peerswap-plugin $out/bin/peerswap
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "PeerSwap enables Lightning Network nodes to balance their channels by facilitating atomic swaps with direct peers.";
|
description = "PeerSwap enables Lightning Network nodes to balance their channels by facilitating atomic swaps with direct peers.";
|
||||||
homepage = "https://peerswap.dev";
|
homepage = "https://peerswap.dev";
|
||||||
|
|
Loading…
Reference in New Issue
Block a user