Releases: wizardsardine/liana
v12.0 rc1
12.0 rc1
This release is a candidate for version 12.0 of Liana.
This release mostly modifies liana-gui by adding new features:
- Update library dependency to support Bitbox02 Nova.
- Allow user to also delete wallet on Liana-Connect platform.
- Add tiny-skia Iced backend to have a GUI renderer fallback.
- Add support for multiple panes and tabs.
- Add an option to upload a wallet/descriptor file when adding an existing Liana wallet using Liana-Connect as a backend.
- Allow self signed certificate for electrum server.
And some UX/UI improvements:
- Add alias to confirmation message of delete wallet modal.
- Add links with info about changing backend or node type both during the setup and in the wallet settings.
- skip syncing screen if node is not bitcoind.
- Improve timelock duration selection and display.
- Improve the "Add an existing Liana wallet" with own node UI by prioritizing backup file usage.
And fixes some small issues:
- fix some minor issues in the comments.
- fix(poller): only update last used index for affected keychain.
- liana-ui: add warning to form::Value.
What file from the list should i download?
Liana-12.0rc1-macos.zip
if you are on MacOS,liana-12.0rc1.exe
if you are on Windows,liana-12.0rc1-1_amd64.deb
if you are running a Debian-based Linux (such as Ubuntu). Usedpkg -i liana-12.0rc1-1_amd64.deb
as root (or preceded by sudo) to install it.liana-12.0rc1-x86_64-linux-gnu.tar.gz
if you use another Linux distribution.
You can verify integrity of the files with:
sha256sum --check liana-12.0rc1-shasums.txt
gpg --verify liana-12.0rc1-shasums.txt.asc
v11.1
This release adds some fixes for the liana-gui software:
- fix incorrect path to daemon.toml in liana-gui settings
- fix checks for whether wallet uses managed bitcoind
What file from the list should i download?
Liana-11.1-macos.zip
if you are on MacOS,liana-11.1.exe
if you are on Windows,liana-11.1-1_amd64.deb
if you are running a Debian-based Linux (such as Ubuntu). Usedpkg -i liana-11.1-1_amd64.deb
as root (or preceded by sudo) to install it.liana-11.1-x86_64-linux-gnu.tar.gz
if you use another Linux distribution.
You can verify integrity of the files with:
sha256sum --check liana-11.1-shasums.txt
gpg --verify liana-11.1-shasums.txt.asc
v11.0
11.0
This release adds some important new features:
- multi-wallet support
- coin control for recovery transactions
- a new RPC command to list addresses that have been revealed to the user, whether used or not
- the ability in the GUI to view unused addresses that were previously generated by the user
- support airgap flow (SD card) for Coldcard & Krux signing devices
It also includes various other improvements and fixes as outlined below.
Note that the internal structure of Liana's data directory has been updated in this release in such a way that previous versions of
Liana will no longer work on a wallet that has been opened using v11.
Features
Liana GUI
- A user may now install more than one wallet:
- Each wallet is able to set its own local node or Liana Connect configuration.
- A Liana-managed Bitcoin Core node will be shared among those wallets selecting this option. Related to this, new wallets using a managed node will use cookie file RPC authentication rather than username and password.
- To avoid xpub reuse between wallets when using the same signing device, the user can now select the "account" to use with each signing device when setting up the wallet.
- The user can give each wallet an alias.
- New feature and improvements to the Recovery panel:
- Coin control can now be used for recovery transactions to enable the user to manage recipients and consolidation of UTXOs as desired. The recovery transaction flow thus resembles more closely that of a regular spend.
- The Recovery panel menu option has been moved to the main GUI sidebar above Settings for better visibility.
- The Receive panel now includes a list of unused addresses that were previously generated by the user, if any.
- Whether an address has been used is based on the current set of coins in the wallet.
- These unused addresses can be managed in the same way as those that have been newly generated, e.g. adding/editing labels.
- Xpubs and PSBTs can now be exported to and imported from a file, which means the user can now interact with Coldcard & Krux signing devices entirely via SD card:
- import xpub from file
- export descriptor to file
- import & export PSBT from/to file
- When creating a new wallet, a "Clear All" button has been added on the step where the user defines the descriptor (keys, recovery paths, etc) to quickly restart this step in case any mistakes are made.
- Bitcoin Core v29.0 will be used for new Liana-managed installations.
- When selecting signing devices for signing transactions or otherwise, those devices that are not relevant to the wallet or to the particular spending path being used for a transaction will be greyed out with a corresponding message.
- When drafting a transaction, the fee will be shown alongside the feerate.
- When exporting items from Liana, the pop-up modal includes a cross-icon to close it.
- Some buttons have been changed to primary buttons.
Lianad
- The
createrecovery
RPC command now includes an optional parameter for specifying which coins to include. - A new
listrevealedaddresses
RPC command has been added to list revealed addresses, optionally filtered to exclude those that have been used.
Fixes
Lianad
- When merging PSBT signatures, the
updatespend
RPC command will treat the PSBT currently saved in the database as the base PSBT onto which signatures will be added from the other PSBT.
Liana GUI
- The GUI will better keep track of its managed bitcoind processes to ensure they are stopped/started as required.
- When checking for available recovery paths, the GUI will now ignore unconfirmed coins as a recovery transaction can only include confirmed coins.
- When using Liana Connect as the backend, coins will be cached upon starting Liana, as they already are when using a local node, which will ensure coins shown on different panels are consistent in the initial moments after starting Liana.
- The Send and Recovery panels will use the latest fingerprint aliases in case a user updates them while drafting the transaction.
- Wording on the Recovery panel has been fixed and clarified.
- The background colour used for sliders, such as the one used in the installer to set recovery path timelocks, has been fixed to show the full bar width.
Contributors
A big thank you to @thomask7b, who made several contributions to this release (following his first contribution in v9.0).
What file from the list should i download?
Liana-11.0-macos.zip
if you are on MacOS,liana-11.0.exe
if you are on Windows,liana-11.0-1_amd64.deb
if you are running a Debian-based Linux (such as Ubuntu). Usedpkg -i liana-11.0-1_amd64.deb
as root (or preceded by sudo) to install it.liana-11.0-x86_64-linux-gnu.tar.gz
if you use another Linux distribution.
You can verify integrity of the files with:
sha256sum --check liana-11.0-shasums.txt
gpg --verify liana-11.0-shasums.txt.asc
v11.0rc1
11.0rc1
This release is a release candidate.
This release adds some important new features:
- multi-wallet support
- coin control for recovery transactions
- a new RPC command to list addresses that have been revealed to the user, whether used or not
- the ability in the GUI to view unused addresses that were previously generated by the user
- support airgap flow (SD card) for Coldcard & Krux signing devices
It also includes various other improvements and fixes as outlined below.
Note that the internal structure of Liana's data directory has been updated in this release in such a way that previous versions of
Liana will no longer work on a wallet that has been opened using v11.
Features
Liana GUI
- A user may now install more than one wallet:
- Each wallet is able to set its own local node or Liana Connect configuration.
- A Liana-managed Bitcoin Core node will be shared among those wallets selecting this option. Related to this, new wallets using a managed node will use cookie file RPC authentication rather than username and password.
- To avoid xpub reuse between wallets when using the same signing device, the user can now select the "account" to use with each signing device when setting up the wallet.
- The user can give each wallet an alias.
- New feature and improvements to the Recovery panel:
- Coin control can now be used for recovery transactions to enable the user to manage recipients and consolidation of UTXOs as desired. The recovery transaction flow thus resembles more closely that of a regular spend.
- The Recovery panel menu option has been moved to the main GUI sidebar above Settings for better visibility.
- The Receive panel now includes a list of unused addresses that were previously generated by the user, if any.
- Whether an address has been used is based on the current set of coins in the wallet.
- These unused addresses can be managed in the same way as those that have been newly generated, e.g. adding/editing labels.
- Xpubs and PSBTs can now be exported to and imported from a file, which means the user can now interact with Coldcard & Krux signing devices entirely via SD card:
- import xpub from file
- export descriptor to file
- import & export PSBT from/to file
- When creating a new wallet, a "Clear All" button has been added on the step where the user defines the descriptor (keys, recovery paths, etc) to quickly restart this step in case any mistakes are made.
- Bitcoin Core v29.0 will be used for new Liana-managed installations.
- When selecting signing devices for signing transactions or otherwise, those devices that are not relevant to the wallet or to the particular spending path being used for a transaction will be greyed out with a corresponding message.
- When drafting a transaction, the fee will be shown alongside the feerate.
- When exporting items from Liana, the pop-up modal includes a cross-icon to close it.
- Some buttons have been changed to primary buttons.
Lianad
- The
createrecovery
RPC command now includes an optional parameter for specifying which coins to include. - A new
listrevealedaddresses
RPC command has been added to list revealed addresses, optionally filtered to exclude those that have been used.
Fixes
Lianad
- When merging PSBT signatures, the
updatespend
RPC command will treat the PSBT currently saved in the database as the base PSBT onto which signatures will be added from the other PSBT.
Liana GUI
- The GUI will better keep track of its managed bitcoind processes to ensure they are stopped/started as required.
- When checking for available recovery paths, the GUI will now ignore unconfirmed coins as a recovery transaction can only include confirmed coins.
- When using Liana Connect as the backend, coins will be cached upon starting Liana, as they already are when using a local node, which will ensure coins shown on different panels are consistent in the initial moments after starting Liana.
- The Send and Recovery panels will use the latest fingerprint aliases in case a user updates them while drafting the transaction.
- Wording on the Recovery panel has been fixed and clarified.
- The background colour used for sliders, such as the one used in the installer to set recovery path timelocks, has been fixed to show the full bar width.
Contributors
A big thank you to @thomask7b, who made several contributions to this release (following his first contribution in v9.0).
What file from the list should i download?
Liana-11.0rc1-macos.zip
if you are on MacOS,liana-11.0rc1.exe
if you are on Windows,liana-11.0rc1-1_amd64.deb
if you are running a Debian-based Linux (such as Ubuntu). Usedpkg -i liana-11.0rc1-1_amd64.deb
as root (or preceded by sudo) to install it.liana-11.0rc1-x86_64-linux-gnu.tar.gz
if you use another Linux distribution.
You can verify integrity of the files with:
sha256sum --check liana-11.0rc1-shasums.txt
gpg --verify liana-11.0rc1-shasums.txt.asc
v10.0
10.0
This version does not introduce any breaking changes in the database schema.
Two new features are implemented: Backup and Third party keys fetching during the install.
Dependencies upgrade
Two big upgrades were done that affect most of the code of the project:
- We upgraded our
rust-bitcoin
dependency to 0.32 for bothlianad
andliana-gui
. - We upgraded our
iced
dependency to 13.1 forliana-gui
.
Features
Liana GUI
During the install process, the xpub of a key provider can be fetch from a Wizardsardine service by entering a token.
This Xpub can be used as a "Safety Net", a paid product where a third party keeps a recovery key for you
in case you lose your access to your funds.
We changed the default value of the "standard" recovery paths to ~1y, so the safety net can be quickly set with the
maximum timelock without conflicting with an other recovery path.
Due to rust-miniscript
compiler changes, for the same keys setup the output descriptor may differ from one generated
by a v9 Liana. Both descriptors are supported by Liana v9 and v10 versions.
By right-clicking with the mouse on text input, a button "Paste" appears and allows user to paste from the clipboard.
A new backup system for wallet configurations, including descriptors, has been introduced.
Users can now back up their wallet configurations by downloading a file during the wallet creation process.
They can also update their backup (for changes in labels, aliases, etc.) by downloading it from the Wallet settings.
This backup file can be used to restore the wallet or keep it synchronized across different devices.
This backup does not include hot keys (computer generated mnemonics).
A new "Export/Import" section will be available in the settings, consolidating all export and import options.
This section will include the backup and restore wallet functions, as well as new features like "Export Labels"
and "Export Descriptor."
The export of labels adheres to the BIP329 standard, both in the wallet backup and the "Export Labels" function.
Replace by fee action can now be executed on transactions without any related PSBT in the database.
Fixes
Lianad
Sometimes fee rate using rounded-up vbytes was lower than target value, this was fixed by updating the coin selection
dependency bdk_coin_select
.
Liana GUI
- We fixed some typos and wording.
- In the installer, the gui allows now deletion of any primary key and prevents deletion of all recovery paths
- Fixed a bug that could lead to address reuse (both deposit and change) in the case of a wallet with multiple instances
(such as a multisig with multiple participants). This situation could arise if a user received a coin at an address
revealed by another instance and this address had a higher derivation index than any address already revealed by this user.
Such an address would still have been shown to the user as a new deposit address or would have been used as a change address
when creating a new spend, depending on the type of address in question. This did not affect Liana-Connect users.
What file from the list should i download?
Prefer downloading binaries from our website. You'll be guided on which one to pick there.
If you really want to download them from Github and are not sure what executable below you should download, pick:
Liana-10.0-macos.zip
if you are on MacOS,liana-10.0.exe
if you are on Windows,liana_10.0-1_amd64.deb
if you are running a Debian-based Linux (such as Ubuntu). Usedpkg -i liana_10.0-1_amd64.deb
as root (or preceded by sudo) to install it.liana-10.0-x86_64-linux-gnu.tar.gz
if you use another Linux distribution.
You can verify integrity of the files with:
sha256sum --check liana-10.0-shasums.txt
gpg --verify liana-10.0-shasums.txt.asc
v10.0rc2: 1st April
No one can be told what the Matrix is.
You have to see it for yourself.
~Morpheus
What file from the list should i download?
Liana-10.0rc2-1st-april-macos.zip
if you are on MacOS,liana-10.0rc2-1st-april.exe
if you are on Windows,liana_10.0rc2-1st-aprit-1_amd64.deb
if you are running a Debian-based Linux (such as Ubuntu). Usedpkg -i liana_10.0rc2-1st-april-1_amd64.deb
as root (or preceded by sudo) to install it.liana-10.0rc2-1st-april-x86_64-linux-gnu.tar.gz
if you use another Linux distribution.
You can verify integrity of the files with:
sha256sum --check liana-10.0rc2-1st-april-shasums.txt
gpg --verify liana-10.0rc2-1st-april-shasums.txt.asc
v10.0rc2
10.0rc2
This version is a release candidate.
This version does not introduce any breaking changes in the database schema.
Two new features are implemented: Backup and Third party keys fetching during the install.
Dependencies upgrade
Two big upgrades were done that affect most of the code of the project:
- We upgraded our
rust-bitcoin
dependency to 0.32 for bothlianad
andliana-gui
. - We upgraded our
iced
dependency to 13.1 forliana-gui
.
Features
Liana GUI
During the install process, the xpub of a key provider can be fetch from a Wizardsardine service by entering a token.
This Xpub can be used as a "Safety Net", a paid product where a third party keeps a recovery key for you
in case you lose your access to your funds.
We changed the default value of the "standard" recovery paths to ~1y, so the safety net can be quickly set with the
maximum timelock without conflicting with an other recovery path.
Due to rust-miniscript
compiler changes, for the same keys setup the output descriptor may differ from one generated
by a v9 Liana. Both descriptors are supported by Liana v9 and v10 versions.
By right-clicking with the mouse on text input, a button "Paste" appears and allows user to paste from the clipboard.
A new backup system for wallet configurations, including descriptors, has been introduced.
Users can now back up their wallet configurations by downloading a file during the wallet creation process.
They can also update their backup (for changes in labels, aliases, etc.) by downloading it from the Wallet settings.
This backup file can be used to restore the wallet or keep it synchronized across different devices.
This backup does not include hot keys (computer generated mnemonics).
A new "Export/Import" section will be available in the settings, consolidating all export and import options.
This section will include the backup and restore wallet functions, as well as new features like "Export Labels"
and "Export Descriptor."
The export of labels adheres to the BIP329 standard, both in the wallet backup and the "Export Labels" function.
Replace by fee action can now be executed on transactions without any related PSBT in the database.
Fixes
Lianad
Sometimes fee rate using rounded-up vbytes was lower than target value, this was fixed by updating the coin selection
dependency bdk_coin_select
.
Liana GUI
- We fixed some typos and wording.
- In the installer, the gui allows now deletion of any primary key and prevents deletion of all recovery paths
- Fixed a bug that could lead to address reuse (both deposit and change) in the case of a wallet with multiple instances
(such as a multisig with multiple participants). This situation could arise if a user received a coin at an address
revealed by another instance and this address had a higher derivation index than any address already revealed by this user.
Such an address would still have been shown to the user as a new deposit address or would have been used as a change address
when creating a new spend, depending on the type of address in question. This did not affect Liana-Connect users.
What file from the list should i download?
Prefer downloading binaries from our website. You'll be guided on which one to pick there.
If you really want to download them from Github and are not sure what executable below you should download, pick:
Liana-10.0rc2-macos.zip
if you are on MacOS,liana-10.0rc2.exe
if you are on Windows,liana_10.0rc2-1_amd64.deb
if you are running a Debian-based Linux (such as Ubuntu). Usedpkg -i liana_10.0rc2-1_amd64.deb
as root (or preceded by sudo) to install it.liana-10.0rc2-x86_64-linux-gnu.tar.gz
if you use another Linux distribution.
You can verify integrity of the files with:
sha256sum --check liana-10.0rc2-shasums.txt
gpg --verify liana-10.0rc2-shasums.txt.asc
v10.0rc1
v10.rc1
This version does not introduce any breaking changes in the database schema.
Two new features are implemented: Backup and Third party keys fetching during the install.
Dependencies upgrade
Two big upgrades were done that affect most of the code of the project:
- We upgraded our
rust-bitcoin
dependency to 0.32 for bothlianad
andliana-gui
. - We upgraded our
iced
dependency to 13.1 forliana-gui
.
Features
Liana GUI
During the install process, the xpub of a key provider can be fetch from a Wizardsardine service by entering a token.
This Xpub can be used as a "Safety Net", a paid product where a third party keeps a recovery key for you
in case you lose your access to your funds.
We changed the default value of the "standard" recovery paths to ~1y, so the safety net can be quickly set with the
maximum timelock without conflicting with an other recovery path.
By right-clicking with the mouse on text input, a button "Paste" appears and allows user to paste from the clipboard.
A new backup system for wallet configurations, including descriptors, has been introduced.
Users can now back up their wallet configurations by downloading a file during the wallet creation process.
They can also update their backup (for changes in labels, aliases, etc.) by downloading it from the Wallet settings.
This backup file can be used to restore the wallet or keep it synchronized across different devices.
A new "Export/Import" section will be available in the settings, consolidating all export and import options.
This section will include the backup and restore wallet functions, as well as new features like "Export Labels"
and "Export Descriptor."
The export of labels adheres to the BIP329 standard, both in the wallet backup and the "Export Labels" function.
Replace by fee action can now be executed on transactions without any related PSBT in the database.
Fixes
Lianad
Sometimes fee rate using rounded-up vbytes was lower than target value, this was fixed by updating the coin selection
dependency bdk_coin_select
.
Liana GUI
- We fixed some typos and wording.
- In the installer, the gui allows now deletion of any primary key and prevents deletion of all recovery paths
v9.0: It's over 90.00k !
9.0
This Liana release introduces small bug fixes and a nice new export feature.
The whole code architecture was reworked to follow rust guidelines about workspace
and the reproducible build now makes usage of nix
instead of docker
.
The liana-gui
linux binary is now built against an older GLIBC 2.31
and
the release asset for apple devices is now an universal2 target that can be run by both
old x86_64 and new ARM apple devices.
The new Blockstream Jade Plus device id was added and this hardware wallet should be supported.
Breaking changes
Running Liana v9 on an existing installation will migrate its database.
Once migrated the database won't be compatible with previous versions of Liana.
This means you won't be able to open with Liana v8 (or below) any wallet opened or created with Liana v9.
The new Minimum Supported Rust Version of the GUI software is now 1.80. This change was necessary to have
up to date system dependencies like rfd
.
Features
Liana daemon / library
- The daemon feature was removed, we expect user to use their own process manager like systemd.
- Three new columns are added to the table transaction: the number of inputs, the number of outputs and if the
transaction is a coinbase transaction. - A new column is added to the coins table:
is_from_self
and a new fieldis_from_self
is added to the coin entry of thelist_coins
command. This field is true
if the coin is from a transaction that every inputs or ancestors inputs belongs to the wallet.
Liana GUI
- New button on the transactions panel allows user to do an export of their transactions to an external file using the CSV format.
- Bitcoind and electrum information in the settings panel can now be copied to clipboard.
- The sync progress is now displayed with a percentage with 2 decimals
- On the send panel, the trailing zeros of the calculated max amount are not anymore trimmed.
- Coins that are change from transactions that user control (either confirmed or every inputs belongs to the wallet),
are now part of the balance. - Unconfirmed coins can now be selected by the automatic selection if the coins is from transaction which inputs are controlled by the wallet.
Fixes
Liana daemon / library
- A spurious overestimation in fees was resolved.
Liana GUI
- The home panel was changed to load in an asynchronous and lighter way the payments list.
- When opening the receive panel, no new address is generated without the explicit demand of the user.
- A rescan request was failing with recent version of bitcoind because of the failure to match hardened derivation indexes.
- While updating a PSBT, taproot signatures were not correctly merged.
What file from the list should i download?
Prefer downloading binaries from our website. You'll be guided on which one to pick there.
If you really want to download them from Github and are not sure what executable below you should download, pick:
Liana-9.0.zip
if you are on MacOS,liana-9.0.exe
if you are on Windows,liana_9.0-1_amd64.deb
if you are running a Debian-based Linux (such as Ubuntu). Useapt install ./liana_9.0-1_amd64.deb
as root (or preceded by sudo) to install it.liana-9.0-x86_64-linux-gnu.tar.gz
if you use another Linux distribution. Note you may have to compile the software yourself if you are on Linux. See doc/USAGE.md.
You can verify integrity of the files with:
sha256sum --check liana-9.0-shasums.txt
gpg --verify liana-9.0-shasums.txt.asc
v9.0rc1: first release candidate for v9
9.0rc1
This Liana release introduces small bug fixes and a nice new export feature.
The whole code architecture was reworked to follow rust guidelines about workspace
and the reproducible build now makes usage of nix
instead of docker
.
The liana-gui
linux binary is now built against an older GLIBC 2.31
and
the release asset for apple devices is now an universal2 target that can be run by both
old x86_64 and new ARM apple devices.
The new Blockstream Jade Plus device id was added and this hardware wallet should be supported.
Breaking changes
Running Liana v9 on an existing installation will migrate its database.
Once migrated the database won't be compatible with previous versions of Liana.
This means you won't be able to open with Liana v8 (or below) any wallet opened or created with Liana v9.
The new Minimum Supported Rust Version of the GUI software is now 1.80. This change was necessary to have
up to date system dependencies like rfd
.
Features
Liana daemon / library
- The daemon feature was removed, we expect user to use their own process manager like systemd.
- Three new columns are added to the table transaction: the number of inputs, the number of outputs and if the
transaction is a coinbase transaction. - A new column is added to the coins table:
is_from_self
and a new fieldis_from_self
is added to the coin entry of thelist_coins
command. This field is true
if the coin is from a transaction that every inputs or ancestors inputs belongs to the wallet.
Liana GUI
- New button on the transactions panel allows user to do an export of their transactions to an external file using the CSV format.
- Bitcoind and electrum information in the settings panel can now be copied to clipboard.
- The sync progress is now displayed with a percentage with 2 decimals
- On the send panel, the trailing zeros of the calculated max amount are not anymore trimmed.
- Coins that are change from transactions that user control (either confirmed or every inputs belongs to the wallet),
are now part of the balance. - Unconfirmed coins can now be selected by the automatic selection if the coins is from transaction which inputs are controlled by the wallet.
Fixes
Liana daemon / library
- A spurious overestimation in fees was resolved.
Liana GUI
- The home panel was changed to load in an asynchronous and lighter way the payments list.
- When opening the receive panel, no new address is generated without the explicit demand of the user.
- A rescan request was failing with recent version of bitcoind because of the failure to match hardened derivation indexes.
- While updating a PSBT, taproot signatures were not correctly merged.
What file from the list should i download?
Prefer downloading binaries from our website. You'll be guided on which one to pick there.
If you really want to download them from Github and are not sure what executable below you should download, pick:
Liana-9.0-rc1.zip
if you are on MacOS,liana-9.0-rc1.exe
if you are on Windows,liana_9.0-rc1-1_amd64.deb
if you are running a Debian-based Linux (such as Ubuntu). Useapt install ./liana_9.0-rc1-1_amd64.deb
as root (or preceded by sudo) to install it.liana-9.0-rc1-x86_64-linux-gnu.tar.gz
if you use another Linux distribution. Note you may have to compile the software yourself if you are on Linux. See doc/USAGE.md.
You can verify integrity of the files with:
sha256sum --check liana-9.0-rc1-shasums.txt
gpg --verify liana-9.0-rc1-shasums.txt.asc