Whisperfish - The unofficial SailfishOS Signal client

Relinking is currently not possible, we only have a full reset for now.

Oh, okay. so the equivalent to a fresh install on the new device :wink:
Thanks for the info

Whisperfish 0.6.0-beta.16

Fix an issue during registration, and some QoL improvements. If you want to register after a failed attempt, don’t forget to reset your installation

Changes

4 Likes

We slipped a broken profile page to the release, that would be on me, sorry about that!

Luckily, this is something that can be fixed on-device. In order to do it, however, you have to be familiar with Terminal, devel-su and text editing:

devel-su nano /usr/share/harbour-whisperfish/qml/pages/ProfilePage.qml

Go to line 281 and edit it like so:

From: visible: numericFingerprint.text.length > 0
  To: visible: numericFingerprint.text.length > 0 && !isOwnProfile

Then comment out (or remove altogether) line 278:

From: visible: !isOwnProfile
  To: // visible: !isOwnProfile

Save the file and restart Whisperfish. Now you should be able to access the profile page again - this time with the new feature of being able to edit your own name in your profile.

3 Likes

Thanks for the update and the instructions!

…and a couple of useful tips for newbies like me, who prefer to do this from their linux PC via SSH using nano:

  • After establishing ssh connection, run command echo $TERM to check your TERM is either xterm or linux.
  • If echo returns something else, run either export TERM=xterm or export TERM=linux to be able to use nano.
  • Use -l flag to show line numbers in nano:
    devel-su nano -l /usr/share/harbour-whisperfish/qml/pages/ProfilePage.qml
  • After editing, use ctrl + O to save the changes and press Enter.

Please let me know, if I wrote something which is not correct!

1 Like

Whisperfish 0.6.0-beta.17

Sealed sending release, soon near an OpenRepos near you! Sealed sending is a feature in Signal (since 2018 already…) which allows a client to not identify with the Signal servers when delivering a message. This means that Signal LLC does not know who you are when sending a message. Signal enforces this mode of delivery since a few months, and they’ve put a rate limiter on the old method of delivery. This meant that sometimes Whisperfish failed to deliver messages for 24 hours, and this release fixes that issue. I talked about this feature in Lausanne, if you’re interested to see how this works.

In practice, this means two things: one, a huge win for your privacy. Second, fewer (no) failed message sending any more.

There are a lot of other useful changes in this release too!

Changes

  • Fixes the profile page not loading
  • Fix multiple settings page and profile page issues
  • Implement automatic identity key reset
  • Implement draft messages
  • Fix captcha display and submission
  • Ignore NullMessages and implement PlaintexContent
  • Implement sealed sending
  • Cleaner logging thanks to minimized Display implementations for database types
  • Log Qt and QML via simplelog
  • Keep identity key in memory, instead of reading from storage
  • Stop trying to send messages to unregistered users, store registration state in db
  • Consider empty sessions as read, fixes incorrect unread message count
  • Expose logging settings in Settings page
  • Bump emoji.js

Notes

:warning: Log files accumulate, mind their size!

Call for translations

We have been calling Whisperfish “beta” software ever since I started working on it in November 2022. With sealed sending and automatic identity key reset out of the way, we’re trying to move towards a real release. There is still quite some work to be done, but we’re inching closer every day now. We’re planning such a release in the 0.6.0-rc.1 release candidate milestone.

The 0.6.0 release will also hit the Jolla store, and we would love to have the translations up-to-speed when that happens.

Translation status

As you can see, many translations have been started, but not all of them are maintained perfectly. @direc85 keeps the Finnish up-to-date, I take Dutch, and many other people took the 1300+ words upon them to translate.

What I want to convey here: if you have a few minutes of time, it would be really cool if you could help a bit on Weblate with a language that you know well. If you have questions about a translation string, feel free to ask me!

16 Likes

If I were to pick the feature in beta.17, it would definitely be sealed sending – Whisperfish is a lot more reliable now! (But it’s still in beta!) That was the most critical piece of technical dept (in my opinion) that’s now pretty much paid, so in the future we should be able to focus more on new features and polishing the existing ones instead.

For the bug-hunters out there, the logging can now be enabled and disabled from the settings page (restarting Whisperfish is required) and there’s now log rotation: it keeps the five last logs, so that should protect from “whoops, I lost the log because I restarted Whisperfish” situations.

Beta.17 is definitely something you should upgrade to :slight_smile:

3 Likes

Hmmm.

Main menu > Settings -> Show my profile

… shows someone else’s profile for me.

Can anyone confirm?

2 Likes

… it shows my picture, and then the name and number of a friend. Thanks for noticing :rofl:

For me it’s picture, name and number for a friend, but the UID is not the same as that friend’s. (is it mine? I don’t know!) :slight_smile:

This falls into the category of “interesting”… I’ll have a look at the code today.

FWIW, it always showed my info back to me…

Thanks for the update! The change log shows major advancement and it is nice to see an app being developed with such intensity.

Since we’re talking about the details, I thought I’d bring up a couple of things.

1.) Main menu → About Whisperfish → “Do not ever contact the Signal developers about a Whisperfish issue, contact us instead!.” There is either an extra dot or exclamation mark.

2.) When user installs Whisperfish for the first time, the main view shows the text “Pull down to start a new conversation”. Since it’s not possible to start a new conversation this way, would it make sense to replace that text with something more useful?

2 Likes

@nephros @rubdos: When you go to “Note to self” and to profile from there, do you see your own profile information, or someone elses?

Edit: tuplasuhveli, I thought you also reported this bug, sorry about the ping!

Edit 2: There’s an issue about this now.

I can’t find ‘note to self’, where is that?

It’s the conversation with yourself. You’d need a linked Signal Desktop and having sent a message to yourself using that to get it going.

1 Like

Another one:

If I scroll the conversartion list to the bottom, there is a (second) section called ‘Today’, and it contains three people I have never talked to, but who are in my contacts, and are members if a group I am in.!

That’s a side effect of unindentified sending; the sessions “magically” appear in the list because sessions with them are created in the process of sending such message. The ordering is wrong - that’s a known issue. You can fix the ordering by restarting Whisperfish.

Edit: It also lets you start 1-on-1 conversations with “new” group members with using Whisperfish only, which is quite nice :^)

1 Like

@nephros The issue now has a fix, which it required changes in both Rust and QML code. This means that the “proper” fix won’t be available until the next release, unless you compile it yourself or are willing to dig out the fixed build from CI.

But – As I’m writing this post, there is a hack-fix you can do to fix it temporarily! In Settings.qml line 47 you can increase the number by one in recipientId: 1 and try again, until you find the number that is your own ID. This number should be 1 for everybody, but apparently it is not, and as such we simply can’t rely on it :woozy_face:… If you choose to do that, please report back what the number was – I’m curious to see if anyone has higher than 2 :slight_smile:

Actually, it’s a side effect of the reTOFU implementation. Sessions need to be created to correctly execute some actions against those recipients, and empty sessions get incorrectly listed like that indeed… ENEEDSISSUE.

Yourself has only become a real recipient later on, so that’s why it’s not one. The friend that I see in “my profile” is 1 iirc.

Thanks all for the feedback! :slight_smile:

1 Like

@rubdos verified that the own profile shows up correctly from Note to self conversation, so that’s the easiest workaround is to not use the Settings menu item :slight_smile: I also dropped a note to the opening post Known issues section.

1 Like