1219 Commits

Author SHA1 Message Date
Jonas Nick
36c9c39d80
Deprecate lightning-charge and nanopos
Because we have btcpayserver now, nanopos is not really needed any more. Nanopos
was meant to be just a PoC. Lightning charge can be removed because nanopos is
the only module that depends on it.
2020-09-22 14:05:51 +00:00
nixbitcoin
dd882753e6
joinmarket: add usage documentation 2020-09-22 13:50:55 +00:00
nixbitcoin
d0701f518c
joinmarket: automatically generate wallet 2020-09-22 13:50:49 +00:00
nixbitcoin
d6d3e8ff62
joinmarket: add tests 2020-09-22 13:50:45 +00:00
nixbitcoin
cce27da2ec
backups: add joinmarket datadir to includelist 2020-09-22 13:50:43 +00:00
nixbitcoin
173891fa5b
joinmarket: add module 2020-09-22 13:50:37 +00:00
nixbitcoin
263525d724
nix-bitcoin-services: add nb-services.privileged helper 2020-09-22 13:43:15 +00:00
nixbitcoin
f00d1d24c5
joinmarket: add pkg and local dependencies 2020-09-22 13:43:08 +00:00
Jonas Nick
6554e69818
Merge #206: Add --dry-run option to push-release script
dd78d2b2a14b033e539862359e8387db6462ad02 Add --dry-run option to push-release script (Jonas Nick)

Pull request description:

ACKs for top commit:
  erikarvstedt:
    ACK dd78d2b2a14b033e539862359e8387db6462ad02
  nixbitcoin:
    utACK dd78d2b2a14b033e539862359e8387db6462ad02

Tree-SHA512: 75351d8b60899912cbd7a76a5f98b5c19044c15297c268a097d44a0e6bb540aca6a737066290c66cbf82cfae200e8a4b03988d18d2d5e80d3a54284723f80871
2020-09-22 13:33:08 +00:00
Jonas Nick
de1a7346dc
Merge #236: btcpayserver: sqlite -> postgresql
3cfb9d074b2ceb7ea6dcbfa2250a29a63f0b04aa btcpayserver: sqlite -> postgresql (nixbitcoin)

Pull request description:

ACKs for top commit:
  erikarvstedt:
    ACK 3cfb9d074b2ceb7ea6dcbfa2250a29a63f0b04aa
  jonasnick:
    ACK 3cfb9d074b2ceb7ea6dcbfa2250a29a63f0b04aa

Tree-SHA512: 5f9f38dfc6588082a3aeaf8f9fb66ef60a451a4fc7012b4cad6d7a13c14209839021b68ca2bd8c5ee43e154998ec2f496c8f9b3a3abae1a0f376d97eec5e563c
2020-09-22 13:30:43 +00:00
nixbitcoin
3cfb9d074b
btcpayserver: sqlite -> postgresql 2020-09-17 10:17:33 +00:00
Jonas Nick
a9c163c624
Merge #221: nbxplorer/btcpayserver: add module
c9c844de802947b1e771bb56464253dcbf1a9002 btcpayserver: add tests (nixbitcoin)
f93c3c84057d1a3eccd9b1ed32823612a23337ef backups: add nbxplorer and btcpayserver datadir to includelist (nixbitcoin)
605b37c16e7df580eaff9be26cf7711595d79ba1 nodeinfo: add btcpayserver onion (nixbitcoin)
15b574faa71810d8732bcb5610be0a28b3dbd07b nbxplorer/btcpayserver: add module (nixbitcoin)
46d681a17e460f08cc90c368117523b5b36006c4 lnd: generate custom macaroons (nixbitcoin)
6f032e3c404502062fc4ceaa51d59b1a6e7f518d lnd: fix mnemonic file access vulnerability (Erik Arvstedt)
b97584f5cb3d60d20e54c9ee43e6f94f012e5ed6 netns: allow return traffic to outgoing connections (nixbitcoin)
99295328b4bd33c2dcfc49024a83f6e0e9972ed5 temp: mirror erikarvstedt btcpayserver (Calvin Kim)

Pull request description:

ACKs for top commit:
  erikarvstedt:
    ACK c9c844de802947b1e771bb56464253dcbf1a9002

