Whisperfish - The unofficial SailfishOS Signal client

I just did register successfully.

  • Renamed the directories harbour-whisperfish to harbour-whisperfish.2025-05-08 in ~/.config/be.rubdos/ and ~/.local/share/be.cubdos/
  • Started WF → Register as main device → Captcha → SMS → Works!

So it seems it should work.

5 Likes

The only difference I had, I used vocal confirmation instead of SMS. Might that play a role?

Does this procedure also work for reregistering Whisperfish as secondary device or should i register as primary device?

Ok seems that is not the case. Here is the log:

=============== Preparing offscreen rendering context ===============
[D] onUrlChanged:120 - Url changed to: Signal
console.error: services.settings:
main/url-classifier-skip-urls Signature failed InvalidSignatureError: Invalid content signature (main/url-classifier-skip-urls)
console.error: services.settings:
main/hijack-blocklists Signature failed InvalidSignatureError: Invalid content signature (main/hijack-blocklists)
console.error: services.settings:
main/anti-tracking-url-decoration Signature failed InvalidSignatureError: Invalid content signature (main/anti-tracking-url-decoration)
console.error: services.settings:
main/url-classifier-skip-urls local data was corrupted
console.warn: services.settings: main/url-classifier-skip-urls Signature verified failed. Retry from scratch
console.error: services.settings:
main/hijack-blocklists local data was corrupted
console.warn: services.settings: main/hijack-blocklists Signature verified failed. Retry from scratch
console.error: services.settings:
main/anti-tracking-url-decoration local data was corrupted
console.warn: services.settings: main/anti-tracking-url-decoration Signature verified failed. Retry from scratch
console.error: services.settings:
main/url-classifier-skip-urls Signature failed again InvalidSignatureError: Invalid content signature (main/url-classifier-skip-urls)
console.error: services.settings:
main/hijack-blocklists Signature failed again InvalidSignatureError: Invalid content signature (main/hijack-blocklists)
console.error: services.settings:
main/anti-tracking-url-decoration Signature failed again InvalidSignatureError: Invalid content signature (main/anti-tracking-url-decoration)
library “libandroidicu.so” needed or dlopened by “/system/lib64/libmedia.so” is not accessible for the namespace “(default)”
[D] onRecvAsyncMessage:128 - CaptchaDone Received!
[D] onRecvAsyncMessage:128 - CaptchaDone Received!
[D] onRecvAsyncMessage:128 - CaptchaDone Received!
2025-05-08T18:22:35.592690Z DEBUG whisperfish::qtlog: qml/pages/RegisterPage.qml:78:handleCaptcha(): Received captcha: signalcaptcha://signal-hcaptcha.5fad97ac-7d06-4e44-b18a-b950b20148ff.registration.P1_eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwYXNza2V5IjoiRkkzeFdWMWI5Q2xod3cyWDZXemJ1enUxTE8rYXNXUGltUjBrQUpGSjdxRGRGOHdYSGN0Q3VJcFQvN3JxQmoyc3dNdHZpeWdudVozUFZEN0QrQ1NiSGw2NjR4TEdCT3VWWUZ6TGdrU01FM0F3a0g4Y29FdkI5MDNBaE5Oc0IrZVd0UDF3VXAvYythaWNOeENFL0J1MDE0MjgxaVJYdGRHMnpTTFJPbk1VQjNmR0NqY0NXb3ZRaHcvdEVXSDloZjVyS2R1Ujh1R1plQkxneVZLWEcvUlJXcU9ZeVlKdCttc0lqSW5UWjBUaXdxWUxEZllHS1RxZmsxQkJHY2l2WXBmc2RKZmVLR0RYcFVLYXdQMFdzSE9CTHFRc3FPRGpsaUtZbnR2cWhEZzB6MDBBaE9BN21GSTZIclJTY1JMSnJoSDV4QnloK1QwSXZFZEcxY2VnRHYzTWJya1hXQ2lQUjFsR1RoRzlMR1BMN1NWU0kvRWg0ZGUyOEVmdzNnTklqTjBsdjBuVWlMOU15K0todzRjMEJpR1pxWEp2STFRaCtCN0VaYTZyTWNDL2pqK3U1aHpBdDF4Mkl0bi9DRGNRdS9JZ29QM0lHSWxQSk9wRWJyM2w2eGNtSThJSEZnaHhkTWJYcFd6ZXZjOTloR0JMZXFmV0ozc095SDhCaURvaVMrQTJUT2J5ZWdCNDZiczVlL0lIUldEM1B2T1U5YWhlRm5rUFVrVDlubkRjOCtYclQwR2E0Rkc0dzJkRTBJSGFZSldyR2t4Qm9TTVFvTWdkUHd5N3dKN3ZySUlIVXJuZFRRVCtkQlN6eGI2NVErcTkrTWxLR2xSVDVTRUltdk1CSFEwVVExTUt6WTZFVUpvbTU0MHlaUXdubUdyNllxWVp2dnE2RGV3VHFiY1lZZ3lybnN1WlFzOGZDcUwwcFBwWkpWNVBKblhsRnJId3N4aVVQd3M1cm50cEVhK0Q4OEVtdUxvdmhQaEZqUWI1Rml5ekx4cy9pVVZOQndSd3RiY0lxNEV3NE0zS0RzOHNSRTJlcWJqaEhWR0RRK3llbytSQ2NVc1FoaUgwM3FqaWh4T3hETlFYSFl4aHgxckR3Vjl6NGdPN21sa3Ercmwwb0FIK1lQN2l2T0hsUEFIR1pEb2o4Vm5ESVYyQ3lnZE5CV0U2V2c5UUducHI4WWpoc0dnbHF2KzRiV1pYL0pCZkJzQUg5SXgyY1ZhL3J5VDFvVHZhZFJDMU5WMldlMzdGdXJIaXYwSlRNMUZCb2VSbnI1dS8yUzMwS05na1JLUFJSaXlXY2R2dEVVRUNjREFXRkJaMDlRbVpjMmw2d3lMdVJCOEd5eTVOVVlVcW5XUHdOY0FOSW5nRXZnR3BkRmVkM1NQdTYxVFF5S3BHTDJ4WGF6bEdhNmMyZ09pN3VUZk9Pck5oOXU0N2paWEZJWURFaDdoMmJYOVRBM0NoOXRZNVM4Y21zbHEvVU40OTg2dWowckRkTXd5dkh0ZDY5L1BxNVVzajFKb2tRb2szR3dJT0ZFV1N5SER5dUx1alJuenBHZS9Kc1VoNEdOd1RzcWZNUVJxUm1YcFRIM0pmSTZGQWc0Y0RlOW5sNXEwbzFIbjlGM3RzdEs1a21HRk1PZUQvbXdFeEY2T2g0RlBwQVF0aDc4WUY1WWNrWkRnc1JyaUhXNy94ZEJOYnM5WjdLTUJ5bFdFNVF3UmhvMkFsa1V0VFFFMFZmNjFvdmhqc2ZZR2k5c3d6QTZYR3dETERIMmhzWHoyK1RMYTh5ZUdzbXZUcXRPQW5LRWt1cERFYWxzbkg1R3BwbGdYYVBUTGl0cjlKUkMycisyOFVwWHdTUkZZZlVPb25mWkxxd2YwZkdHRVQzNUExN1Q2QUtDRFMyZzBUbHFpVDlNN3JIR0VUdFdCU1ovb3hXTzVURXpwcG5pSzg0NUhpelgvNGdlbC9JdEZDb2hwTkIzZVc4SXZ2WDZCc2FVVEszTG45eWFDaUF3OS96RnFQckZZaDdXem43V1lMTGNNY0N0S0M3ODJVM1lsODJPVjNYYzBpbzlBNCthMTlKSlBGbmZsVGFqOFlCMVZVenN5U2wxc1hPSHgvaDVIbkhuNFpXekpnR1cwczZQOXB2MmdLdk5xTE9TOE9NUStFMUVLMTFDcDlyR0I5eGRqeWx6T2NuQlRXWkczQWhYTXZLSXlwMG1mWmRxcVg3bnpnbVFxZlNvbEdxRzMwQi9OVmJCU1FINjlFK1kwekZEdDZIU2VjcVM1NWVERXdOa0hwZm16Sm5vTVl4cHZIVHZWQnNzSzRXcGFNVmd3Ym0wcGhMcWU4SytBdEpuSmY0WDhrUjZDUk1OTjcwcDdhcWNHd2tuM2pYMnZFdnBQU0E5Q0FCVTA5VXNPbEhwdHN6M2FXSVhtTG95MUJZN0c4RGJsUXpTRC9Yd2NuOHVkOHd3Y2V1QT09IiwiZXhwIjoxNzQ2NzI4Njc1LCJzaGFyZF9pZCI6MzM5NTEwMzAzLCJrciI6IjJjMTUwN2NlIiwicGQiOjB9.mnPBJCUvCKP1YzcE_vtf57YRWGEO4o90rd8Wt3rKHCo
[D] :108 - Captcha code sent!
[D] onUrlChanged:120 - Url changed to:
2025-05-08T18:22:36.402820Z ERROR run: whisperfish::worker::setup: Error in registration: Authorization failed
2025-05-08T18:22:36.403128Z DEBUG run: whisperfish::qtlog: qml/harbour-whisperfish-main.qml:421:expression for onClientFailed(): [FATAL] client failed
2025-05-08T18:22:36.435847Z DEBUG run: whisperfish::qtlog: qml/pages/FatalErrorPage.qml:25:onCompleted(): [FATAL] error occurred: Impossibile configurare il cliente Signal
2025-05-08T18:23:05.057688Z WARN whisperfish::qtlog: : QML DBusAdaptor: Failed to unregister service be.rubdos.whisperfish

