monero-wallet-cli 0.18.2.2-2 broken Trezor support

Task Info (Flyspray)
Opened By Jim Johnson (JimmyJammy)
Task ID 79299
Type Bug Report
Project Arch Linux
Category Packages: Extra
Version None
OS All
Opened 2023-08-04 20:07:43 UTC
Status Assigned
Assignee kpcyrd (kpcyrd)

Details

Description: monero-wallet-cli 0.18.2.2-2 binary from the Arch community repository does not support Trezor devices, while the one downloaded from getmonero.org does.

Additional info:

  • package version 0.18.2.2-2 (I believe this worked in 0.18.2.2-1)
  • Log file
2023-08-04 19:46:24.971     7f233a0d2680        INFO    msgwriter       src/common/scoped_message_writer.h:102  Monero 'Fluorine Fermi' (v0.18.2.2-release)
2023-08-04 19:46:24.971     7f233a0d2680        INFO    wallet.wallet2  src/wallet/wallet_args.cpp:215  Setting log level = 4
2023-08-04 19:46:24.971     7f233a0d2680        INFO    wallet.wallet2  src/wallet/wallet_args.cpp:221  Logging to: monero-wallet-cli.log
2023-08-04 19:46:24.971     7f233a0d2680        INFO    msgwriter       src/common/scoped_message_writer.h:102  Logging to monero-wallet-cli.log
2023-08-04 19:46:24.972     7f233a0d2680        TRACE   wallet.simplewallet     src/simplewallet/simplewallet.cpp:3966  simple_wallet::ask_wallet_create_if_needed() started
2023-08-04 19:46:24.972     7f233a0d2680        TRACE   wallet.simplewallet     src/simplewallet/simplewallet.cpp:3974  User asked to specify wallet file name.
2023-08-04 19:46:26.427     7f233a0d2680        TRACE   wallet.simplewallet     src/simplewallet/simplewallet.cpp:3994  wallet_path: Trezor
2023-08-04 19:46:26.427     7f233a0d2680        TRACE   wallet.simplewallet     src/simplewallet/simplewallet.cpp:3995  keys_file_exists: true  wallet_file_exists: true
2023-08-04 19:46:26.428     7f233a0d2680        INFO    msgwriter       src/common/scoped_message_writer.h:102  Wallet and key files found, loading...
2023-08-04 19:46:29.255     7f233a0d2680        INFO    net     contrib/epee/src/net_parse_helpers.cpp:138      [PARSE URI] regex not matched for uri: ^(([^:]*?)://)?(\[(.*)\](:(\d+))?)(.*)?
2023-08-04 19:46:29.256     7f233a0d2680        DEBUG   util    src/common/util.cpp:915 Address 'http://localhost:18081' is local
2023-08-04 19:46:29.256     7f233a0d2680        INFO    wallet.wallet2  src/wallet/wallet2.cpp:456      Daemon is local, assuming trusted
2023-08-04 19:46:29.256     7f233a0d2680        DEBUG   device.ledger   src/device/device_ledger.cpp:306        Device 0 Created
2023-08-04 19:46:29.257     7f233a0d2680        INFO    wallet.wallet2  src/wallet/wallet2.cpp:1354     setting daemon to http://localhost:18081
2023-08-04 19:46:29.257     7f233a0d2680        INFO    net     contrib/epee/src/net_parse_helpers.cpp:138      [PARSE URI] regex not matched for uri: ^(([^:]*?)://)?(\[(.*)\](:(\d+))?)(.*)?
2023-08-04 19:46:29.264     7f233a0d2680        INFO    net.ssl contrib/epee/src/net_ssl.cpp:137        Generating SSL certificate
2023-08-04 19:46:29.679     7f233a0d2680        INFO    wallet.wallet2  src/wallet/wallet2.cpp:7692     ringdb path set to /home/xxx/.shared-ringdb
2023-08-04 19:46:29.693     7f233a0d2680        INFO    net     contrib/epee/src/net_parse_helpers.cpp:138      [PARSE URI] regex not matched for uri: ^(([^:]*?)://)?(\[(.*)\](:(\d+))?)(.*)?
2023-08-04 19:46:29.699     7f233a0d2680        INFO    net.ssl contrib/epee/src/net_ssl.cpp:137        Generating SSL certificate
2023-08-04 19:46:30.239     7f233a0d2680        WARNING wallet.wallet2  src/wallet/wallet2.cpp:4482     Account on device. Initing device...
2023-08-04 19:46:30.240     7f233a0d2680        ERROR   serialization   src/device/device.cpp:86        Device not found in registry: 'Trezor'. Known devices: 
2023-08-04 19:46:30.240     7f233a0d2680        ERROR   serialization   src/device/device.cpp:88         - Ledger
2023-08-04 19:46:30.240     7f233a0d2680        ERROR   serialization   src/device/device.cpp:88         - default
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:133  Exception: std::runtime_error
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:134  Unwound call stack:
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172      [1] monero-wallet-cli(+0x14bc8c) [0x555f5da53c8c] 
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172      [2] monero-wallet-cli(+0x50ab39) [0x555f5de12b39] 
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172      [3] monero-wallet-cli(+0x2e0209) [0x555f5dbe8209] 
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172      [4] monero-wallet-cli(+0x1f4831) [0x555f5dafc831] 
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172      [5] monero-wallet-cli(+0x1f5920) [0x555f5dafd920] 
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172      [6] monero-wallet-cli(+0x194b4a) [0x555f5da9cb4a] 
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172      [7] /usr/lib/libc.so.6(+0x27cd0) [0x7f233a227cd0] 
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172      [8]  0x8a) [0x7f233a227d8a]:__libc_start_main+0x8a) [0x7f233a227d8a]
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172      [9] monero-wallet-cli(+0x1b0c15) [0x555f5dab8c15] 
2023-08-04 19:46:30.240     7f233a0d2680        INFO    stacktrace      src/common/stack_trace.cpp:172
2023-08-04 19:46:30.240     7f233a0d2680        ERROR   msgwriter       src/common/scoped_message_writer.h:102  Error: failed to load wallet: device not found: Trezor
2023-08-04 19:46:30.240     7f233a0d2680        DEBUG   wallet.wallet2  src/wallet/wallet2.cpp:7982     Trezor.keys is already unlocked.
2023-08-04 19:46:30.266     7f233a0d2680        ERROR   wallet.simplewallet     src/simplewallet/simplewallet.cpp:4688  failed to open account
2023-08-04 19:46:30.266     7f233a0d2680        ERROR   wallet.simplewallet     src/simplewallet/simplewallet.cpp:10690 Failed to initialize wallet
2023-08-04 19:46:30.266     7f233a0d2680        DEBUG   net     contrib/epee/include/net/net_helper.h:647       Problems at ssl shutdown: uninitialized (SSL routines)
2023-08-04 19:46:30.266     7f233a0d2680        DEBUG   net     contrib/epee/include/net/net_helper.h:571       Problems at cancel: Bad file descriptor
2023-08-04 19:46:30.266     7f233a0d2680        DEBUG   net     contrib/epee/include/net/net_helper.h:574       Problems at shutdown: Bad file descriptor
2023-08-04 19:46:30.266     7f233a0d2680        DEBUG   net     contrib/epee/include/net/net_helper.h:647       Problems at ssl shutdown: uninitialized (SSL routines)
2023-08-04 19:46:30.266     7f233a0d2680        DEBUG   net     contrib/epee/include/net/net_helper.h:571       Problems at cancel: Bad file descriptor
2023-08-04 19:46:30.266     7f233a0d2680        DEBUG   net     contrib/epee/include/net/net_helper.h:574       Problems at shutdown: Bad file descriptor
2023-08-04 19:46:30.267     7f233a0d2680        DEBUG   device.ledger   src/device/device_ledger.cpp:311        Device 0 Destroyed

Steps to reproduce:

  1. Install the monero package
  2. Install trezor-bridge-bin from the AUR
  3. Run monero-wallet-cli --hw-device Trezor --generate-from-device MoneroWallet with the Trezor device plugged in and unlocked

I think the monero tests should pick up whether the binary has Trezor support? I believe this broke in -2, while -1 worked. I'm not sure if the protobuf 23 upgrade broke this or the cherry picked commit.