mirror of
https://github.com/itme-brain/nixos.git
synced 2026-03-24 00:29:43 -04:00
Fixed bitcoin server & modules
This commit is contained in:
parent
6d9d2fe824
commit
290ed823c1
5 changed files with 48 additions and 44 deletions
|
|
@ -1,4 +1,3 @@
|
|||
''
|
||||
server=1
|
||||
|
||||
mempoolfullrbf=1
|
||||
|
|
@ -18,4 +17,3 @@ listen=1
|
|||
listenonion=1
|
||||
torcontrol=127.0.0.1:9051
|
||||
torenablecircuit=1
|
||||
''
|
||||
|
|
@ -5,11 +5,14 @@ let
|
|||
cfg = config.modules.system.bitcoin;
|
||||
|
||||
home = "/var/lib/bitcoind";
|
||||
conf = pkgs.writeText "bitcoin.conf" (import ./config);
|
||||
|
||||
bitcoinConf = pkgs.writeTextFile {
|
||||
name = "bitcoin.conf";
|
||||
text = builtins.readFile ./config/bitcoin.conf;
|
||||
};
|
||||
|
||||
in
|
||||
{ options.modules.system.bitcoin = { enable = mkEnableOption "system.bitcoin"; };
|
||||
{ options.modules.system.bitcoin = { enable = mkEnableOption "Bitcoin Server"; };
|
||||
imports = [ ./modules ];
|
||||
config = mkIf cfg.enable {
|
||||
nixpkgs.overlays = [
|
||||
|
|
@ -38,7 +41,6 @@ in
|
|||
"bitcoin" = {
|
||||
members = [
|
||||
"btc"
|
||||
"electrs"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
|
@ -55,7 +57,7 @@ in
|
|||
enable = true;
|
||||
user = "btc";
|
||||
group = "bitcoin";
|
||||
configFile = conf;
|
||||
configFile = bitcoinConf;
|
||||
dataDir = home;
|
||||
pidFile = "${home}/bitcoind.pid";
|
||||
};
|
||||
|
|
|
|||
|
|
@ -0,0 +1,14 @@
|
|||
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"
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
let
|
||||
daemonDir = "/var/lib/bitcoin";
|
||||
|
||||
in
|
||||
''
|
||||
network = "bitcoin"
|
||||
|
||||
electrum_rpc_addr = "127.0.0.1:50001"
|
||||
|
||||
cookie-file = "${daemonDir}/.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 = "${daemonDir}"
|
||||
''
|
||||
|
|
@ -7,24 +7,27 @@ let
|
|||
|
||||
btc = config.modules.system.bitcoin;
|
||||
|
||||
conf = pkgs.writeText "config.toml" (import ./config);
|
||||
electrsConfig = pkgs.writeTextFile {
|
||||
name = "config.toml";
|
||||
text = builtins.readFile ./config/config.toml;
|
||||
};
|
||||
|
||||
in
|
||||
{ options.modules.system.bitcoin.electrum = { enable = mkEnableOption "system.bitcoin.electrum"; };
|
||||
config = mkIf cfg.enable {
|
||||
#nixpkgs.overlays = [
|
||||
# (final: prev: {
|
||||
# electrs = prev.electrs.overrideAttrs (old: rec {
|
||||
# version = "0.10.4";
|
||||
# src = fetchFromGithub {
|
||||
# rev = "${version}";
|
||||
# hash = ''
|
||||
# sha256-0xw2532nmaxx9bjdpnnby03b83wc9zs8bv1wdfgv9q1phccqbkz1
|
||||
# '';
|
||||
# };
|
||||
# });
|
||||
# })
|
||||
#];
|
||||
{ options.modules.system.bitcoin.electrum = { enable = mkEnableOption "Electrs Server"; };
|
||||
config = mkIf (cfg.enable && btc.enable) {
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: {
|
||||
electrs = prev.electrs.overrideAttrs (old: rec {
|
||||
version = "0.10.4";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "romanz";
|
||||
repo = "electrs";
|
||||
rev = "${version}";
|
||||
hash = "sha256-4c+FGYM34LSfazzshfRPjA+0BvDL2tvkSr2rasUognc=";
|
||||
};
|
||||
});
|
||||
})
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
electrs
|
||||
|
|
@ -34,12 +37,19 @@ in
|
|||
users = {
|
||||
"electrs" = {
|
||||
inherit home;
|
||||
description = "electrs system user";
|
||||
description = "Electrs system user";
|
||||
isSystemUser = true;
|
||||
group = "bitcoin";
|
||||
createHome = true;
|
||||
};
|
||||
};
|
||||
groups = {
|
||||
"bitcoin" = {
|
||||
members = mkAfter [
|
||||
"electrs"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
|
@ -47,7 +57,7 @@ in
|
|||
description = "Electrs Bitcoin Indexer";
|
||||
|
||||
script = "${pkgs.electrs}/bin/electrs";
|
||||
scriptArgs = "--conf=${conf}";
|
||||
scriptArgs = "--conf=${electrsConfig}";
|
||||
|
||||
after = [
|
||||
"bitcoind-btc.service"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue