diff --git a/pkgs/additional/peerswap/default.nix b/pkgs/additional/peerswap/default.nix new file mode 100644 index 00000000..c6b78068 --- /dev/null +++ b/pkgs/additional/peerswap/default.nix @@ -0,0 +1,36 @@ +# based on: +{ lib +, stdenv +, fetchFromGitHub +, buildGoModule +}: + +buildGoModule rec { + pname = "peerswap"; + # the don't do releases yet + version = "unstable-20240111"; + + src = fetchFromGitHub { + owner = "ElementsProject"; + repo = "peerswap"; + rev = "4d1270b9dd2986ce683f61e684996b5961b05db0"; + hash = "sha256-lnmimWtkc2hy+SPzXMeybetZldSLbcPEN5apKGFYo7k="; + }; + + subPackages = [ + "cmd/peerswaplnd/peerswapd" + "cmd/peerswaplnd/pscli" + "cmd/peerswap-plugin" # this becomes the actual `peerswap` binary + ]; + + vendorHash = "sha256-OOwXWsFVxieOtzF7arXVNeWo4YB/EQbxQMAIxDVIhfg="; + proxyVendor = true; + + meta = with lib; { + description = "PeerSwap enables Lightning Network nodes to balance their channels by facilitating atomic swaps with direct peers."; + homepage = "https://peerswap.dev"; + maintainers = with maintainers; [ colinsane ]; + license = licenses.mit; + platforms = platforms.linux; + }; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index 6f12c386..c69b5eed 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -50,6 +50,7 @@ let linux-megous = callPackage ./additional/linux-megous { }; mcg = callPackage ./additional/mcg { }; mx-sanebot = callPackage ./additional/mx-sanebot { }; + peerswap = callPackage ./additional/peerswap { }; phog = callPackage ./additional/phog { }; pipeline = callPackage ./additional/pipeline { }; rtl8723cs-firmware = callPackage ./additional/rtl8723cs-firmware { };