How to re-register an affected secondary device?

I have:

Device 1: Primary. Was affected by account deletion. Have backed up whisperfish dirs, removed them, and re-registered.
Device 2: Was Secondary to Device1 before the deletion. Is now (obviously) always Disconnected.

What’s the preferred way to get Device 2 to be Secondary to Device 1 again?

Is it also just delete the WF dirs, and repeat the Linking?

2 Likes

And on a completely unrelated note:

This Topic is now nearing 1500 replies. Maybe a new one should be created?

4 Likes

I’m running into the same issue on my Xperia 10 II. Even worse, after a few tries (closing Whisperfish and restarting it) I now get an error right after entering my phone number, so it never even reaches the captcha anymore.

Thanks for sharing! Meanwhile I tried also to register the same device as second device, instead of as primary device, but I am getting the same error. Running on SailfishOS 5.0.0.67 btw., but previously tried with the most recent 4 version with the same result.

If someone sends me a meme bomb with around 15 pictures, I can only check the first few. When I tap on the images that indicate “+XY”, it opens only the underlying single image. I cannot swipe left or right in the image viewer to navigate to the previous or next image of that meme bomb. It’s quite unintuitive. The missing “Write new message to someone” feature is, nobrainer, a huge problem to use this app.
It also does not run in background, unlike the settings option would indicate. I must manually open Whisperfish here and there to receive new messages.

