390 Commits

Author SHA1 Message Date
Antoine Poinsot
87fac3bcea
Merge #221: just put the whole gpg key
52341db41d719f7cbb224d9164593f5f2992eae7 just put the whole gpg key (Kevin Loaec)

Pull request description:

  I'm quite sure it does the check for you. So i also removed the extra comment. If i'm doing something wrong plz educate me :D

ACKs for top commit:
  darosior:
    I wouldn't be surprised if gpg was doing something surprising like transforming the key into a fingerprint before pulling from the keyserver. On the other hand it's the only bit of additional information re: checking GPG signatures in this document so being consistent is probably better. ACK 52341db41d719f7cbb224d9164593f5f2992eae7

Tree-SHA512: 95cadf5a6d93b63dbf7072cc61129feb2d5a229442ba6a4eaa6f741228d5404b929ba262b3550759edef230baa3aa09e469017362e37103de0a6eed5e4331a90
2022-12-14 18:31:32 +01:00
Antoine Poinsot
53d64963e8
Merge #220: Made it more user friendly. Also, ARCH <3
3388ab9140857b2a715ab95bb69b30754dd60e0b Update doc/TRY.md (Kevin Loaec)
e327104a0f45cf1b994cb85b9f806e54b160ab17 Update doc/TRY.md (Kevin Loaec)
d24bf432378b738df23d878f748bf0f9ed6ed6f4 Update TRY.md (Kevin Loaec)
7ae4992d8858b6083ce2b92665b92ace9b40b6e4 Update doc/TRY.md (Kevin Loaec)
f6e143769590c4b3b32060e2c966080d10fcc325 Made it more user friendly. Also, ARCH <3 (Kevin Loaec)

Pull request description:

  Replaced the confusing Recovery section with a detailed Ian Coleman keygen.

ACKs for top commit:
  darosior:
    ACK 3388ab9140857b2a715ab95bb69b30754dd60e0b

Tree-SHA512: d3a3b628d6f3ffe3b7485188a9cd278f98ad66ea32e9798388146995ff02ded7e50315a8e61d74c691e8d50f87391adefd39aa87a21c7135797a17fe666f7c1a
2022-12-14 18:31:20 +01:00
Antoine Poinsot
e85d8d73c1
Merge #219: Wording, phrasing, general update.
b20b98677e7b675e93b3a13d7c4bf37952698654 Update README.md (Kevin Loaec)
3bc1700880aaca859c9ff419aca0a2048134d28e Update README.md (Kevin Loaec)
95b8c8d3e0650002aceec0ecfb8672be1f6cdb58 Wording, phrasing, general update. (Kevin Loaec)

Pull request description:

ACKs for top commit:
  darosior:
    ACK b20b98677e7b675e93b3a13d7c4bf37952698654

Tree-SHA512: 42251028970ee31aa8e971675a6220184727f1fd34b6e580e239944681b2758dbceb0b00ff1cbdedb3e13cf635ec2a3dadf5e773d50327fb0d4209f204c241c1
2022-12-14 18:31:07 +01:00
Kevin Loaec
3388ab9140
Update doc/TRY.md
Co-authored-by: Antoine Poinsot <darosior@protonmail.com>
2022-12-14 15:46:02 -01:00
Kevin Loaec
e327104a0f
Update doc/TRY.md
Co-authored-by: Antoine Poinsot <darosior@protonmail.com>
2022-12-14 15:45:20 -01:00
Kevin Loaec
d24bf43237
Update TRY.md 2022-12-14 15:43:33 -01:00
Kevin Loaec
7ae4992d88
Update doc/TRY.md
Co-authored-by: Antoine Poinsot <darosior@protonmail.com>
2022-12-14 15:28:15 -01:00
Kevin Loaec
b20b98677e
Update README.md 2022-12-14 14:45:17 -01:00
Kevin Loaec
3bc1700880
Update README.md
Co-authored-by: Antoine Poinsot <darosior@protonmail.com>
2022-12-14 14:39:55 -01:00
edouard
88c807d599
Merge #223: Gui add launcher
63be34b3d887d0d39f861b6ae46996d64a245b18 Add confirm network step to gui (edouard)

