diff --git a/src/system/machines/server/system.nix b/src/system/machines/server/system.nix index 5dad7cf..155098a 100644 --- a/src/system/machines/server/system.nix +++ b/src/system/machines/server/system.nix @@ -9,6 +9,7 @@ forgejo.enable = true; frigate.enable = false; immich.enable = true; + bitcoin.enable = true; backup = { enable = true; diff --git a/src/system/modules/bitcoin/config/bitcoin.conf b/src/system/modules/bitcoin/config/bitcoin.conf index c2c002c..72ca181 100644 --- a/src/system/modules/bitcoin/config/bitcoin.conf +++ b/src/system/modules/bitcoin/config/bitcoin.conf @@ -1,14 +1,11 @@ server=1 -mempoolfullrbf=1 -v2transport=1 - rpcauth=btc:a5070cab96db882e8f63cb131ce3bbfa$20c7fd4653597b0c4ffc2c47b2d5d6751a6725ff644dd0d0ffcb9bebff96b913 - rpcbind=127.0.0.1 rpcallowip=127.0.0.1 dnsseed=0 +onlynet=onion bind=127.0.0.1 proxy=127.0.0.1:9050 @@ -16,4 +13,5 @@ proxy=127.0.0.1:9050 listen=1 listenonion=1 torcontrol=127.0.0.1:9051 -torenablecircuit=1 + +txindex=1 diff --git a/src/system/modules/bitcoin/modules/clightning/default.nix b/src/system/modules/bitcoin/modules/clightning/default.nix deleted file mode 100644 index cc175e9..0000000 --- a/src/system/modules/bitcoin/modules/clightning/default.nix +++ /dev/null @@ -1,92 +0,0 @@ -{ lib, pkgs, config, ... }: - -with lib; -let - cfg = config.modules.system.bitcoin.clightning; - btc = config.modules.system.bitcoin; - - clnConfig = pkgs.writeTextFile { - name = "lightning.conf"; - text = builtins.readFile ./config/lightning.conf; - }; - -in -{ options.modules.system.bitcoin.clightning = { enable = mkEnableOption "Core Lightning Server"; }; - imports = [ ./plugins ]; - config = mkIf (cfg.enable && btc.enable) { - #nixpkgs.overlays = [ - # (final: prev: { - # clightning = prev.electrs.overrideAttrs (old: rec { - # version = "24.08"; - # src = pkgs.fetchFromGitHub { - # owner = "ElementsProject"; - # repo = "lightning"; - # rev = "82f4ad68e34a2428c556e63fc2632d48a914968c"; - # hash = "sha256-MWU75e55Zt/P4aaIuMte7iRcrFGMw0P81b8VNHQBe2g"; - # }; - # cargoDeps = old.cargoDeps.overrideAttrs (lib.const { - # name = "lightning-vendor.tar.gz"; - # inherit src; - # outputHash = "sha256-MWU75e55Zt/P4aaIuMte7iRcrFGMw0P81b8VNHQBe2g="; - # }); - # }); - # }) - #]; - - environment.systemPackages = with pkgs; [ - clightning - ]; - - users = { - users = { - "clightning" = { - home = "/var/lib/clightning"; - description = "Core Lightning system user"; - isSystemUser = true; - group = "bitcoin"; - createHome = true; - }; - }; - groups = { - "bitcoin" = { - members = mkAfter [ - "clightning" - ]; - }; - }; - }; - - programs.bash.shellAliases = { - cln = "lightningd"; - }; - - systemd.services.lightningd = { - description = "Core Lightning Daemon"; - - script = "${pkgs.clightning}/bin/lightningd"; - scriptArgs = '' - --conf=${clnConfig} - ''; - - after = [ - "bitcoind-mainnet.service" - ]; - - serviceConfig = { - - User = "clightning"; - Group = "bitcoin"; - - Type = "simple"; - KillMode = "process"; - TimeoutSec = 60; - Restart = "always"; - RestartSec = 60; - }; - requisite = [ - "bitcoind-mainnet.service" - "network.target" - ]; - }; - }; -} diff --git a/src/system/modules/bitcoin/modules/electrum/config/config.toml b/src/system/modules/bitcoin/modules/electrum/config/config.toml deleted file mode 100644 index c030e25..0000000 --- a/src/system/modules/bitcoin/modules/electrum/config/config.toml +++ /dev/null @@ -1,14 +0,0 @@ -network = "bitcoin" - -electrum_rpc_addr = "127.0.0.1:50001" - -cookie-file = "/var/lib/bitcoind/.cookie" - -db_dir = "/var/lib/electrs" - -log_filters = "INFO" -timestamp = true - -daemon-rpc-addr = "127.0.0.1:8332" -daemon-p2p-addr = "127.0.0.1:8333" -daemon-dir = "/var/lib/bitcoind" diff --git a/src/system/modules/bitcoin/modules/electrum/default.nix b/src/system/modules/bitcoin/modules/electrum/default.nix deleted file mode 100644 index a5b2bd0..0000000 --- a/src/system/modules/bitcoin/modules/electrum/default.nix +++ /dev/null @@ -1,91 +0,0 @@ -{ lib, pkgs, config, ... }: - -with lib; -let - cfg = config.modules.system.bitcoin.electrum; - home = "/var/lib/electrs"; - - btc = config.modules.system.bitcoin; - - electrsConfig = pkgs.writeTextFile { - name = "config.toml"; - text = builtins.readFile ./config/config.toml; - }; - -in -{ options.modules.system.bitcoin.electrum = { enable = mkEnableOption "Electrs Server"; }; - config = mkIf (cfg.enable && btc.enable) { - #TODO: Fix the failing overlay due to `cargoHash/cargoSha256` - #nixpkgs.overlays = [ - # (final: prev: { - # electrs = prev.electrs.overrideAttrs (old: rec { - # pname = "electrs"; - # version = "0.10.8"; - # src = pkgs.fetchFromGitHub { - # owner = "romanz"; - # repo = pname; - # rev = "v${version}"; - # hash = "sha256-L26jzAn8vwnw9kFd6ciyYS/OLEFTbN8doNKy3P8qKRE="; - # }; - # #cargoDeps = old.cargoDeps.overrideAttrs (const { - # # name = "electrs-${version}.tar.gz"; - # # inherit src; - # # sha256 = ""; - # #}); - # cargoHash = "sha256-lBRcq73ri0HR3duo6Z8PdSjnC8okqmG5yWeHxH/LmcU="; - # }); - # }) - #]; - - environment.systemPackages = with pkgs; [ - electrs - ]; - - users = { - users = { - "electrs" = { - inherit home; - description = "Electrs system user"; - isSystemUser = true; - group = "bitcoin"; - createHome = true; - }; - }; - groups = { - "bitcoin" = { - members = mkAfter [ - "electrs" - ]; - }; - }; - }; - - - systemd.services.electrs = { - description = "Electrs Bitcoin Indexer"; - - script = "${pkgs.electrs}/bin/electrs"; - scriptArgs = "--conf=${electrsConfig}"; - - after = [ - "bitcoind-mainnet.service" - ]; - - serviceConfig = { - - User = "electrs"; - Group = "bitcoin"; - - Type = "simple"; - KillMode = "process"; - TimeoutSec = 60; - Restart = "always"; - RestartSec = 60; - }; - requisite = [ - "bitcoind-mainnet.service" - "network.target" - ]; - }; - }; -}