sparrowwallet / sparrow

Desktop Bitcoin Wallet focused on security and privacy. Free and open source.
https://sparrowwallet.com/
Apache License 2.0
1.36k stars 192 forks source link

Regression on Arch Linux, HWI error with 2.0.0, no issue with 1.9.1 #1522

Closed kloaec closed 1 month ago

kloaec commented 1 month ago

Similar to prior issues about "error executing HWI", but it seems related only to the latest 2.0.0 release, on Arch Linux.

Same machine, same hardware, 1.9.1 works perfectly, 2.0.0 does not.

Missing libcrypt.so on Arch. Fixed by installing libxcrypt-compat. Would be nice to not have an extra, external library to install (as it was already working with 1.9.1).

java.io.IOException: [8901] Error loading Python lib '/tmp/_MEI1w2tCX/libpython3.9.so.1.0': dlopen: libcrypt.so.1: cannot open shared object file: No such file or directory

    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi.getProcessOutput(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi.execute(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi.enumerateUsb(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi.enumerate(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi$ScheduledEnumerateService$1.call(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi$ScheduledEnumerateService$1.call(Unknown Source)
    at javafx.graphics@22/javafx.concurrent.Task$TaskCallable.call(Unknown Source)
    at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
    at javafx.graphics@22/javafx.concurrent.Service.lambda$executeTask$6(Unknown Source)
    at java.base/java.security.AccessController.doPrivileged(Unknown Source)
    at javafx.graphics@22/javafx.concurrent.Service.lambda$executeTask$7(Unknown Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.base/java.lang.Thread.run(Unknown Source)
2024-10-19 16:48:22,247 ERROR Error executing hwi-3.1.0
java.io.IOException: [8928] Error loading Python lib '/tmp/_MEILMs3KX/libpython3.9.so.1.0': dlopen: libcrypt.so.1: cannot open shared object file: No such file or directory

    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi.getProcessOutput(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi.execute(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi.enumerateUsb(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi.enumerate(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi$EnumerateService$1.call(Unknown Source)
    at com.sparrowwallet.sparrow@2.0.0/com.sparrowwallet.sparrow.io.Hwi$EnumerateService$1.call(Unknown Source)
    at javafx.graphics@22/javafx.concurrent.Task$TaskCallable.call(Unknown Source)
    at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
    at javafx.graphics@22/javafx.concurrent.Service.lambda$executeTask$6(Unknown Source)
    at java.base/java.security.AccessController.doPrivileged(Unknown Source)
    at javafx.graphics@22/javafx.concurrent.Service.lambda$executeTask$7(Unknown Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.base/java.lang.Thread.run(Unknown Source)

Screenshot of the issue. Screenshot From 2024-10-19 16-45-02

kloaec commented 1 month ago

A simple pacman -S libxcrypt-compat fixes it, but was not needed in prior releases.

craigraw commented 1 month ago

Duplicate of #1504 (albeit in Fedora environment). I agree it's a problem, and I'm working on a solution.