F-Droid 2.0

6 hours ago (f-droid.org)

I notice that

    Syncthing-For
    k

is one of the first pieces of text in the first screenshot. With the k on its own line like that. Not usually something I’d comment on, but if you’re showing off a redesign…

  • That app itself also has some of the most revolting UI I've seen in a modern Android app (Vertical gradient filled buttons with thick gray strokes surrounded by not-quite-Material UI widgets, in a nonsensical custom control they had to go out of their way to make rather than just use a dropdown). Android developers really just don't care.

  • It's annoying and easy to forget, but you have to enable the high-quality line break algorithm per Text component in Compose. Or you have to set two flags (maxLines=1 and overflow=TextOverflow.Ellipsis). I usually end up with a TitleText and BodyText component in my codebases that set these flags internally so I don't have to remember.

I have been using droid-ify on GrapheneOS for a few years now; because F-Droid ui is terrible, and the privilege extention has been such a pain to configure and get working without issues on my previous lineageOS phone. Happy to see this major overhaul; and i'm glad the FPE is being phased out.

  • I think it is great that there are multiple clients out there, so people have a choice of user experience. One thing that I think is too often overlooked look is if they have implemented the same security and privacy standards as F-Droid, if that's important to you. For example, last I checked, the third party clients where still using index-v1, which is signed using SHA1. Maybe NeoStore updated to index-v2? And there is also quite a bit of effort put into the client-side to make sure it leaks as little as possible to the servers. There are libraries of the official core pieces for third party clients to use to gain many of these protections: https://f-droid.org/2023/05/02/three-client-libraries.html

  • Thank you. Used it to uninstall F-droid and roll back to v1 after trying out this new update (ooof... full-blown material ui is not for me. Those progress bars, oh my eyes!)

    The old f-droid client made selecting app updates easy. With both v2 and droid-ify, you have to click through for each app. Not a great interface decision :( Why do updates always dumb interfaces down these days?

  • Me too. But more and more I am using ObtainX now and installing from Github sources. I don't need F-Droid's gatekeeping.

What does the future of something like F-Droid look like once Google does their lock down next year?

  • It looks exactly the same as now. You will have to do Google's 24 hour flow thing, but it's not like that's going to stop anyone who appreciates what F-droid brings to the table.

  • Since F-Droid (i.e., the repositories, not the app) builds all apps, a practical solution would be for the repositories (i.e., their signing keys) to be recognized by El Goog. Whether and how much help / obstacle the "maybe we do evil" company puts up for / against this is a different question.

    • It seems to me this is a blocker to use if google can restrict sideloading like this. Its not going to end with just get people requiring to register their app with an identity. Wont they be able to put presser on f-droid devs to lock out software they consider a threat to some business model?

      26 replies →

  • It seems google is going to allow an "advanced flow" that is scam resistant by requiring the user to wait 24 hours before they can start installing their own apps. It sucks, but assuming they don't change the plan again, F-Droid should be able to continue working.

    • > assuming they don't change the plan again

      Knowing Google, that's a big assumption

  • Alternative app stores are mandated atleast here in the EU I believe?

    • Yes, but the ability to install any software isn't. goggle can still decide to allow only "official" apps in """3rd party""" stores.

  • There is an entire world of Android phones not controlled by Google, including GrapheneOS, LineageOS, and countless variations in China and other places where Google is effectively banned.

  • The current lockdown plan is that you'll need to wait 24 hours before installing the first unauthorized app, right? So probably exactly the same as it is now except setting up a phone will take 24 hours longer.

  • Switch to GrapheneOS or HarmonyOS

    • Currently, switching to GrapheneOS means giving Google money. Next year's Motorola-based alternative is also likely going to be several price classes above the Pixels you can currently put GrapheneOS on.

      7 replies →

  • Updates on this have been slowly trickling out and the best I can discern is you will be able to still install apps from stores like F-Droid, but you have to go through a manual "advanced flow" which will most likely make you wait 24 hours before installing it and make you go through other hoops.

    In short, google has referred to this as "increased user friction" to try and deter people from doing this. Essentially not making it impossible; just really frustrating for users so they get sick of the process and just install verified apps through them.

    The only way I know around this is to install a custom rom like GrapheneOS or Lineage OS since this change targets Because the policy targets the Google Mobile Services (GMS) framework rather than the foundational Android Open Source Project (AOSP).

  • Isn't it possible, however complicated, for users to undo the lockdown to install an app? The required 9 steps are noted at https://keepandroidopen.org/ for devices that use Google Play Services.

    Irrespective, people should probably be migrating to a GrapheneOS or similar OS asap once the OS ships with a device.

    • Ah this is good to know. Awful it's required, but glad there is a work around.

    • Honestly not as bad as I feared it would be. Still not great and it's moving us farther from the idea that people who paid for the device should be allowed to install what they want on it, but as it stands it's a workable process. We'll see how quickly it takes Google to make it worse

Can someone recommend a good F/OSS ebook reader on F-Droid? The existing ones I have tested have too many knobs and options and are not really user-friendly.... My wife started to get into reading, but I could not get her to get out of the Kindle/Play Books ecosystem because of the user-friendliness and easy synchronisation across devices that Kindle gives.

  • KOReader [1] is my favorite reader. Pairs well with my syncthing library of ebooks (I just keep the phone's copy in read-only mode).

    [1] https://f-droid.org/en/packages/org.koreader.launcher.fdroid...

  • Try storyteller. It’s an awesome app that does the whispersync thing where you get the audiobook and ebook together, can switch between the two and not lose place, can read both at the same time where the ebook underlines what’s being said. All self hosted though so you need to have a way to…obtain drm free e/audio books.

  • It depends.For me it’s not on app For a dedicated device(phablet/tablet) - KoReader. For Smartphone (no longtime reading) - Librera Reader

  • Even if you have a FOSS ereader app with good sync, where are you gonna get books to read on it?

    The only options are stripping the DRM from kobo books or piracy, last I checked.

  • I run Calibre Content Server on a VM. So my ebook reading is just accessing that in the browser. Works great.

  • Honestly I use Lithium with no network permissions. It's not Foss but it's good enough for me.

In addition to F-Droid on the device, I'd love an F-Droid "package manager client" on a computer, that allows installing apps on an Android device via adb:

    # update repo lists
    fdr update
    
    # upgrade all apps on the connected device
    fdr upgrade
    
    # search packages
    fdr search vlc  # lists org.videolan.vlc
    
    # install on the device
    fdr install org.mozilla.firefox
    
    # download the apk
    fdr download org.mozilla.firefox
    
    # uninstall
    fdr uninstall org.mozilla.firefox 

Of course, all operations would verify the signatures first.

Cool! Unfortunately I switched to Obtanium a year or so ago. I get all my apps from GitHub releases straight from the developers now.

  • I use F-Droid precisely because I don't want that. When https://news.ycombinator.com/item?id=38505229 happened - and when the same thing happens again in the future, because it will - I explicitly want F-Droid doing some basic due diligence on updates before shipping them to me. Cutting out the middleman is the opposite of what I want.

    • Counterpoint: I use NewPipe pretty much daily for watching YouTube. One day, YT introduced an API change that broke NewPipe, and so I patiently waited for an update.

      A few days passed, and I eventually get a notification from NewPipe prompting for an update. But I can't install it just yet, because of mismatching signatures between the F-Droid and GitHub versions (yes, that's the point, I know...). The F-Droid build took so long to release, that in the meantime, another version of NewPipe came out...

      7 replies →

  • Do you use a lot of apps with that?

    I tried it with 3 random apps for a while, but instantly got into issues. Two stopped updating due to Obtanium falling behind how app releases - for instance, developer changed version numbering scheme but Obtanium didn't expect that, so an outdated version was always presented. It wasn't fixed for quite a while.

    • I have 23 currently. It's surprising how fast it happened... I don't have any problems, but I don't pay much attention to it and apps seem to update automatically sometimes and after a manual refresh other times.

      1 reply →

  • What do you do for apps that don't have GitHub releases?

    • The other way is to use fdroid as source within obtainium. The benefit is to maintain app list at one place, so you can export/import to another device, when needed.

Very cool, the visual redesign was very much needed and I had been using Droid-ify for a while because of this. I'll switch back to the official app, congrats to the contributors!

Amazing news! I mainly use the F-droid Basic version which does automatic updating of apps. The regular one needs user confirmation for updates if I remember correctly.

  • F-Droid and F-Droid Basic are the same code base, even more so with 2.0. So the automatic updating support is the same for both.

Is it not available yet? Fdroid doesn't update, and downloading and re installing leaves me with the usual app.

Still, excited for when it'll be ready.

I hope the new redesign makes the store easier to navigate on TVs. It's a nightmare trying to install/update apps on F-Droid on either my Nvidia Shield Pro or my Onn 4K TV using the tv remote. The cursor gets lost all the time and it's often impossible to see what option is currently in focus when you click Ok on the remote.

  • Have you filed a bug? That's niche enough that i wouldn't necessarily expect the devs to have tested such scenarios.

For people who are die-hard F Droid users, do you get all your apps from it? I have tried in the past but it seemed like even when I restricted my use to basics it was missing things I needed to make my phone feel useful. Wonder if it has gotten better.

  • Most of them, yeah. My main non-F-Droid apps are YT-Music, Google Maps, Duo auth, Bible, and my bank app. Firefox, podcasts, local music player, ebook reader, RSS reader, email client, Matrix client, XMPP client, audiobook player, calendar sync, KeePassDX, SyncThing, Nix terminal, etc are all F-Droid.

  • Yes, essentially. I do have the Guardian Project repository and I get a handful of applications from the Play Store (via Aurora Store), but everything else comes from F-Droid. If you want even more, you can add the IzzyOnDroid repository[0], but bear in mind that unlike F-Droid, applications are built by developers themselves, and the rules on FOSS-only licensing are less strict.

    [0]: https://apt.izzysoft.de/fdroid/

  • What do you find is missing? The main apps I need Google Play for are apps that are tied to a specific company or government service (eg, banking apps, or HMRC). For pretty much all basic functions I think F-Droid does the job.

    • Store and restaurant apps, discord, streaming apps, most games, payment apps, apps for school, ride-sharing. I tried the "degoogle" way and tossed after two days because that's impossible unless you're willing to adopt a more expensive boomer/millennial lifestyle.

      1 reply →

  • I only use it to install the apps that aren't available on the Play store (e.g. Öffi, an excellent public transit app that gave up on dealing with the Play store after one too many arbitrary removals, Termux, and NewPipe).

    The user experience was just too broken for too long to consider it usable (didn't support background updates for about two years after Google made it available, and generally just too much jank and random errors/failures). I might look into it the next time I'm setting up a device, but I think for the majority of apps I'll still go through the Play store - I don't trust F-Droid to be stable/reliable enough yet.

  • Fossify Clock has the best accidental feature: when your alarm is going off, there's no way to stop it except for unlocking your phone, opening the app, finding the current alarm in the list of alarms, and disabling it.

    This means you're definitely awake.

    I'm being sarcastic.

  • I have a slow, crappy tablet I bought on Temu.

    It is not my main device, nor even my secondary device. It’s basically just a device I bought for cheap hoping that maybe I was lucky and it was actually pretty snappy. It’s not snappy :(

    I occasionally watch a couple of YouTube videos on it and read a couple of HN posts on it, when my phone is out of battery or when I’m doing a backup of my phone and have left the phone on the table for that.

    Anyway, aside from YouTube the other apps I have installed on it myself are all from F-Droid, including the DuckDuckGo browser that I use on it. I also have Signal on it, which I don’t remember if I installed from F-Droid or from Google Play.

    My main device that I actually use a lot is an iPhone. And like I said I basically only use the tablet like a couple of hours a week and only to watch a couple of YouTube videos and read a couple HN threads, when I am not able to use my phone for those things.

  • No... I use a combination of Aurora, Obtainium and F-Droid.

    Unfortunately there are APP providers actively preventing their apps to work on graphene OS, so i own an extra use@home cheap broken glass iphone for these mandatory but non-graphene apps.

    It is a pain and it is getting worse... I'm really tempted to get back to the Apple ecosystem for less shens but currently i cannot do this yet... It just feels wrong but the pain is real. I'm Lösung the fight of investing too mich of my time in things that just should work.

  • I use droid-ify as frontend; and it's been fine to use f-droid repos for most of my needs. I try to install my apps from there in general. Biggest issue for me is android auto capability usually requires the app to be installed from play store (CoMaps) and my music player app (GoneMAD) has a companion unlocker that is from paid app store.

    I need banking and bunch of vendor related apps. I need play store for them; so not full on f-droid repos. But close-ish when it comes to phone functionality.

  • No I have Obtainium side by side with F-Droid. There are some closed source apps or apps that are not published on F-Droid (like Wireguard) that unfortunately I need. Obtainium is great for that.

  • Similar experience for me. I find f-droid a great supplement store but cutting out the default store entirely has felt like more of a commitment than I'm interested in so far.

  • I wouldn't use F-Droid exclusively. Many apps can simply be downloaded from their respective webpages. GrapheneOS also has also its own very basic app store.

    • FDroid offers the guarantee that the apk was built from source, and at least some marginal safety in terms of having passed their security and analytics/ads checkers.

      You lose all that if you go directly to source.

  • When I need some category of app - say a note app or an audiobook player - I generally check F-Droid first.

    If there's a good enough app on there, I generally stick with that as opposed to trying what Google Play has to offer.

    I like having that prefiltering, knowing that the app will be open source, not trying to pull anything shady and not have ads or sell my data. On the Play Store, more often than not, at least one of those is not true.

Great! But why hasn't 2.0 installed automatically on all devices that already have F-Droid?

- go to F-Droid -> Updates. "Congratulations! Your apps are up to date."

- refresh the repositories. "Congratulations! Your apps are up to date."

- search directly for f-droid in apps. "This app was built for an older version of Android and cannot be updated automatically."

*facepalm* never change, F-Droid. You might not be able to automatically update the app because of Android API restrictions, but there's no reason your app can't tell me it knows there's an updated version I could be asked to apply manually, is there?

EDIT: it still says version 1.23.2 is "Suggested" even when 2.0 is installed. Perhaps this is a reason? Nonetheless, there's no setting to choose a different version policy, i.e. install 2.0 because it's newer, even if not "Suggested"

What does "Suggested" even mean? According to https://forum.f-droid.org/t/how-does-f-droid-suggest-a-versi... it's set manually by the person maintaining the metadata, which makes it even more of a facepalm if F-Droid are announcing 2.0 on their homepage but nobody set CurrenVersion=2.0 in their own metadata.

  • According to the post they only start to roll this out now, gradually...

This is very good to see. Classic F-Droid always seemed to fail at updating repos at least every week or so.

  • Repo timestamp expected blah blah... toast coming out of nowhere is such a bad design. Really, the architecture in which you absolutely have to download the multi-MB index is as well.

> Also, F-Droid Privileged Extension (FPE) is not currently supported by 2.0. That means even if FPE is installed, F-Droid 2.0 won’t use it. This overhaul focused on full featured support for the Android “session” installer. That lets F-Droid run background updates on any recent Android version without requiring FPE. Like with any of the changes here, we welcome feedback.

This is a shame. Is the privileged extension a large maintenance burden?

Great visual and usability update.

Even greater HN conversation about all the to-me-unknown alternatives. I used neostore as a replacement, but maybe time to try f-Droid again

Not any super user but about three/four months, I'm using my device without any google account. Also not using any G service apps such as mail/yt/maps and of course play store. Instead of play store I found aurora store very helpful. "Very" because of the anonymous login future. But sometimes the store disturbs. Newly added apps on Play store doesn't appears on aurora. Also many applications fails to be installed without showing any reason. Some shitty apps redirect to the play store app (which I'm unable to disable but uninstalled her! Updates) and just doesn't works anything more then redirecting me. So I'm still not a fan of Aurora. But it's going not bad. But sometimes I should browse other sites to get old/delated from Play store apps. Also for mod/adless version of some apps.

I heard of fdriod but what I think it may only serves feature less, low UI/UX optimized apps. So didn't installed it yet. But something should be available where people can find all Play store apps (as aurora supplies) + premium/adsense deleted modified apps (random website) + Open source apps (fdroid)…… this will make android insane

That page uses the term ''repository''' singular. Can additional repos be added in the way Neo Store allows?

  • Yes. F-droid allows that, you can have multiple repositories and ... a few of those even exist :)

    I'm using that with 2.0 (or rather with F-droid Basic, but I noticed Basic was updated to the same that is described in article, but a while ago). It works just fine.

  • It's always been possible on F-Droid, I doubt they would change something like that.

And still no popularity rating, download count or any user review system whatsoever.

  • Can't you at least see and file issues and discussions on the respective app's code repo site? This is often although not always sufficient, as the repo owner can censor issues and discussions.

    Google has for years censored app reviews anyway on its Play Store, and also allowed too many low-value reviews which drown out useful reviews.

  • Because nobody uses it except a handful of uber-nerds who can put up with wasting hours of time for "altruism".

    The answer to freedom isn't another marketplace. It's legislation that requires Google and Apple to allow web installs without scare walls or deeply hidden permission toggles.

    You should be able to just download an app. And Grandma should be able to do it.

    There's nothing insecure about it in a world of sandboxing, permissions, scanning, blacklisting, etc. When the tech giants are more than happy to sell ads to malware, you know their "safety" stance is just economic moat protectionism.

    ---

    Edit because of rate limits:

    This is not derogatory. This is making the point that the wrong battle is being fought. F-droid fans are cheering a small victory, yet losing the entire war.

    F-droid does not matter in the grand scheme of things. It's not the point. The point is the app store monopoly. That there are only two platforms and that both are almost completely locked down.

    F-droid users don't even see that Google is purposefully allowing this as an antitrust sponge in their calculus. Google doesn't mind because 0.0001% of their users will install this. If they had a sense that the regulators wouldn't bother them, they'd just as well close this loophole. And they probably will eventually.

    This isn't beachhead, and even if it was, it isn't sound footing or a stable foundation. It can easily go away.

    • > Because nobody uses it except a handful of uber-nerds who can put up with wasting hours of time for "altruism".

      This seems weirdly derogatory towards people that use F-Droid.

      2 replies →

    • > Because nobody uses it except a handful of uber-nerds who can put up with wasting hours of time for "altruism".

      What? I'm not sure how you would manage to waste hours installing a single app and then using it to install other apps, and I'm not using it because of "altruism" (what does that even mean?), I'm using it because it's the best way to get apps.

      > You should be able to just download an app. And Grandma should be able to do it.

      > There's nothing insecure about it in a world of sandboxing, permissions, scanning, blacklisting, etc. When the tech giants are more than happy to sell ads to malware, you know their "safety" stance is just economic moat protectionism.

      Even if you 100% trust Android's sandboxing and permissions, which is... not a choice I would personally make, I like it when my apps don't have scams or ads internally, either. I'm not worried about Grandma downloading any app off F-Droid; I am a little concerned about what happens if she can download any app being pushed by any random website.

Dear F-Droud, please stop redirecting me to the Mandarin version automatically without an option to read the original message. Just because I have a Chinese keyboard layout available.

> All new code in this effort uses modern Android code standards and designs. This gives us a codebase that is easier to maintain, test, and easier to extend with new features in the future.

No, this increases the overall complexity of the system. Android will hopefully eventually collapse under its own weight.

Did they implement any GrapheneOS security complaints for it to be deemed actually secure?