Tree-SHA512: 0020964db37f5c5db3343ddef88f2e7e8d8ad48760ece73125fd9d2feaed0a3789ba3fd3eff98c225a675b49447b1728cd2c9eb4fa495c961e8376b28d32bad9
2020-09-15 14:00:38 +00:00
nixbitcoin
c9c844de80
btcpayserver: add tests 2020-09-15 12:09:35 +00:00
nixbitcoin
f93c3c8405
backups: add nbxplorer and btcpayserver datadir to includelist 2020-09-15 12:09:33 +00:00
nixbitcoin
605b37c16e
nodeinfo: add btcpayserver onion 2020-09-15 12:09:31 +00:00
nixbitcoin
15b574faa7
nbxplorer/btcpayserver: add module 2020-09-15 12:09:12 +00:00
nixbitcoin
46d681a17e
lnd: generate custom macaroons
Create new `macaroon` option that allows any module to place its own
custom macaroon in the lnd RuntimeDirectory `/run/lnd`.
2020-09-15 12:09:02 +00:00
Erik Arvstedt
6f032e3c40
lnd: fix mnemonic file access vulnerability
Previously, the file was readable by 'other' for a short time after
creation.
2020-09-15 12:09:00 +00:00
nixbitcoin
b97584f5cb
netns: allow return traffic to outgoing connections 2020-09-15 12:08:58 +00:00
Calvin Kim
99295328b4
temp: mirror erikarvstedt btcpayserver 2020-09-15 12:08:51 +00:00
Jonas Nick
adae7da3f2
Merge #231: Update nixpkgs
4bddeb13b134dd2dad0d5fd5b16f9b1010890aac Update nixpkgs (Jonas Nick)

Pull request description:

ACKs for top commit:
  nixbitcoin:
    ACK 4bddeb13b134dd2dad0d5fd5b16f9b1010890aac

Tree-SHA512: 8c886d6cc90f044db26485f5f34f76c52943f602c680c56a006f5cf90127ff8b2d5b49e7b5a1e9607f120500ec4604a62db4fe5d1d5875263598bdf9d0fa7dc3
2020-09-08 15:44:25 +00:00
Jonas Nick
4bddeb13b1
Update nixpkgs
Includes update lnd 0.10.3 -> 0.11.0
2020-09-08 08:21:26 +00:00
Jonas Nick
94874c3090
Merge #230: loop: update 0.7.0 -> 0.8.1
fc15d507ff43c9b18ac5faf1af68294e32e66f41 loop: adjust test to new message (nixbitcoin)
e56d5365cb6c2bd8dd83842e07a7ec0291d6922b loop: update 0.7.0 -> 0.8.1 (nixbitcoin)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK fc15d507ff43c9b18ac5faf1af68294e32e66f41

Tree-SHA512: a0a1c9bfceae11a0e844be042887d7d7c02ceccdbf1235bee81da935ac35817cd7a8eb37d66381870a8c820c71345de85b47be717b640be20c16c2004e8e356e
2020-08-30 19:50:29 +00:00
nixbitcoin
fc15d507ff
loop: adjust test to new message 2020-08-30 08:07:02 +00:00
nixbitcoin
e56d5365cb
loop: update 0.7.0 -> 0.8.1 2020-08-30 07:59:01 +00:00
Jonas Nick
1c31208078
Merge #229: Improve bitcoind RPC user config
9b6a3ec8359953bd4e8d51df55af55593568c113 generate-secrets: extract fn 'makeHMAC' (Erik Arvstedt)
ca18ffb90ab2011070cbbfc0f25a67516916e33a generate-secrets: fetch rpcauth.py from github (Erik Arvstedt)
4d6127bb7684291fe52647a0e2c838af60ad63f7 bitcoind: clarify RPC whitelist test (Erik Arvstedt)
9d610991be3b7b1d2f5292a80d76ad78645ac441 bitcoind: remove custom rpc user names (Erik Arvstedt)
1408403decedd3e5b8772dedc2f35af79c817c7a bitcoind: clarify how bitcoin-cli RPC access is enabled (Erik Arvstedt)
4790c601a1a7b2e73e5e84344ae0bbc3df279e30 bitcoind: move rpc user config to bitcoind (Erik Arvstedt)
876cfadf1af8b92b2c6cd4a290994698ff61c134 bitcoind: add rpc user option 'passwordHMACFromFile' (Erik Arvstedt)
59434e79f09ba8e5fe352d621b05908635d181be bitcoind: simplify default rpc user name config (Erik Arvstedt)
205829b91fad2cc233f2dd60999576f16437d762 bitcoind: remove whitespace (Erik Arvstedt)

Pull request description:

ACKs for top commit:
  nixbitcoin:
    ACK 9b6a3ec8359953bd4e8d51df55af55593568c113
  jonasnick:
    concept ACK 9b6a3ec8359953bd4e8d51df55af55593568c113

