1
0
Commit Graph

713 Commits

Author SHA1 Message Date
ThomasV
647ae49451 Merge pull request #9651 from f321x/plugin_manifest_json
Use manifest.json instead of loading init file for plugin registration
2025-03-19 10:52:02 +01:00
f321x
a9f8048251 use manifest.json instead of loading init file for plugin registration 2025-03-19 10:38:20 +01:00
SomberNight
4c970fd8fa plugins: ledger: better error msg for hw.1 2025-03-18 17:26:12 +00:00
SomberNight
154adf0081 plugins: ledger: rm support for hw.1
This removes support for Ledger HW.1 and "Nano" (non-S) devices.
These were manufactured/sold around 2015-2016, and are long unsupported by the upstream vendor.

We previously added a deprecation warning to the GUI [0] released in 4.3.3 (2023-01-02), to warn owners of these devices.
This PR now fully removes support.

As a consequence, the unmaintained btchip-python dependency can now be removed, which solves [1].

[0]: 9b82eb6d06
[1]: https://github.com/spesmilo/electrum/issues/9370#issuecomment-2593675364
2025-03-18 16:18:49 +00:00
SomberNight
7737dbf795 plugins: ledger: fix Ledger_Client_Legacy.sign_transaction
regression from 2f1095510c
2025-03-18 15:34:17 +00:00
ThomasV
38f9cac48c Merge pull request #9649 from f321x/move_commands_to_init
Move plugin commands to init file of plugin
2025-03-18 11:14:30 +01:00
f321x
e74029c880 move plugin commands to init file of plugin 2025-03-18 09:37:07 +01:00
SomberNight
c8143957a6 plugins: keepkey: rm dependence on external keepkeylib
we will instead bundle our own fork, as a git submodule,
https://github.com/spesmilo/electrum-keepkeylib

related https://github.com/spesmilo/electrum/issues/7922
and https://github.com/keepkey/python-keepkey/issues/146
(i.e. upstream keepkeylib is unmaintained)
2025-03-17 17:53:48 +00:00
ThomasV
9d1ffe0c37 support for arguments to plugin commands:
- add a simple parser that only figures out where the config is,
   and does not complain if args are unknown
2025-03-16 15:01:22 +01:00
ThomasV
d2fa404e06 plugin commands: load the plugin in func_wrapper 2025-03-16 12:26:31 +01:00
ThomasV
a474b8674d plugin commands:
- make plugin commands start with plugin name + underscore
 - plugin_name must be passed to the plugin_command decorator
 - fixes:
    - remove plugin_commands (unneeded)
    - func_wrapper must await func()
    - setattr(Commands, name, func_wrapper)
 - add push/pull commands to labels plugin
2025-03-16 11:53:34 +01:00
ThomasV
8e6be0a36a Remove inheritance between LNWatcher and Watchtower
As LNWatcher is no longer async, there is not enough overlap
between these classes to deserve inheritance
2025-03-14 11:59:56 +01:00
ThomasV
fbebe7de1a Make lnwatcher not async
This fixes offline history not having the proper labels
2025-03-14 11:09:11 +01:00
ThomasV
9d0cc6c4a3 follow-up c7dcfab 2025-03-11 18:16:41 +01:00
ThomasV
5ce80332ec Qt: do not expose watchtower in settings
running a watchtower requires to be able to run a daemon with the
watchtower plugin enabled. If users succeed at doing that, we
can expect them to be able to configure theclient using the
command line.

(that would not work with QML, though. maybe QML could use an
advanced config editor)
2025-02-26 12:32:38 +01:00
ThomasV
2038c0df0c follow-up 376d881154
please run 'git submodule update'
2025-02-26 11:27:42 +01:00
Sander van Grieken
376d881154 qml: always initialize BtcField.textAsSats 2025-02-26 11:02:12 +01:00
ThomasV
811a1b3332 update payserver plugin 2025-02-25 11:28:07 +01:00
f321x
6f97b7b5f9 simplify submarine swap onchain fee model to single base fee 2025-02-20 16:51:48 +01:00
scgbckbone
4f5a732fef fix Coldcard msg signing for segwit v0 address types 2025-02-06 16:41:17 +01:00
ThomasV
29a8c41025 move watchtower to a plugin.
remove watchtower dialog in qt
2024-12-20 15:34:26 +01:00
ThomasV
86c9eb4858 psbt_nostr: minor fix 2024-11-28 11:16:49 +01:00
Sander van Grieken
49de400c27 2fa: fix #9312
(regression of 4a37668b01)
2024-11-19 09:13:27 +01:00
ThomasV
11558adb28 New plugin: psbt over Nostr
Replacement for cosignerpool
Encryption uses xpubs
2024-11-12 10:40:49 +01:00
ThomasV
60f13a977e Swaps over Nostr
- Separation between SwapManager and its transport:
   Legacy transpport uses http, Nostr uses websockets
 - The transport uses a context to open/close connections.
   This context is not async, because it needs to be called
   from the GUI
 - Swapserver fees values are initialized to None instead
   of 0, so that any attempt to use them before the swap
   manager is initialized will raise an exception.
 - Remove swapserver fees disk caching (swap_pairs file)
 - Regtests use http transport
 - Android uses http transport (until QML is ready)
