To know and manage the fact that gui or installer
started a bitcoind sub process, the process child
is wrapped and passed by the different state of the app.
bf67f94f56d6ae28973c27f0a8999ecd1eab7398 installer: download and install bitcoind (jp1ac4)
d507d5760ac051cf264c95b4fdef9ced27dde9cd gui: add subscription to Step trait (jp1ac4)
ae23fbc81ddc903183ce971afa5597f95e26b82a gui: add download module (jp1ac4)
b3bc9435ceccf40cca0f8be1c107e9bbf9d3bb9e gui: add dependencies to download and install bitcoind (jp1ac4)
Pull request description:
This is a follow-up PR to #592 as part of #570 to download and install bitcoind.
I'm creating this draft PR now to facilitate discussion. Once #592 has been merged, I'll rebase on master.
ACKs for top commit:
darosior:
ACK bf67f94f56d6ae28973c27f0a8999ecd1eab7398 -- modulo a few changes we'll address in follow-ups. I've not reviewed the code but significantly tested it on both Windows and Linux.
edouardparis:
ACK bf67f94f56d6ae28973c27f0a8999ecd1eab7398
Tree-SHA512: bda4b8bfbb3a59917d9ea60c074c2b0021229213240bebc4bd176f9909c62ab323d0a8d4becffbac192f29fad92adb81b2da0bc9b37c8eea1654c26ec6699077
5680ad27ecce8409d582ebf834bdecb3650b9233 lib: on Windows, migrate the watchonly wallet from bitcoind datadir (Antoine Poinsot)
c9d86f1c75be693e796591be9f1f468687728600 lib: implement a superior workaround for the watchonly wallet on Windows (Antoine Poinsot)
Pull request description:
See the added comment for the details. No need to store the watchonly wallet under bitcoind's datadir anymore. 🎉🎉
I've noticed this while working on fixing #630 on Windows which failed for the same root reason as why the watchonly wallet path didn't work on Windows.
Fixes#653.
ACKs for top commit:
darosior:
ACK 5680ad27ecce8409d582ebf834bdecb3650b9233 -- tested it on Windows
edouardparis:
utACK 5680ad27ecce8409d582ebf834bdecb3650b9233
Tree-SHA512: 52158340097e286d882e6503d8bc1fbd4653729c08055cd2609a120aabc409ed38cbd40c7cb0c3a6cb9c67f163f8084fd886daa979e56ccf6223eb51773500ef
We used to store it there, if it's not within our own datadir copy it
from where it would have been stored by Liana v1.
Note we don't conditionally compile this on Windows so the codepath can
be tested with a functional test.
34f3946fc814bf5c915be131dd3092b21f4f48e1 lib: windows: don't unload the wo wallet if not loaded (Antoine Poinsot)
Pull request description:
ACKs for top commit:
darosior:
self-ACK 34f3946fc814bf5c915be131dd3092b21f4f48e1
Tree-SHA512: ef7b5a15ecc18b7ee2ecb286569742f6adf10e0487f94787cc8fc1842516b5d9e969f8cda76ac51897c3c934ed3357c89ac1eae2bc03512a69e832e998ef99ea
3250d8dc879f48959ae1827e2b0057361e1feef2 gui: adapt to latest change in lianad API (Antoine Poinsot)
Pull request description:
ACKs for top commit:
darosior:
self-ACK 3250d8d
Tree-SHA512: 7c66870dadd125c0159c12cbd9f1b1ec82d6a797fcfa811d53cd4c134cc70ac5bd12f95f58a1c81c3e4c89cd89ba6e18c4456d784c2a9861ebaad79eccc5aaf3
9255b5ed941f04e56de4f32251fbe9b3d692baaa bitcoind: use the node client to make node requests (Antoine Poinsot)
Pull request description:
Props to Kevin for finding this rather significant bug. We should really be catching this type of bugs with code review..
ACKs for top commit:
darosior:
Ironical self-ACK 9255b5ed941f04e56de4f32251fbe9b3d692baaa
Tree-SHA512: da7b54e73201ce7f6003b7c939a576a33f6b3ea7234370b976dc9a6525cb3a18a10d160d60932b44e445fbb6057d07efde283fcfad1974c6734b5b4d2d0868de
bc35cdaad8e18b0942b68de1d3a054232b2f0db1 installer: move bitcoind steps to own module (jp1ac4)
Pull request description:
This was originally part of #630, but will be easier to see changes by moving to its own PR.
It simply moves bitcoind-related content of `step/mod.rs` to its own module.
ACKs for top commit:
darosior:
ACK bc35cdaad8e18b0942b68de1d3a054232b2f0db1 -- move-only + adapting includes
Tree-SHA512: f3526c7d1d5325f1057f77dac9197d3548a796d860f8612577016138ac47dfab1f8a04b4063e74b69b337c6202999adfecb30c4a7e139e1419416a6906084b33
5c87937d4676354f19357e17b36655eb4853dbf9 Add more bitcoind-related setup logging (Antoine Poinsot)
Pull request description:
At startup it sometimes appear we may be hanging when setting up bitcoind. Add more logging to give more information about what's taking long to setup (for instance, loading the watchonly wallet).
Related to https://github.com/wizardsardine/liana/issues/475.
ACKs for top commit:
darosior:
ACK 5c87937d4676354f19357e17b36655eb4853dbf9
Tree-SHA512: 75c553cabf545d57a5fc2d251e5b4cd880a931a408c6f1b1052067f2ccc8e0728ad779f30de5a88c2566f9e67ac085b713393ee4fa193331e49c3a8e6112ecc8
b5b96b95937ef914aed237b7829a71ff3672c3f4 README: mention the guide on recovering a backup on Core (Antoine Poinsot)
8c7c7a71353a6054f80eeb5ce4be0f946cec89a5 doc: polish the Bitcoin Core recovery document (Antoine Poinsot)
Pull request description:
ACKs for top commit:
darosior:
self-ACK b5b96b95937ef914aed237b7829a71ff3672c3f4 -- it's only doc
Tree-SHA512: b51b8e0f2eac896872ca2380cf0e3f8b4e6e518232e5cbc57dbeaaa517c56dfadfa6d6165a27704ecfda0ffe6bdf5a683e1cfd15b94dedcd8480c3c58865ed51
fcfad2de348a7d8b362631cf787599c284242aad import descriptor w/o replacing hardened identifier (pythcoiner)
eb1e0131222893981ce58965881c62c847d54372 recover walkthrough (pythcoiner)
Pull request description:
xref #375
ACKs for top commit:
darosior:
ACK fcfad2de348a7d8b362631cf787599c284242aad. I'll have a second pass for the syntax and expliciting a couple things. Thanks!
Tree-SHA512: c2713d0db8240b844c3a4cf3d97044a5846bba903c1209f08ce903475525d5145b9555fa693eed326e3d4a8e85577922adfb366664ec162303cb0bf3a4aae2a0
2f430fccf91d271e7d3a7de38dcb89046ccd89df README: add missing filename for MacOS. (Antoine Poinsot)
Pull request description:
Top commit has no ACKs.
Tree-SHA512: 5fa806303bb39b0055c2accce211ccb66f32789ad8758a00e5993191da337e4ad8a464cb2f4a8e066aa26c1f0e2a714f5034ffe0f33acd3a0ee03b5f477a286a
b6c71ebe6ab70c7cd4492632cd175fbaddb84b12 contrib: fixup the Debian package creation in the release script (Antoine Poinsot)
d2b0e401318a13d336db91daaf293bb1800cada7 README: mention the Debian package on the README (Antoine Poinsot)
Pull request description:
Keeping it draft until we actually publish the package.
ACKs for top commit:
darosior:
ACK b6c71ebe6ab70c7cd4492632cd175fbaddb84b12
Tree-SHA512: 0b6d1c0865afb02ec1a43eb582270f22d8f115b95850982a9376fe24cf665780885fcf91d969bbea3ae8ac6d7b13766f9cf17cc773d9ebe88dcc5932f0115776
698eff7059b1efb9ae92d4a3e3f78113f4c9f5b0 doc: Add step to choose bitcoind type (jp1ac4)
36cf85d84933c0cf5783d0a67fa73ae3050a3ec6 gui: add option to use internal bitcoind (jp1ac4)
765c68b02e87dbea7d14935642ff9a91dcbc9ee2 installer: allow for different previous messages (jp1ac4)
Pull request description:
This is to resolve part of #570 (configure and start an already-installed bitcoind).
I'm opening this draft PR so that you can provide feedback and check if any changes in approach are required.
I've added optional steps to the installer for the user to configure and start an "internal" bitcoind that uses `~/.liana/bitcoind_datadir` as its data directory.
The main things missing are:
- [x] Make it work on Windows.
- [x] Stop internal bitcoind when Liana is not running.
- [x] Start this internal bitcoind, if applicable, when returning to Liana after installation. One option for this would be to check in the Liana config file whether the bitcoind `.cookie` file is within the `~/.liana/bitcoind_datadir` folder, which would indicate that the internal bitcoind should be used, and then to start it (we might need to store the executable path if it's not in PATH).
- [x] Tests!
ACKs for top commit:
edouardparis:
ACK 698eff7059b1efb9ae92d4a3e3f78113f4c9f5b0
Tree-SHA512: ce561cd74944b9a80e73bf0f45eafc613a033b115276c208cba95a00920409d3ec56b81cf50fd29eb60c82b96c1d9295a51b8df7e7ca62a4474dd77461564dd0
During installation, the user may choose for Liana to configure and start bitcoind for them.
This internal bitcoind uses as its data directory the `bitcoind_datadir` folder within the
Liana data directory.
If the internal bitcoind option has been selected for a network, it will be automatically
started when the user returns to Liana and stopped when Liana is closed.
Clicking the "Previous" button during installation will default
to the current behaviour, unless a different message is passed to
the function by any given step.
caa9d385b963e985dd665c0269534c2c28603100 check if embedded daemon is stopped before request (edouard)
Pull request description:
ACKs for top commit:
edouardparis:
Self-ACK caa9d385b963e985dd665c0269534c2c28603100
Tree-SHA512: e15fc9be90c48c5cfa549e7e8caf42502af07446ecc78579fda645494c3e4b482f4e756d3b76e862f50d7417e4efabdb40db9510a5ce961988df1d40cefdea3f