News for hackers. Stuff that matters.
Re:Towards a Reproducible F-Droid by ThrowawayTestr on Friday January 20, 2023 @02:27PM (#34458417)
I'm surprised reproducibility isn't a bigger deal for the OSS community.
Re:Towards a Reproducible F-Droid by codewiz on Friday January 20, 2023 @02:41PM (#34458627)
There's a joint effort for reproducible builds, and several Linux distros (Arch, Debian, Fedora and SUSE) along with various BSDs and other high-profile projects are participating: https://reproducible-builds.org/who/projects/
Re:Towards a Reproducible F-Droid by codewiz on Friday January 20, 2023 @02:46PM (#34458722)
It's surprising that Flathub and Canonical's Snapcraft aren't involved in the Reproducible Builds initiative, since they're important distribution channels for end-user applications that could read your ssh keys and wipe your hard-drive if the distribution chain is compromised.
Re:Towards a Reproducible F-Droid by lrvick on Friday January 20, 2023 @04:15PM (#34460018)
Those projects were created because maintainers want things as easy as NPM because the traditional path requires care, signing, and process. Security was never the goal.
Re:Towards a Reproducible F-Droid by Vogtinator on Friday January 20, 2023 @04:33PM (#34460251)
IMO you're exaggerating a bit, but there's quite some truth in there. Flatpak has some security features and is by itself not a bad design, but the ecosystem's current state isn't really utilizing those.

Snap is a whole other can of worms. The ecosystem is like canonical's personal play store/app store.

Re:Towards a Reproducible F-Droid by goodpoint on Friday January 20, 2023 @05:13PM (#34460796)
Despite the downvotes you are spot on.
Re:Towards a Reproducible F-Droid by tgsovlerkhgsel on Friday January 20, 2023 @02:46PM (#34458732)
Reproducibility is a nice-to-have, when open source is often missing basic table stakes like correct functioning.

F-Droid in particular a) requires users to manually confirm updates, because they haven't implemented the new API that'd let them update apps silently b) used to throw errors when doing so, so each update turned into a minute of fiddling.

https://gitlab.com/fdroid/fdroidclient/-/issues/1843

https://gitlab.com/fdroid/fdroidclient/-/issues/1836

Re:Towards a Reproducible F-Droid by NoahKAndrews on Friday January 20, 2023 @03:40PM (#34459606)
Neo Store is an alternative F-Droid client that supports that API.
Re:Towards a Reproducible F-Droid by wolverine876 on Friday January 20, 2023 @04:04PM (#34459920)
Who runs Neo Store and why do you trust them?
Re:Towards a Reproducible F-Droid by escalt on Friday January 20, 2023 @04:48PM (#34460439)
It's just another client that (by default) uses the official F-Droid repo
Re:Towards a Reproducible F-Droid by wkat4242 on Friday January 20, 2023 @11:04PM (#34463765)
There's also aurora droid
Re:Towards a Reproducible F-Droid by autoexec on Friday January 20, 2023 @04:00PM (#34459869)
Personally I'm glad that I have to manually confirm updates, but folks who want their apps changed without notice should have the option.
Re:Towards a Reproducible F-Droid by safety1st on Friday January 20, 2023 @11:22PM (#34463864)
On the last three devices I installed F-Droid on, it was unable to update itself or update apps period. When I hit the Update button it would throw up a generic error message and Googling that message yields hits for multiple F-Droid issues from the past several years.

They have a long way to go before their software is usable. It's a shame because I would happily promote F-Droid to other people, if it worked.

Re:Towards a Reproducible F-Droid by autoexec on Friday January 20, 2023 @11:45PM (#34463982)
It probably isn't helpful, but updates do work for me on the ancient android phone I've got apps on (Markor, Simple Gallery Pro, NewPipe). Maybe they've fixed it?
Re:Towards a Reproducible F-Droid by throwaway742 on Saturday January 21, 2023 @02:52AM (#34464723)
That's odd. I've never had an issue with F-Droid over many years and across many devices.
Re:Towards a Reproducible F-Droid by 1MachineElf on Saturday January 21, 2023 @03:09PM (#34469875)
The issue you describe is may be caused by the Android ROM on the phone. I've seen it work without issue on Motorola and Pixel phones, but struggle on OnePlus.
Re:Towards a Reproducible F-Droid by Caboose8685 on Sunday January 22, 2023 @08:57AM (#34477424)
I highly recommend Neo Store. It's a drop-in replacement for f-droid that leverages the newer Android API for seamless updates. Been using it for months happily.
Re:Towards a Reproducible F-Droid by franga2000 on Saturday January 21, 2023 @01:50AM (#34464464)
There's a difference between manually confirming updates and manually installing the update APKs. Having to go through the "install", wait 10 seconds, "Ok" process for every single app you want to update is a terrible experience and is the main reason half of the apps on my non-rooted phone are outdated.
Re:Towards a Reproducible F-Droid by Ajedi32 on Friday January 20, 2023 @05:17PM (#34460853)
Used to? I'm pretty sure it still does. There are comments on that issue from as recently as 6 days ago. Personally I can't recall a time when manual updates on F-Droid ever worked consistently.
Re:Towards a Reproducible F-Droid by tgsovlerkhgsel on Friday January 20, 2023 @05:56PM (#34461288)
Yeah, I wasn't sure because I hadn't seen any updates in a while
Re:Towards a Reproducible F-Droid by Abishek_Muthian on Saturday January 21, 2023 @02:05PM (#34469195)
If you have f-droid privilege escalation patch the updates are automatic and seamless; MicroG version of LineageOS comes with it and so there's no need to root.
Re:Towards a Reproducible F-Droid by charcircuit on Friday January 20, 2023 @03:13PM (#34459138)
I'm surprised installing updates in the background instead of requiring the user to manually install each and every update for each and every app is not a bigger deal for F-Droid.
Re:Towards a Reproducible F-Droid by aordano on Friday January 20, 2023 @03:35PM (#34459532)
Installing updates in the background requires special permissions that require google's blessing. For now, the workaround is a Magisk/Xposed/Lsposed module to give those low level permissions to the F-Droid app.
Re:Towards a Reproducible F-Droid by derkades on Friday January 20, 2023 @04:08PM (#34459966)
Not anymore since Android 12. As far as I know, if the installation (or update) of app A through app B is approved once, app B is now free to update app A in the background without a prompt.
Re:Towards a Reproducible F-Droid by MishaalRahman on Friday January 20, 2023 @09:50PM (#34463354)
Not automatically. It requires the use of a (new in Android 12) API. But you're otherwise right.
Re:Towards a Reproducible F-Droid by charcircuit on Friday January 20, 2023 @08:38PM (#34462853)
Yes, but F-Droid isn't on the play store so it wouldn't matter if they get Google's blessing to upload the app to the Play Store. They can just distribute the app with background installing capabilities from their website like they already do.
Re:Towards a Reproducible F-Droid by singpolyma3 on Friday January 20, 2023 @05:51PM (#34461226)
Updates in the background sounds... Bad? Not even play store does that to me.
Re:Towards a Reproducible F-Droid by Aachen on Friday January 20, 2023 @07:04PM (#34462085)
This is the default iirc because that's what works for computer illiterate people. My partner specifically disabled that and does manual updates instead (I don't primarily use the Play store on my own device myself, so I don't have enough experience to judge whether this was user error). Despite that, their weather app got updated at some point after like five years of not updating it, and now everything (startup and detail screens) takes five times longer to load and it doesn't show the cities anymore that they want to see (can only show N on the screen and they iirc used to have 3 more or something). Of course there's no way to downgrade like you could on F-Droid (though, to be fair, it doesn't have releases going five years back, but it would also just never force this and it'd be safe to do updates intermittently because you can always choose "nah, don't like this change, I'll go back").

The closest experience I have is a GrapheneOS device where, after installing the Play Store, it ~daily tries to background install some VR app, no idea what that's about (purple hexagon logo, don't remember the name). I don't want this VR game on a work device. Installation fails because it requires manual confirmation (the store doesn't have background install permissions, which I think confuses the heck out of this google thing which is used to being a backdoor with superpowers) but the home screen keeps doing this animation to show another where this app is now loading, and fails some time later. For some reason it stopped prompting me with every attempt, not sure how I made it do that, but it switching home screens whenever I pick up the device is also annoying.

Background installs are totally a thing on the Play Store.

Re:Towards a Reproducible F-Droid by jackothy on Friday January 20, 2023 @07:23PM (#34462259)
I use GrapheneOS too. I had that same Play Store prompt to install the purple AR app. "Google Services for AR" or something. For me, I'm pretty sure it was a dependency for Snapchat.

From my limited Googling at the time it seems you will only be prompted to install it if you already have an app installed that depends on it for certain functionality. Do you have any apps that might want to use the camera with AR-like effects?

Personally, I also stubbornly pressed "decline" on all the requests to install it. However, I gave in once I realised that:

1. I was probably the one that caused the install prompt (by installing Snapchat)

2. The shadiness of the app would likely not be worse than the other similar Google services I had already voluntarily installed

3. It would likely not be active except for when I'm using Snapchat

Now I haven't thought about that hassle in weeks.

Re:Towards a Reproducible F-Droid by Aachen on Saturday January 21, 2023 @10:41AM (#34467144)
Phyphox might be the one, I think that has some AR functionality though I forgot for what. Thanks for the hint!
Re:Towards a Reproducible F-Droid by josephcsible on Friday January 20, 2023 @07:54PM (#34462526)
I think it's a good thing overall, because most people would fall way behind on security fixes otherwise.
Re:Towards a Reproducible F-Droid by charcircuit on Friday January 20, 2023 @08:36PM (#34462843)
Apps in general get better over time. As a platform having autoupdates will improve the average experience of your users as they will be using better apps that have less issues and less crashes.

Yes, the play store already does this.

Re:Towards a Reproducible F-Droid by Krssst on Friday January 20, 2023 @08:56PM (#34462970)
> Apps in general get better over time.

As monetization becomes a bigger concern for a new app/service that was successful, I would tend to think that after a few cycles of getting better apps in general will get worse by increasing the amount of advertisements, requests for subscribing to something and dark pattern usage.

There's also the case of apps getting worse due to some company wanting to deprecate some feature in favor of another that is actually worse (some chat application that changed the way of doing video calls to take three clicks with loading times instead of one click ; some VPN app which changed the method of logging in so it takes one minute instead of one second)

Re:Towards a Reproducible F-Droid by colordrops on Saturday January 21, 2023 @12:54PM (#34468399)
There is a Magisk module that gives FDroid the permissions to do this. I get updates automatically on my phone. Or you can use ROM that already has it built in, like Lineage+microg.
Re:Towards a Reproducible F-Droid by colordrops on Friday January 20, 2023 @07:01PM (#34462043)
How is Nix not mentioned in this thread? The OSS community isn't a single monolithic entity. Nix devs and users are 100% on board with reproducibility.

For Android, there is Nix-on-Droid, built on top of Termux [1]. It would be wonderful if the Fdroid repository were made available as nix packages, but I don't believe that this is the case yet.

[1] https://f-droid.org/en/packages/com.termux.nix/

Re:Towards a Reproducible F-Droid by somat on Saturday January 21, 2023 @02:10AM (#34464537)
As opposed to openbsd which is pushing hard for the complete opposite. unknowable builds.

https://undeadly.org/cgi?action=article&sid=20170701170044

https://undeadly.org/cgi?action=article&sid=20230119075627

Re:Towards a Reproducible F-Droid by kpcyrd on Saturday January 21, 2023 @08:08AM (#34466190)
Kernel relinking needs to happen on the user's system anyway because the prebuilt builds are not unknown (they are public for anybody to download). It's like ASLR at runtime vs ASLR at build time.

Since these binaries are known anyway they might as well use a seed to allow verification of the published binaries with reproducible builds, then relink them into an unknown binary on the user's system after install (for example during boot as described in the 2nd post).

Re:Towards a Reproducible F-Droid by kpcyrd on Saturday January 21, 2023 @10:16AM (#34466952)
Arch Linux is heavily invested into it:

- https://reproducible.archlinux.org/ - Attempts to reproduce the distributed binary packages from source using reproducible builds tooling. This already works for a big chunk of packages.

- https://github.com/archlinux/archlinux-repro - This is a wrapper for Arch Linux build tooling that creates a build environment in a container that has the same packages installed as the original build environment back then. Software is expected to build reproducible in this environment and many ecosystems already do by default (Rust for example, to name one).

- https://github.com/kpcyrd/rebuilderd - This monitors the packages in Arch Linux, runs archlinux-repro on all of them and hosts the results. There are other projects supported but Arch Linux works best at the moment, and archlinux-repro offers the best integration I'm currently aware of.

There are surprisingly few people interested in running this stack on their own for verification purpose though.