Pull request description:

ACKs for top commit:
  edouardparis:
    Self-ACK 63be34b3d887d0d39f861b6ae46996d64a245b18

Tree-SHA512: 5952af35c6559ab91aeed330973dd2496a35d246c18d87266f81abb65effcfc4da11005c1e15ab7923d4f4db3709079987b0c3e527ca7611c244737ea8f10505
2022-12-14 12:28:32 +01:00
edouard
63be34b3d8 Add confirm network step to gui
User is asked which network to start with.
This is a required step in case the user
start the software without a console and
can not set himself the network or launch
the install for another non existing network.
2022-12-14 11:55:13 +01:00
edouard
a4299877eb
Merge #205: gui: add recovery feature
f43d99f0fbd851d9817b3668b26953f81c77c1f9 gui: add panel recovery (edouard)
f2facdf1641eaa0241201dee23e13dec63e534cc gui: add create_recovery command to client (edouard)
f4afed4d6a14ad9ea515a69ebf0c584106423075 bump liana master (edouard)

Pull request description:

  After #182, this fixes #180.

ACKs for top commit:
  edouardparis:
    Self-ACK f43d99f0fbd851d9817b3668b26953f81c77c1f9

Tree-SHA512: 49fa2582b5ef405b3ac79ce621792918afe00b0f6fd64bce626f84c11fc97c2b96459f3daf424e625eda31842f85982b0bf76da71afd36bd848e9a4d8fe96c27
2022-12-14 11:38:07 +01:00
edouard
f43d99f0fb gui: add panel recovery 2022-12-14 09:21:07 +01:00
edouard
f2facdf164 gui: add create_recovery command to client 2022-12-14 09:21:07 +01:00
edouard
f4afed4d6a bump liana master 2022-12-14 09:21:07 +01:00
Kevin Loaec
52341db41d
just put the whole gpg key
I'm quite sure it does the check for you. So i also removed the extra comment. If i'm doing something wrong plz educate me :D
2022-12-13 20:17:20 -01:00
Kevin Loaec
f6e1437695
Made it more user friendly. Also, ARCH <3
Replaced the confusing Recovery section with a detailed Ian Coleman keygen.
2022-12-13 20:09:30 -01:00
Kevin Loaec
95b8c8d3e0
Wording, phrasing, general update. 2022-12-13 18:50:19 -01:00
Antoine Poinsot
ad1f0e20b1
Merge #182: Recovery command to sweep "expired" coins
ba994ff8ff01d04fd31ed77cf7f66e0862e68e17 commands: do not underestimate the size of created transactions (Antoine Poinsot)
46a94d6c8eb144484a4b0df2ddbd48b32d4d096f qa: test recovery 'sweep' transaction creation (Antoine Poinsot)
3b5cbd5122fa53d0247e82dd7fc703b5d0a4bae3 qa: introduce a sign_and_broadcast utility (Antoine Poinsot)
d362885b85107b616447899d5eaaa5ba1b55c170 qa: record the recovery xpub too (Antoine Poinsot)
a69fb625ea3b8dfbfa1bf384e001f167fd04ff86 qa: use a CSV of 10 for recovery (Antoine Poinsot)
a78f46fa2fc5337c51d1eaa6ac6bbee04cfdf437 [refactoring] jsonrpc: sort command names alphabetically (Antoine Poinsot)
c09ae3f87bc8bb2391d88d1a718b35d4a6c568fa commands, jsonrpc: add a new 'createrecovery' command (Antoine Poinsot)
3d5d0134b4b5bc06910a89d23def36de5b548c30 commands: fix the capacity of input vectors in create_spend (Antoine Poinsot)
f2312593da8b27c6c6a69c7b0463959369c5acb6 commands: check for dust outputs in the PSBT sanity checks (Antoine Poinsot)
9f23161a53ad32d03d4ec464c48a819862dbf3e5 commands: correct the max feerate value (Antoine Poinsot)
54410cd9c435e1e6228b985d78e55b357c2368b8 database: allow to query coins by their spending status (Antoine Poinsot)