2024-11-12 09:32:25 +01:00
Sander van Grieken
c6cd47ebba qml: refactor QEWallet.sign() to sign() and sign_and_broadcast(), add user feedback when signing fails. 2024-10-23 12:02:01 +02:00
Sander van Grieken
26622a0de6 trustedcoin: inherit WalletWizardComponent instead of WizardComponent 2024-10-21 16:14:58 +02:00
Sander van Grieken
974ad64688 trustedcoin: clean up imports, flake warnings 2024-10-21 14:11:18 +02:00
SomberNight
4b6c7af9b0 plugins: revealer: fix following qt6 migration
follow-up https://github.com/spesmilo/electrum/issues/8007
2024-10-17 16:36:11 +00:00
ThomasV
76d4fcec3c follow-up previous 2024-10-17 16:00:09 +02:00
ThomasV
853d90a804 trustedcoin plugin: fix path for qml (follow-up previous commit) 2024-10-17 13:50:16 +02:00
ThomasV
eccc5900e0 move plugin icons to plugins 2024-10-17 13:32:30 +02:00
Sander van Grieken
0d22994277 trustedcoin: fix check in 2fa wallet setup, when not continuing a unfinished wallet (fixes #9253) 2024-10-16 23:06:51 +02:00
ThomasV
8f11b5d411 swapserver: rm hardcoded value for percentage 2024-10-14 13:35:31 +02:00
Sander van Grieken
b22fb329cc coldcard: small fixes 2024-10-14 12:04:37 +02:00
accumulator
f7d3a850ba Merge pull request #9237 from accumulator/fix_2fa_keystore_only_encryption
trustedcoin: fix continuation of 2fa wallet file with keystore-only encryption
2024-10-14 11:50:18 +02:00
Sander van Grieken
9e1c1bd0ad trustedcoin: fix continuation of 2fa wallet file with keystore-only encryption 2024-10-14 11:32:15 +02:00
avirgovi
572252abcd coldcard: rebase #7682 and fix CC bugs 2024-10-12 09:23:02 +02:00
accumulator
106a1aca60 Merge pull request #9246 from accumulator/cosigner_pool_ecc
plugin: cosigner_pool: refactor to ecies_encrypt_message, ecies_decrypt_message
2024-10-11 23:14:24 +02:00
Sander van Grieken
a9751765e2 plugin: cosigner_pool: refactor to ecies_encrypt_message, ecies_decrypt_message 2024-10-11 17:27:50 +02:00
SomberNight
225ed079a9 hw plugins: ledger: bump pinned lib to 0.3.0, raise max_lib to <0.4
closes https://github.com/spesmilo/electrum/issues/9035
2024-10-11 15:13:34 +00:00
SomberNight
dd46808549 hw plugins: cmdline: support numpad for trezor one PIN codes 2024-10-10 21:10:07 +00:00
SomberNight
ecf0a5854d hw plugins: adapt trezor_qt_pinmatrix.py to qt6
This fixes the pinmatrix dialog (used by trezor one, keepkey, safet),
which was previously segfaulting.

follow-up https://github.com/spesmilo/electrum/pull/9189
2024-10-10 20:24:09 +00:00
SomberNight
5d988af18d hw plugins: include a copy of pinmatrix.py from python-trezor, as-is
3f1d2059ca/python/src/trezorlib/qt/pinmatrix.py

I will use this in the trezor (and clones) plugins in a modified form to work with qt6.
Otherwise we would have to ask the trezor devs, who would actually respond,
but also the keepkey and safet lib authors, who would not... to support qt6.
2024-10-10 20:15:19 +00:00
SomberNight
15d5b96dda hw plugins: ledger: minor fix re qt6 migration
follow-up https://github.com/spesmilo/electrum/pull/9189
2024-10-10 20:12:09 +00:00
SomberNight
48661b5913 follow-up electrum_ecc: fix some import names
ref https://github.com/spesmilo/electrum/pull/9234
2024-10-10 19:24:27 +00:00
ThomasV
3721f04ac8 replace electrum/ecc with electrum_ecc package 2024-10-10 15:46:00 +00:00
SomberNight
383f99796a qt gui: follow-up qt6: fix args for QWidget.setFocus()
Traceback (most recent call last):
  File "...\electrum\electrum\gui\qt\main_window.py", line 1797, in toggle_search
    self.search_box.setFocus(1)
TypeError: arguments did not match any overloaded call:
  setFocus(self): too many arguments
  setFocus(self, reason: Qt.FocusReason): argument 1 has unexpected type 'int'
2024-09-18 17:39:46 +00:00
SomberNight
1ee6361c7e qt gui: qt6 migration follow-ups 2024-09-18 15:48:50 +00:00
SomberNight
cfe8502f96 qt desktop gui: upgrade qt5->qt6
closes https://github.com/spesmilo/electrum/issues/8007
2024-09-18 15:48:38 +00:00