This repo is intended to assist someone to modify, build and sign a Signal Android APK package, so that you can install a version of Signal on your device that works the way you would like it to work.
For example I've added patch-001-forced-upgrades.diff
that removes the forced
version updating in the Signal app.
This is because I don't like forced version updating in any software, but particularly when the latest version of the software has removed features that I like.
Feel free to submit some more patches via PRs if you have any interesting ideas.
The github user ubergeek77
has submitted patches to keep the SMS
functionality around, and also removes the messages that nag at you. (Wow).
I went through every tag from Signal version 6.5.0 and upward, and rebuilt Android packages for every version with the patches above. See the RELEASES page:
https://github.com/alexlance/signal-android-classic/releases
This process is not recommended unless you are insane and willing to lose everything, but here we are:
- Download an APK package from the releases page that is the same version as the version you are currently running
- Backup your current Signal database to a file and transfer it somewhere safe
- You will need the following to restore that backup file:
- Your 30 digit backup decryption code
- Your registration phone number, so you are able to receive confirmation SMS
- Your Signal pin (if you set one)
- Uninstall Signal (you did back it up right?)
- Install the APK you downloaded from the releases page (or built!)
- Walk yourself carefully through the Restore-Your-Backup-File process
If you've previously installed an APK from the releases page (by doing the delete-and-restore process above) then for future upgrades you can just select the newer APK from the releases page and it'll be a one-click upgrade.
i.e. the first time installation is painful, but subsequent upgrades are one-click
You don't have to trust my builds though because...
If you've got keytool, apksigner and docker installed, you can build a particular version by running:
make v6.18.1
Then transfer the generated APK file to your device and perform the reinstallation steps above.
Another option is to perform the build process and use Signal's reproducible builds facility to verify that the APKs that I've uploaded as releases are in fact what they say they are.
Frankly, I am hoping this will let me hold onto the SMS functionality in Signal for a bit longer. But we'll see how that goes - so far so good.