For me it does run in the background and also autostarts at boot. The pictures beyond #5 are indeed a problem

And it is also unclear to me if it is expectable at the moment that I cannot send any pictures, lost track of the discussion

Hi, the registration as a secondary device doesn’t work for me, have a fresh XA2 sailfish with 5.0.0.67 and a fresh WF installation from openrepos.
for my old device xperia X (sailfish 4) it no longer works.
Does Signal canceled this feature?
On support.signal.org I found:
Multiple mobile devices are not currently supported
Best regards Alex

That shouldn’t happen, normally it should run in the background, if you checked the option. Maybe you have disabled notifications? Or, have you enabled “Autostart at boot”?

1 Like

You can work around that by setting the attachment path manually in settings, and then viewing the downloaded attachments in Gallery. I don’t think this is well documented, but you can check out the voice notes thing in the FAQ.

Workaround is to use a linked Signal Desktop to start conversations.

That’s fixed on Git, but unreleased.

Could you provide us with logs in an issue?

That’s a limit of Signal’s client implementations, that’s not relevant to our case.

5 Likes

Thanks rubdos, I tried it a second time, after deleting App and files and reinstall. Now it works :-).

3 Likes

I acquired the Jolla C2 Curiosity prompted me to ask if WF supports Voice calls and Video calls
Is there a detailed reference for the construction method

1 Like

Anyone an idea from these logs what’s wrong?

I have also just renamed the folders ~/.config/be.rubdos/ and ~/.local/share/be.rubdos/ and restarted WF. I reassigned the old password, choose primary device and entered my cell phone number and pressed continue. Then a web page from Signal Captcha (I think) was launched. I wanted to enter the checkbox for the question “Are you a human” but then the browser crashed. This procedure I repeated several times after erasing the browser cache. Now I only see the message if I click the “continue” button.


What can I do now?

3 Likes

I tried to use whisperfish a couple of years ago but I found that the aggressive oom killer on my xperia 10II made it unusable. It constantly got killed so I indeed had to manually restart it several times a day to get any messages.

Whisperfish had no background deamon for a long time and actually had run visible on the home screen. Without visible WF no messages. Now, and for quite a time now, there’s the possibility to activate a background deamon. Maybe that was the issue back then for you.

Nope, that’s not the case. I have the same problem on 10II. Most of the times I use the browser, after that I have to restart the WF because the daemon is also killed…