Tree-SHA512: ccb9a8d2dc1f360cc1f0bd77535fa8edfd9afec0a519719103fd059d5912a1ed4960c22ef14df616a731f6a88861fecb8d1653fb71c2288b851e4a02f9f49cb2
2020-08-29 20:06:53 +00:00
Erik Arvstedt
9b6a3ec835
generate-secrets: extract fn 'makeHMAC' 2020-08-27 12:20:06 +02:00
Erik Arvstedt
ca18ffb90a
generate-secrets: fetch rpcauth.py from github
No need to vendor this.
2020-08-27 12:20:06 +02:00
Erik Arvstedt
4d6127bb76
bitcoind: clarify RPC whitelist test
- Remove redundant comment
- Test with obviously unsafe RPC call 'stop'
- No need to test privileged user who has no whitelist
2020-08-27 12:19:49 +02:00
Erik Arvstedt
9d610991be
bitcoind: remove custom rpc user names
Simpler.
We've just removed option 'bitcoind.rpcuser', so we can also remove the
old name 'bitcoinrpc'.
2020-08-27 11:39:26 +02:00
Erik Arvstedt
1408403dec
bitcoind: clarify how bitcoin-cli RPC access is enabled
It's not immediately clear why rpcuser/rpcpassword are needed in addition to the rpcauth
config entries.
2020-08-26 22:52:47 +02:00
Erik Arvstedt
4790c601a1
bitcoind: move rpc user config to bitcoind
This enables modules-only usage.
The privileged user is needed by bitcoind (cli), the public user is
needed by other services.
2020-08-26 22:52:47 +02:00
Erik Arvstedt
876cfadf1a
bitcoind: add rpc user option 'passwordHMACFromFile'
This allows adding additional rpc users without the need for
user-specific code in preStart.
2020-08-26 22:52:47 +02:00
Erik Arvstedt
59434e79f0
bitcoind: simplify default rpc user name config 2020-08-26 21:16:32 +02:00
Erik Arvstedt
205829b91f
bitcoind: remove whitespace 2020-08-26 21:16:32 +02:00
Jonas Nick
4d19fb7bf7
Merge #228: Update nixpkgs
52978b87fba406220d6b237fa472ac8dd3711efd Update nixpkgs (Jonas Nick)
6a2efccdf3b4ed40dc37680cdf3f5582d1ce8b42 spark-wallet: 0.2.14 -> 0.2.16 (Jonas Nick)
438dde84fecfcb18dcbb13c8b9b2485e0812ec61 Replace sks-keyservers.net with keyserver.ubuntu.com (Jonas Nick)

Pull request description:

ACKs for top commit:
  nixbitcoin:
    ACK 52978b87fba406220d6b237fa472ac8dd3711efd

Tree-SHA512: b3f68865e2606760682e8fc1f6e637bfb38b382ea25cc67eff6402585b0f7118f132a5d9d7531c650d29d69c0b4eb8e277ad172038be73c4d34a9de678140844
2020-08-26 09:52:47 +00:00
Jonas Nick
5c99656cce
Merge #226: Improve netns-isolation and tests
e5fb3f6a7fb0f32ec036d2eebfc239528b0345af run-tests: document how to pass extra build args (Erik Arvstedt)
df790f67661cf9e83c39701f7c8e72de0e829d8e run-tests: allow linking test build results for all scenarios (Erik Arvstedt)
91697b1427d4deb6d41dccd5561e3939e076814d test: allow for testing all scenarios (Erik Arvstedt)
28236691aa1d8323a5fb2b0fa62a79f9d88c5328 test: rename scenarios/lib.py -> base.py (Erik Arvstedt)
80da0a41bc21f3297e8223614217a76595bb9d58 test: load complete test environment in debug mode (Erik Arvstedt)
9b4cd7bd1ccb98a3cc9d0ad116dd61094c5166e1 test: simplify scenario handling (Erik Arvstedt)
0f56ea6ad1f04f281dcb2cd2c88215c7b599aa71 test: include scenario in test name (Erik Arvstedt)
9237e5dc3df54036da5ee055c3b40025bf4bb155 test: use pydoc docstring (Erik Arvstedt)
ed73627e0256c69cbaa1e1234b8a248edd7cea36 netns-exec: minor style fixes (Erik Arvstedt)
91ebc2d517bdee91f3909d8abe2c1288105de223 netns-exec: simplify installation (Erik Arvstedt)
809e75485169c4761ee438807df55eacd20731de netns: improve bridge setup (Erik Arvstedt)
b7450877a0445151fd9e9e983d436b1ca514d820 netns: rename bridge peer devices br-nb-veth* -> nb-veth-br* (Erik Arvstedt)
8bfb7bb2f878aa6ad50dd3bae3361c68af82e47f netns: rename bridge br0 -> nb-br (Erik Arvstedt)
32e70a7516a0d9602b6884c0281abc59a85d3228 netns: move webindex config for modules-only usage (Erik Arvstedt)
121301337bd81d1d8a5d7b500b58366347abd467 netns: add option 'allowedUser' for modules-only usage (Erik Arvstedt)
9715134f066fee42101f798ec347d9c3d72057ad netns: don't repeat cli definitions (Erik Arvstedt)
e385c732567a1cdf958f8b6690011e03765cd53b netns: separate implementation and service configs (Erik Arvstedt)
d0b8d77de2018207d8b2e598990ba65db499c08d netns: remove conditionals for service settings (Erik Arvstedt)
0f0f6ddbb97716de7af9a5bbd4519c0ec4e53b95 netns: add comment about undesirable algorithmic complexity (Erik Arvstedt)
a3ae8668e639159d5b63dd3fdc00d166c9c12e11 netns: use map instead of concatMap (Erik Arvstedt)
b7fc819be5cae75a1417c5afcf8376df07f8f03a netns: consistent var naming (Erik Arvstedt)
5a81693ef3e709a630d510c9fbf23c1bca89522d netns: add range check for netns ids (Erik Arvstedt)
74f1610668960dd1579f313707264d8c60b15e56 netns: clarify addressblock description (Erik Arvstedt)
4eb92df08c7ae58d27d74140742826d5fa3a28c7 netns: remove redundant filter (Erik Arvstedt)
50de54aef1e750a40f98ec5ada17e6cfe9d4047e netns: remove empty connections defs (Erik Arvstedt)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK e5fb3f6a7fb0f32ec036d2eebfc239528b0345af
  nixbitcoin:
    ACK e5fb3f6a7fb0f32ec036d2eebfc239528b0345af

