Comments (8)
Great - we can make that the default list, which can be overriden in the config file. I can work on this next week, unless someone beats me to it. If you do, just make sure to add proper tests.
from fdroidcl.
Is it not possible to add one of the mirrors as a repository in the config directly?
Also, we rely exclusively on HTTPS for verification of the index at the moment. JAR signatures and fingerprints aren't implemented, so if a mirror is selected, at the moment we have no way to verify that the mirror hasn't tampered with the index.
So I'm reluctant to automatically use mirrors without the user's active approval, as that could lead to security issues.
from fdroidcl.
Is it not possible to add one of the mirrors as a repository in the config directly?
Changing the repo url in config to a mirror only makes it fetch the index jar itself from the mirror, but the apks will be downloaded from f-droid.org, since the index file itself is the same (apk.RepoURL = index.Repo.Address
in index.go).
Maybe just add a user config mirrors
(= a list of preferred mirrors) which when present will override the repo URL. What do you think?
PS See also the android client issue: Enable user to decide which mirror should be used. Picture:
from fdroidcl.
Ah, I understand now. Adding a list of preferred mirrors per repository makes sense. The client would try them in order with a small timeout. If the list of mirrors is empty, the behavior would be the same as if the repository itself was the only mirror in the list.
Does the official Android client set up or enable mirrors by default? Are they in the json index?
from fdroidcl.
The mirrors are in the json index jar, yes. (The "Official mirrors" in the picture above.)
from fdroidcl.
@mvdan Did you get anywhere with this? The main f-droid repos are not very reliable and it would be nice to be able to download from one or more of the mirrors. I changed the repos in the config but the apks are still being downloaded from the main f-droid repo.
from fdroidcl.
I didn't end up working on this, no, and I don't have short term plans for it either. PRs are welcome. If other people want to actively work on this project, I'm happy to transfer ownership of the repo.
from fdroidcl.
Maybe it is unnecessary to think about the speed, just use the url in the config file as the repourl, of cource the user know which one is the closest and approves it use. :-)
from fdroidcl.
Related Issues (20)
- set installer? HOT 2
- Feature request: Can you please add a parameter to clean the cache? HOT 5
- fdroidcl on MSYS2/Windows 10: could not get devices: failed to get device ABIs HOT 3
- Request to add comments HOT 1
- Version code & name often incorrect - matching spurious other numbers HOT 3
- Enhance install -u with ability to exclude an app and jump if error HOT 4
- syntax error: unexpected o755, expecting comma or ) HOT 1
- Mismatch between download and installed apk ABI? HOT 2
- Looking for new contributors or maintainers HOT 7
- Feature Request: Clean apks on hard drive HOT 1
- Add option to add more/custom/privaye repositories to app directly from cli HOT 2
- Debian 10: "devices: could not get devices: failed to get device ABIs" HOT 8
- F-Droid Client Problem - IVPN App Installation Version Conflict HOT 1
- [Support] How do I install a package that needs root? HOT 2
- Debian Bookworm does not install apps HOT 3
- support older SDK install HOT 8
- allow to reinstall app signed with different key HOT 3
- fals positive? (Win10/defender Trojan:Script/Wacatac.H!ml) HOT 1
- Option to install list of apps, comma-separated HOT 1
- Support for the "New repository format for faster and smaller updates"
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fdroidcl.