Project

General

Profile

F-DroidAndApplications » History » Revision 16

Revision 15 (Denis 'GNUtoo' Carikli, 02/19/2021 11:19 PM) → Revision 16/48 (Denis 'GNUtoo' Carikli, 02/19/2021 11:20 PM)

h1. F-DroidAndApplications 

 h2. Background 

 F-Droid will be removed in Replicant 4.0 0004 because it contains many applications that are not FSDG compliant. 

 h2. Fixing F-droid 

 As Replicant cannot guarantee to have enough time to dedicate to create an alternate repository, it was decided to do the following. 
 * Someone will need to add some the ability to filter out packages at compile time. This can be done by adding support with a whitelist and a blacklist, for both anti-features and specific applications. That will need to be upstreamed in f-droid. 
 * If needed an fsdg-compliant and not-fsdg compliant flags feature/anti-feature will neeed to be added.  
 * Once this is done we can add a new package definition for an FSDG compliant F-droid in f-droid data, so it would be built and maintained automatically. 
 * Replicant would then include that FSDG compliant f-droid. 

 The only maintenance burden here would be to work with upstream to make sure that the packages are tagged correctly in f-droid data. 

 h2. In the meantime... 

 Without an upstream project, each Replicant user would need do the work of reviewing each application she want to use. 

 As this is very time consuming and would lead to a lot of work duplication, it's best for Replicant to provide some space to share the result of the reviews. 

 At the same time the reviews would also be tremendously useful to help fixing f-droid data. 

 h2. Criteria 

 Since there are free versions of the Android SDK (see the [[SDK]] wiki page for more details), we can assume that all the applications that don't require microG to run build fine under at least one of the FSDG compliant GNU/Linux distributions with one of the SDK mentioned in the [[SDK]] wiki page. 

 It might still be useful to mention if we managed to rebuild them with an FSDG distribution and what we used to do that. 

 We can then review applications in a similar way than how we review packages for FSDG compliant GNU/Linux distributions. 

 h3. FSDG compliant  

 |_. Application and version |_. Download link |_. Review comments | 
 | "RepWiFi":https://f-droid.org/en/packages/fil.libre.repwifiapp/ | "Version 0.6.2":https://f-droid.org/repo/fil.libre.repwifiapp_5.apk | Being reviewed: 
 * "GPLv3":https://git.replicant.us/contrib/Fil/RepWifiApp/tree/LICENSE 
 * Doesn't seem to have any (nonfree) dependency 
 * Doesn't seem to promote nonfree software or actively push users toward the installation of nonfree software | 
 | "Silence":https://f-droid.org/en/packages/org.smssecure.smssecure/ | "Version 0.15.16 (145)":https://f-droid.org/repo/org.smssecure.smssecure_145.apk |    Being reviewed: 
 * "GPLv3":https://git.silence.dev/Silence/Silence-Android/raw/master/LICENSE (probably GPLv3-only) 
 * There is also an "Android.mk":https://git.silence.dev/Silence/Silence-Android/raw/master/Android.mk that has instructions on how to produce a standalone APK 
 * Has some dependencies (git submodule): 
  * 
 ** libs/com.amulyakhare.textdrawable: MIT 
  * 
 ** libs/gradle-witness: MIT 
  * 
 ** libs/org.greenrobot.eventbus: Apache 2.0 
  * 
 ** libs/org.whispersystems.jobmanager: GPLv3 (build.gradle has "name 'GPLv3'", no mention of GPLv3+ or GPLv3-only) 
  * 
 ** libs/org.whispersystems.libpastelog: GPLv3 (build.gradle has "name 'GPLv3'", no mention of GPLv3+ or GPLv3-only) 
  * 
 ** libs/org.whispersystems.libsignal: GPLv3 (build.gradle has "name 'GPLv3'", no mention of GPLv3+ or GPLv3-only) 
 * Doesn't seem to promote nonfree software or actively push users toward the installation of nonfree software | 

 



 h3. Not compliant 

 | Application | upstream anti-features | Issues | Upstream status | 
 | "F-Droid":https://f-droid.org/en/packages/org.fdroid.fdroid/ | None | * Its repositories that are configured in by default (and enabled by default as well) have non compliant packages like Yalp, making F-Droid itself non compliant. | * There is no automatic way to deduce that it's not FSDG compliant 
 * Upstream probably would not like having F-droid tagged with anti-features 
 * No current F-droid anti-features apply to that case | 
 | "Yalp":https://f-droid.org/en/packages/com.github.yeriomin.yalpstore/ | * "NonFreeNet":https://f-droid.org/wiki/page/Antifeature:NonFreeNet | Yalp is a package manager that is setup to download applications from a repository that is not FSDG compliant | * There is no automatic way to deduce that it's not FSDG compliant 
 * NonFreeNet is only about non-Free network service and not the license of the packages in the repository  
 * No current F-droid anti-features apply to that case | 

 TODO: 
 * Look at the emulators 
 * Look at the browsers 
 * Try to automatically find non compliant applications with a script and upstream the script in Replicant scripts repository or in the f-droid project 

 h3. TODO: 

 * Evaluate if we should collaborate or not with the Libreplanet wiki on the "List of software that does not respect the Free System Distribution Guidelines page":https://libreplanet.org/wiki/List_of_software_that_does_not_respect_the_Free_System_Distribution_Guidelines for the list of applications to get rid of. Note that they target mainly GNU/Linux so it might not make sense to collaborate with them as most of the applications are very different. 
 * Evalutate if we should collaborate with the Parabola wiki on the "Emulator licensing issues page":https://wiki.parabola.nu/Emulator_licensing_issues as there are also emulators in F-droid, some of which might be port from software that is also typically packaged in many GNU/Linux distributions. 
 * Find time to discuss with F-droid to see if they can fix the issue. Otherwise find time to work on it.