Tree-SHA512: e2accf7b5ab5d4c4c07a8f9307409021809326648139424ff7ebaa7be3e628f21d5be8dafabe19b9659d09537a5b3976e2513bc287e79027376b5271006bc214
2020-08-25 13:29:33 +00:00
Erik Arvstedt
e5fb3f6a7f
run-tests: document how to pass extra build args 2020-08-25 14:58:04 +02:00
Erik Arvstedt
df790f6766
run-tests: allow linking test build results for all scenarios 2020-08-25 14:58:04 +02:00
Erik Arvstedt
91697b1427
test: allow for testing all scenarios
Test all scenarios by default when running 'build' (which happens
when the script is called without arguments).

Default to scenario 'default' in other test commands like 'debug'.
2020-08-25 14:53:13 +02:00
Erik Arvstedt
28236691aa
test: rename scenarios/lib.py -> base.py
This file isn't a scenario, it's also not a lib because it contains
the main share of actual tests.
2020-08-25 14:53:13 +02:00
Erik Arvstedt
80da0a41bc
test: load complete test environment in debug mode
Stop just before executing actual tests.
This makes all test functions accessible in debug mode.
2020-08-25 14:53:12 +02:00
Erik Arvstedt
9b4cd7bd1c
test: simplify scenario handling
We can switch to a more sophisticated scheme later when adding more scenarios
2020-08-25 14:53:12 +02:00
Erik Arvstedt
0f56ea6ad1
test: include scenario in test name 2020-08-25 14:53:12 +02:00
Erik Arvstedt
9237e5dc3d
test: use pydoc docstring 2020-08-25 14:53:12 +02:00
Erik Arvstedt
ed73627e02
netns-exec: minor style fixes
- Use inline variable declarations
- Improve messages
- Fix naming: available -> allowed
- Simplify intro comment
2020-08-25 14:53:12 +02:00
Erik Arvstedt
91ebc2d517
netns-exec: simplify installation 2020-08-25 14:53:12 +02:00
Erik Arvstedt
809e754851
netns: improve bridge setup
- Explain why we don't use option `networking.bridges`
- Make the bridge setup service part of NixOS' network-setup.service.
  This yields no noticable functional changes for now, but it's
  conceptually cleaner to finish the network setup before network.target
  becomes active.
- Add 'nb-' prefix to service name
2020-08-25 14:53:12 +02:00
Erik Arvstedt
b7450877a0
netns: rename bridge peer devices br-nb-veth* -> nb-veth-br*
This ensures a consistent 'nb-' namespace and simplifies the
dhcpcd.denyInterfaces rules.

Also rename vethName -> veth.
2020-08-25 14:53:12 +02:00
Erik Arvstedt
8bfb7bb2f8
netns: rename bridge br0 -> nb-br
br0 has a high risk of name clashes when nix-bitcoin used as part of a
larger config.
Use a more specific name.
2020-08-25 14:53:08 +02:00