Pull request description:

  A new command that provides a simple way for a user to sweep all the coins whose timelocked recovery path is available.

  The first part of #180. Note this also contains a number of drive-by fixes that i noticed while coding this up.

ACKs for top commit:
  darosior:
    self-ACK ba994ff8ff01d04fd31ed77cf7f66e0862e68e17 -- tested by Edouard on the GUI

Tree-SHA512: 002cb8602370fe3bec0692fe7bbe9e7af494b43756d3092da99b37e4ce2837bcdfcfb3afe7043900eb41c70de12e2129e19363b9efe41cee91c7f1f7c2824fb0
2022-12-13 18:17:14 +01:00
Antoine Poinsot
05bbb3eef2
Merge #215: update bitcoind connection and be more robust at startup
acd6929831964d643565f8f22b552f74613a3a1d doc: update for bitcoind 24.0.1 release (Antoine Poinsot)
650101525d890f50290989bd58c367024a69115c bitcoind: set minimum required version to 24.0 (Antoine Poinsot)
9211d849c191ff5d2552bde681edaa7038c8d049 bitcoind: be less stupid when loading the watchonly wallet (Antoine Poinsot)

Pull request description:

  Fixes #210
  Fixes #209
  Fixes #213

ACKs for top commit:
  darosior:
    self-ACK acd6929831964d643565f8f22b552f74613a3a1d

Tree-SHA512: 8cacf41b0e00faed877462dc57b595265ff2936937d45535d1be2b42fd1bf80df2928ccacbefd43f82d88a728aca898a8549899380e341de8b8e74d34ec74642
2022-12-13 18:00:17 +01:00
Antoine Poinsot
1e56c58166
Merge #214: descriptors: rule-out 0-value timelocks
b74a6ffc16740c1a8c0b93a8b4aa34bc1a1b819a qa: unflake test_rescan_edge_cases (Antoine Poinsot)
f6db9c6677ca43c51afbacbf4036cfe55f5539b1 descriptors: rule out null timelocks (Antoine Poinsot)

Pull request description:

  Fixes #208.

ACKs for top commit:
  darosior:
    self-ACK b74a6ffc16740c1a8c0b93a8b4aa34bc1a1b819a

Tree-SHA512: 3d4ed44f3b376e897bd28d11b9e1ce367d6cdf28f70472f39b3939d2cf25580302a81542131086aa1b9a028161f0eabe084efdd54a55703d0a2d4150eac84ae9
2022-12-13 17:47:27 +01:00
Antoine Poinsot
b74a6ffc16
qa: unflake test_rescan_edge_cases
We weren't waiting for lianad to be back to the same height as bitcoind.
Necessarily it could happen that sorted_coins() would return an empty
list.

Fixes #142 (did 50 successful runs of the test)
2022-12-13 16:59:57 +01:00
Antoine Poinsot
f6db9c6677
descriptors: rule out null timelocks
They are valid by consensus, not by Miniscript.
2022-12-13 16:59:56 +01:00
Antoine Poinsot
acd6929831
doc: update for bitcoind 24.0.1 release
Technically the minimum we support is 24.0 but let's not nudge people to
install a version with a buggy wallet.

