Publish the application on the official F-Droid repo
Please publish the application on fdroid. https://f-droid.org/ Thank you
Hey, what's the dev's opinion on this?
This project sounds nice, they'll need to make a gradle flavour that doesn't need non-FOSS libs like Crashlytics, Firebase and Google Services (maybe more?), but given past projects like LibreSignal maybe this is not that hard.
The CTO stated in this discussion https://github.com/privacytoolsIO/privacytools.io/issues/1678 the following, so I guess they are trying to make it.
APKs are here, https://github.com/loki-project/session-android/releases , We will be trying to get into F-Droid repo shortly, we're just focusing on bugfixes for now since we just released.
We fully intend to get into the F-droid repository, but first we are focusing on ironing out bugs with the current releases, you can avoid Google Play by downloading the official signed APK's for now, but you will need to keep ontop of the updates manually https://github.com/loki-project/session-android/releases
We fully intend to get into the F-droid repository, but first we are focusing on ironing out bugs with the current releases, you can avoid Google Play by downloading the official signed APK's for now, but you will need to keep ontop of the updates manually https://github.com/loki-project/session-android/releases
Is there a way to check which version I'm using?
We fully intend to get into the F-droid repository, but first we are focusing on ironing out bugs with the current releases, you can avoid Google Play by downloading the official signed APK's for now, but you will need to keep ontop of the updates manually https://github.com/loki-project/session-android/releases
Is there a way to check which version I'm using?
No, not right now on Android, but a version number in the settings menu will be added next release
Is there a way to check which version I'm using?
Install MyPhoneExplorer from fjsoft. You can also synchronize Offline, save apks from all Apps, Contacts, SMS all stored with a passphrase encrypted.
Any update on this? Would really like to keep Session up to date with F-Droid. Being available on F-Droid also gives users some peace of mind due to their strict FLOSS Inclusion Policy and auditing during the build process.
https://f-droid.org/en/contribute/ https://f-droid.org/en/docs/Inclusion_Policy/ https://gitlab.com/fdroid/fdroiddata/blob/master/CONTRIBUTING.md https://f-droid.org/docs/Submitting_to_F-Droid_Quick_Start_Guide/
We haven't started on this yet, as our priority is still improving the user experience of Session at the moment. We release signed APK's regularly here, https://github.com/loki-project/session-android/releases they don't bundle with any google services so you can just download them and run them on any Android phone without the google play store
Any idea how long will it take to start working on this?
Depends on how quickly we can fix up multi device, push notifications and message sending reliability, maybe a month or two?
We haven't started on this yet, as our priority is still improving the user experience of Session at the moment. We release signed APK's regularly here, https://github.com/loki-project/session-android/releases they don't bundle with any google services so you can just download them and run them on any Android phone without the google play store
Seems that in the end comes bundled with that but "optional" which acts strange as showed in other issue I created.
Just a heads up, while they keep working on the F-Droid release, you can keep up to date more easily through IzzyOnDroid's repository, you can add them to your F-Droid repositories' list or use another custom application store like Aurora Droid.
https://apt.izzysoft.de/fdroid/ https://auroraoss.com/downloads.php
Can the user backup/restore once F-Droid is ready?
I guess it'll depend on how they do it, I have some applications installed through Aurora Droid which are the same on F-Droid, but some others (like Geometric Weather) seem to have incompatible signatures and will need either an update or a reinstall to work properly. Still, Session has a key back up system, so therefore you could be able to simply uninstall it and log in again in the worst case scenario.
Aurora Droid uses the main repo too, of course it's the same signature. :)
Geometric Weather was just merged in, so IzzyDroid would drop it soon.
Still no updates on this? I'd really like to recommend Session as many people are moving from Whatsapp to Signal (which isn't any better) currently. Having the option to download the app from F-Droid would give you more trust in the FOSS community and a big advantage over Signal whose lead dev doesn't want the app published in the F-Droid.
very much looking forward to this, will switch once it's there
+1 for degoogled android users.
Session has now been added to F-Droid, you can add the Session repository and download the app (inside F-Droid) using the following link https://fdroid.getsession.org/fdroid/repo/ , ongoing updates will be provided through this repo.
@KeeJef, I am curious. What are the reasons Session cannot be distributed from the official F-Droid repository? Is Session not able to be compliant with F-Droid's Inclusion Policy?
Distributing through F-Droid's official repository and meeting their requirements gives user's confidence that the application respects their freedom and is being built from source by a trusted third party.
@KeeJef
Session has now been added to F-Droid That's...not...what...it...means.
"You can now add the Sessions repo to F-Droid" is the correct phrasing.
@KeeJef, I am curious. What are the reasons Session cannot be distributed from the official F-Droid repository? Is Session not able to be compliant with F-Droid's Inclusion Policy?
Two primary reasons:
-
We offer all users the option to use Google FCM for reliable push notifications, or use background polling to provide less reliable notifications. If they choose to use background polling then they wont use Google services at all, but its an option we want to provide, even in the F-Droid version for now. Having a messaging application which is unable to provide reliable notifications is not very useful and leads to high abandonment.
-
AFIK F-Droid requires that dependencies for the application be on their "well known repositories" whitelist of dependencies when building the application. Some of our dependencies which are open source are not supported in their whitelist (SQLCipher, LazySodium and a few others), it would require significant tinkering to refactor the codebase to use only dependencies on the whitelist
"You can now add the Sessions repo to F-Droid" is the correct phrasing.
The App is called Session not Sessions. You can add the Session repository inside F-Droid and pull the latest releases from there
Requires knows open source artefacts or build from source, no need to refactor then. But the recipe will be more elaborate.
We offer all users the option to use Google FCM for reliable push notifications, or use background polling to provide less reliable notifications. If they choose to use background polling then they wont use Google services at all, but its an option we want to provide, even in the F-Droid version for now. Having a messaging application which is unable to provide reliable notifications is not very useful and leads to high abandonment.
As you may be aware, Google FCM is a limitation that many developers run into when trying to be FOSS. Telegram, for example, has a separate build/fork that, among other changes, trades FCM for a persistent notification and Tutanota, as another example, built their own push notification service with SSE. And there are other solutions available if being completely FOSS is an objective of the project (maybe its not?).
AFIK F-Droid requires that dependencies for the application be on their "well known repositories" whitelist of dependencies when building the application. Some of our dependencies which are open source are not supported in their whitelist (SQLCipher, LazySodium and a few others), it would require significant tinkering to refactor the codebase to use only dependencies on the whitelist
I was not able to find any mention of a whitelist of libraries in the Inclusion Policy, the Inclusion Submission How-to, or in any previous submissions to the Request for Packaging repo on GitLab; only that the libraries be "Free, Libre and Open Source software." But I am not an Android developer and have not gone through the process, so could be missing something.
While it is nice to be able to use the F-Droid or AuroraDroid applications to keep Session up to date without involving Google, we could already do that with IzzyOnDroid's repository, which just grabs the latest build from your releases.
Since Session was not published to F-Droid's official repository, which I believe was what the spirit of this issue/request was about, can we please reopen the issue until a future where Session (or a fork) can be completely FOSS and included in the official repository?
@Neurognostic see fdroidserver/fdroidserver/scanner.py look up "maven" where's there's a list of known maven repos that hold mostly FOSS artefacts.
for a persistent notification
Which can be hidden...
As you may be aware, Google FCM is a limitation that many developers run into when trying to be FOSS. Telegram, for example, has a separate build/fork that, among other changes, trades FCM for a persistent notification and Tutanota, as another example, built there own push notification service with SSE.
None of this is possible for Session since we can't hold onion routed persistent connections open with the Service Node network, that would require the integration of Lokinet which is not yet implemented on mobile. Currently the non Google notifications service uses a background polling based approach + Onion requests, however this is frequently shut down by the devices battery management systems. None of the solutions we have seen thus far can reach the reliability of FCM while maintaining privacy, in the future we will be able to use Lokinet to solve many of these problems, using FCM is not ideal, but that's something we're working on.
And there are other solutions available if being completely FOSS is an objective of the project (maybe its not?).
Whether the app is completely FOSS or not seems ideological, yes the apps code does include Google FCM right now, but if the user chooses to use background notifications the Google code path is never visited and the app can be used entirely without using Google. Personally I don't see the issue with offering users choice about which code paths they interact with. Although i do see the issues with using Google services which we intend to move away from once we can get Lokinet working on mobile devices.
How does Briar do it?
Jami?
Is the longpolling of the connection like Conversations does, out of the question?
As said by others i don't think it's correct to close this issue because the app is not available in the official f-droid repository. I have an android phone with lineageos 17.1 (android 10) without google services or microg and for a few days I've installed session from the izzyondroid repo and so far I haven't had any problems receiving notifications. I hope that the possibility of publishing a version compatible with the official f-droid repo will be evaluated again. Maybe not immediately but at least when the integration of lokinet will be done.
@KeeJef you should take a look at this project also, it's on f droid and has a reliable notification system without Google
https://github.com/moezbhatti/qksms