Could you include what you're currently using for the various reflector command-line switches? (e.g. --age --protocol --sort ...)
Arch Linux
The beloved lightweight distro
Here's whats in /etc/xdg/reflector/reflector.conf
# Reflector configuration file for the systemd service.
#
# Empty lines and lines beginning with "#" are ignored. All other lines should
# contain valid reflector command-line arguments. The lines are parsed with
# Python's shlex modules so standard shell syntax should work. All arguments are
# collected into a single argument list.
#
# See "reflector --help" for details.
# Recommended Options
# Set the output path where the mirrorlist will be saved (--save).
--save /etc/pacman.d/mirrorlist
# Select the transfer protocol (--protocol).
--protocol https
# Select the country (--country).
# Consult the list of available countries with "reflector --list-countries" and
# select the countries nearest to you or the ones that you trust. For example:
--country Bangladesh,India
# Use only the most recently synchronized mirrors (--latest).
--latest 5
# Sort the mirrors by synchronization time (--sort).
--sort age
You are sorting by age, there is probably an option for sorting by speed or similar. You are already only choosing from the latest 5 synchronized mirrors, which should be very much up-to-date, so I'd sort by speed.
And IMO, your countries are not that many, maybe increase the list and double --latest
to 10.
In my reflector.conf
, I have --score 5
instead of --latest 5
. I don't know how much this actually improves anything, but surely selecting by score is better than just using the most recently updated mirrors.
Been a while since I mucked with reflector, but you don't seem to be prioritizing faster mirrors whatsoever. Try --sort rate
instead. If that's not fast enough I'd also increase your --latest
up to maybe 15 so that you have higher odds of a fast mirror being in the group of just-updated mirrors.
i believe that is what will be used by reflector if it is enabled/started as a systemd service. but, i think, that'll not be used if you're just calling it on the command-line. in that latter case, i think you must supply (those) command-line switches on ...the command-line. (maybe)
The systemd service is enabled, and when I did actually apply all these in the command line manually too before enabling the service.
ah. now armed with that extra information, i can only profess cluelessness. perhaps a "--verbose" option, well watched, would reveal something (maybe) good luck!
deflector?
A bit off topic:
Normally the mirrors behind the CDN would have decent speeds everywhere, e.g.
- mirror.osbeck.com
- arch.hu.fo
- mirror.sunred.org
These are the top tree mirrors currently on the mirror status and they are all behind cloudflare.
My config is set to: --country US --protocol https --sort rate --age 48 --latest 10. As a result, installations and updates are always very fast for me.
Reflector is broken now because it's hardcoded to test the community.db file, but that file is now just an empy stub as that repo was merged into extra. Reflector is just a python script so you could edit it to replace mention of community.db with extra.db until the devs fix it.