Fixes #210
2022-12-13 16:37:52 +01:00
Antoine Poinsot
650101525d
bitcoind: set minimum required version to 24.0 2022-12-13 16:37:52 +01:00
Antoine Poinsot
9211d849c1
bitcoind: be less stupid when loading the watchonly wallet
Only load it if isn't there already.
2022-12-13 16:14:20 +01:00
Antoine Poinsot
de629cc075
Merge #211: gui: disable daemon jsonrpc client for windows
37562608ecd9471fe37ea123fe21512b6d373068 gui: disable daemon jsonrpc client for windows (edouard)

Pull request description:

  It is not certain that uds_windows will work so we prefer
  to remove it.

ACKs for top commit:
  darosior:
    utACK 37562608ecd9471fe37ea123fe21512b6d373068. That sounds more reasonable, and removes 8 dependencies 🎉.

Tree-SHA512: f0af1ceba6dc0881d5265497c606ff9916ba9a64cb94a79b4e4b4ecce9c3800fc796f0cd2eb620abf14793efb413b88cee202ce800a4e4c237e761ef5d2ab528
2022-12-13 16:00:47 +01:00
Antoine Poinsot
ba994ff8ff
commands: do not underestimate the size of created transactions
We were truncating when computing the virtual size of satisfactions.
2022-12-13 15:37:58 +01:00
Antoine Poinsot
46a94d6c8e
qa: test recovery 'sweep' transaction creation 2022-12-13 15:34:25 +01:00
Antoine Poinsot
f9359869f7
Merge #140: Bootstrappable builds
ef20b782301bae2fdfb842dfd89a749e60cb449e guix: make the builds actually reproducible (Antoine Poinsot)
72a332d2caf6c139d20855203d107fe3b185ba7d guix: fix the dependencies listing for the GUI container (Antoine Poinsot)
4a38040acf12dd457ac5f29a24f4b3800114255c guix: documentation (Antoine Poinsot)
37a28dbf7d5a22426d1844ef792d04e604e5b91b guix: use a lighter environment for building the daemon (Antoine Poinsot)
ae0b24f97494a7a859578ab6191187c4405a225f guix: allow to limit the number of cores dedicated to the build (Antoine Poinsot)
940c28d072c449295f6e1225446b829bea2d3053 guix: use patchelf to strip interpreter and RPATH (Antoine Poinsot)
3906a1b5bc5e7f57925981b4dd009fc6b13de7c1 guix: reproducible builds of the GUI (Antoine Poinsot)
8dda896e4b2c4baa69b5e1b839bfaf47b9b36320 guix: Linux reproducible builds of the daemon (Antoine Poinsot)

