Fairphone Community F-Droid Repo

Question to all the Community Devs:
Do you think it would be a good idea to set up an F-Droid App Repo for apps developed by the Fairphone Community?

I’d suggest mainly using it for alpha and beta stage apps (before they can be pushed to the official F-Droid repo) and for experimental apps, but also it may be nice to put all the stable apps there that are already on F-Droid, just to see what the FP community already created (like NoPhoneSpam by @j-unique).

I’m no dev myself (at all), but I would be happy to contribute money and help testing.

Obviously the FP Specific Apps from Android 5 would go there once they are ready for testing, but may I also suggest an app that I’d really love to see (but may stay an unrealizable dream), namely:

An advanced Updater App with which you can:

  • Install any #software:alternative-oses that have a flashable zip.
  • Update a modified OS in one go (automatically detect and download all modifications and flash them along with the update in recovery mode).
  • Select system apps that should not be touched by an update.

I think it is a bit overwhelming to set up and maintain a server for so few apps. I was aware of a method for setting up easily a F-Droid repo backend-less (through GitHub/GitLab Pages), but I can’t find it now… I think this repo is hosted that way. Anyone can help me find its source?

That would be ideal:

  • No server to maintain (rely on GitHub Pages or GitLab Pages to serve the content)
  • It will be a git repo, which would be forkable, thus collaborative
  • Independent

That’s ok…

…but that’s not ok. Android apps are signed by the app builder, which often it is the developer. In the case of F-Droid apps, apps are built by them from source code, and they sign them. Hosting the same apps as F-Droid but with different signatures would be painful, because you cannot install an update of an app over another with a different signature (that’s the Android Security Model, and it’s a good thing).

We’ll be duplicating F-Droid infrastructure for nothing, and confusing users.

More on that here

Hey! Should anyone want to help, please continue here:

Uh, this may need another thread of its own. Last one is impossible in practice and the others have their own challenges to beat.


Thanks for the feedback! :slight_smile:

That sounds like a great idea. I’ll contact gsantner and ask him.

True. That would probably be a bad idea.
I currently have more repos enabled in F-Droid and - if you know what you do - it’s quite nice. I can choose to download an app from the F-Droid repo if I only want to download tested and F-Droid-approved versions, or I can choose to download it from a different repo if I want to update to beta versions as well.
But it would probably be more annoying than helpful for most users.

I’ll move it if it ever becomes more than a dream! :cloud:

####PS: Here is Gregor’s Answer

Original in German

Das ist teils korrekt, teils nicht, je nachdem wie mans sieht.
Grundsätzlich ja, das Hosting mache ich mit GitLab, dafür ist kein
Server oder eigene Hardware nötig.

Aber: Das builden der (App-)Packages mache ich selbst, täglich per
Cronjob, auf einem 24/7 Gerät (keine großartigen Hardware-Anforderungen).
Auf dem (nenn ich jetzt mal Server) Server checke ich jeweils ob die
aktuelle Version der App bereits gebuildet wurde, denn Nightlies baue
ich nur
sofern die Git-Commit-Hash noch nicht gebaut wurde. Wenn das der Fall
ist so generiere ich die dazu nötigen F-Droid Metadaten und lasse builden.
Das gebuildete pushe ich anschließend auf meine GitLab Repo. Diese
GitLab Repo ist als GitLab Pages Repo konfiguriert, und stellt so die
Repo nach kurzer
Zeit online, mit meinen Repo-Daten. […]
Zur Einrichtung braucht man auf jeden Fall Kenntnisse: linux shell,
python, git, F-Droid, GitLab Pages/Jekyll
Auch die Funktionalitäten und das Zusammenspiel der Komponenten muss man
beachten um so etwas einzurichten.

Damit das auch auf Android-Seite so buildet und Nightly builds andere
Packages und Icons besitzen habe ich auch
die Android Apps modifiziert. Dazu siehe
https://github.com/froodyapp/froody-android --> app/build.gradle

Das kann sicher auf viele Wege gelöst werden, aber für mich ist das
derzeit die beste Lösung
um Nightlies von Apps mit minimalen Kosten und minimalen Overhead
(Daten, Buildzeit, …) zu deployen
inklusive Update-Möglichkeit in F-Droid.

####My clumsy translation/summary:

For hosting with Gitlab he doesn’t need a server, but he does need a machine wich runs 24/7 to build the apps with Cronjob. He checks whether the current version was built already and only builds nightlies if the git-commit-hash was not built yet.
He then includes all metaata necessary for F-Droid and pushes it to his git lab repo (configured as git lab pages repo).

Needed skills are: linux shell, python, git, F-Droid, GitLab Pages/Jekyll


This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.