Pull request description:

  This introduces reproducible and bootstrappable builds of our softwares by using [Guix](https://guix.gnu.org/). This is heavily inspired by the work on Guix [that was done in the Bitcoin Core project](https://github.com/bitcoin/bitcoin/tree/master/contrib/guix). For an intro to reproducible builds with Guix see [this post](https://guix.gnu.org/blog/2020/reproducible-computations-with-guix/).

  For details, see the documentation introduced in this PR. Apologies for the poor commit history.

ACKs for top commit:
  darosior:
    ACK ef20b782301bae2fdfb842dfd89a749e60cb449e

Tree-SHA512: 58800170a8fd0822129f1fefa23c8a8cb68e8758a56b3ea9933b41cff1eff7691ed735a28f156395b76c18447044f2ba5a3f4cd519696667b6df90e27e20d3f6
2022-12-13 14:52:42 +01:00
Antoine Poinsot
ef20b78230
guix: make the builds actually reproducible
Paths to the dependencies affect the symbols in the binary
2022-12-13 14:50:59 +01:00
Antoine Poinsot
72a332d2ca
guix: fix the dependencies listing for the GUI container 2022-12-13 14:50:59 +01:00
Antoine Poinsot
4a38040acf
guix: documentation
This is directly inspired from the Bitcoin Core project's documentation.
This especially copies some stuff written by Carl Dong.
2022-12-13 14:50:58 +01:00
Antoine Poinsot
37a28dbf7d
guix: use a lighter environment for building the daemon
Special case the GUI dependencies to the GUI's container
2022-12-13 14:50:57 +01:00
Antoine Poinsot
ae0b24f974
guix: allow to limit the number of cores dedicated to the build 2022-12-13 14:50:57 +01:00
Antoine Poinsot
940c28d072
guix: use patchelf to strip interpreter and RPATH 2022-12-13 14:50:56 +01:00
Antoine Poinsot
3906a1b5bc
guix: reproducible builds of the GUI
The GUI is using an insane MSRV so i had to patch my way through in
order to be able to build some dependencies.
2022-12-13 14:50:56 +01:00
Antoine Poinsot
8dda896e4b
guix: Linux reproducible builds of the daemon 2022-12-13 14:50:55 +01:00
edouard
37562608ec gui: disable daemon jsonrpc client for windows
It is not sure uds_windows will work so we prefer
to remove it.
2022-12-13 12:20:20 +01:00
edouard
bb9a41727e
Merge #201: fix gui: wrong event selection on home panel
ea6d4f9b6374ea9e8873a4eb768feef11caaa48f fix gui: wrong event selection on home panel (edouard)

Pull request description:

  Because pending events are in a different list
  that confirmed event. The wrong list item was
  selected when user tried to click on a pending
  event.

ACKs for top commit:
  edouardparis:
    Self-ACK ea6d4f9b6374ea9e8873a4eb768feef11caaa48f

Tree-SHA512: c0eef61c53a75f1fa746494bf9abc151a31f37d05616a8615eba2f3d3f6fe2573d96adef3b5ad7efd7f30b71d01afb012d5166cdfcbf9a1215752cbdfb43d6ae
2022-12-12 15:49:34 +01:00
Antoine Poinsot
3b5cbd5122
qa: introduce a sign_and_broadcast utility 2022-12-09 12:27:50 +01:00
Antoine Poinsot
d362885b85
qa: record the recovery xpub too 2022-12-09 12:27:49 +01:00
Antoine Poinsot
a69fb625ea
qa: use a CSV of 10 for recovery 2022-12-09 12:27:49 +01:00
Antoine Poinsot
a78f46fa2f
[refactoring] jsonrpc: sort command names alphabetically 2022-12-09 12:27:48 +01:00
Antoine Poinsot
c09ae3f87b
commands, jsonrpc: add a new 'createrecovery' command
This is a new command dedicated to the recovery usecase. For now it's
dead simple: sweep all coins that are available through the recovery
path to a given address.
2022-12-09 12:27:47 +01:00
Antoine Poinsot
3d5d0134b4
commands: fix the capacity of input vectors in create_spend
They were based on the expected size of the outputs vector...
2022-12-09 12:20:39 +01:00
Antoine Poinsot
f2312593da
commands: check for dust outputs in the PSBT sanity checks 2022-12-09 12:19:02 +01:00
Antoine Poinsot
9f23161a53
commands: correct the max feerate value
We should have a functional test for this...
2022-12-09 12:19:02 +01:00
Antoine Poinsot
54410cd9c4
database: allow to query coins by their spending status 2022-12-09 12:19:01 +01:00
Antoine Poinsot
b3337193a4
Merge #153: Fill in non_witness_utxo when creating Spend PSBTs
07e5ea3fd2afae4e1b84abc57b0937c6e74ab3b0 commands: fill non_witness_utxo field in PSBT inputs for createspend (Antoine Poinsot)

Pull request description:

  Fixes #133.

ACKs for top commit:
  edouardparis:
    ACK 07e5ea3fd2afae4e1b84abc57b0937c6e74ab3b0

Tree-SHA512: 57a211482e138d55c95494a070e67e2f353a8688cf0f546b71de18c5ea6c2b752231c84c6281b8ed59487cb057fc8265139b59598b3bed79bb6482a5cdd00a7c
2022-12-09 12:18:43 +01:00