What are mirrors and why are they important?
Mirrors are the package servers we use when installing or updating packages. There are lots of mirrors (for Arch) around the world, and to keep package updates running smoothly, the mirrors should be both:
- fast (high data rate and responsiveness)
- up to date
On an EndeavourOS system, Arch mirror addresses are gathered as a list into file /etc/pacman.d/mirrorlist.
Usually (but not always) the closest mirrors are the fastest. That’s why we usually want to use mirrors from the user’s current location (country) or some nearby countries.
Another important factor is that the mirrors we use are up to date, meaning they have been synced with the master Arch package server recently. Better to use a mirror that has the latest Arch packages.
Yet another (temporary) concern may be that a particular mirror is offline, e.g. under maintenance. Sometimes a mirror may even be permanently offline.
That’s why having a decent list of mirrors on your machine is important.
Note that the list of mirror can (and usually should) be ranked to get the best experience when updating or installing packages. Ranking mirrors organizes the list of mirrors so that the best mirrors for your location are in the beginning of the list.
What about EndeavourOS mirrors?
EndeavourOS has its own packages as well, thus EndeavourOS has its own list of mirrors. EndeavourOS mirror list is in file /etc/pacman.d/endeavouros-mirrorlist.
EndeavourOS mirrors can be ranked with a terminal command (note: call without sudo!)
It fetches the latest EndeavourOS mirrorlist from the EndeavourOS development site, and ranks the mirrors found in that list. Then it shows you the ranking result, and prepares to write the ranked list to file /etc/pacman.d/endeavouros-mirrorlist. For writing the file it needs elevated privileges, and asks you the required password.
By default, eos-rankmirrors uses the
pkexec command when more privileges are needed. If you have configured variable
EOS_ROOTER (in file /etc/eos-script-lib-yad.conf), that command will be used instead of the default.
What applications should I use for managing Arch mirrors?
EndeavourOS has two “mirror ranking” applications:
reflector-simple. You may use either one of them, or both of them. Both of these applications are built on top of the
reflector application (that ranks Arch mirrors).
Reflector-simple (a GUI app) is an easy to use “one-timer” selector of mirrors. It writes the list of mirrors you selected into the /etc/pacman.d/mirrorlist. Reflector-simple is informative as it shows right away what it is capable of doing. I recommend starting with this application and get the idea of the selections that would be the most sensible in your case.
Reflector-auto is meant for automatic and weekly update of /etc/pacman.d/mirrorlist. Reflector-auto is best to use with a configuration file at /etc/reflector-auto.conf. That file can contain
reflector options, and it is mainly useful for pre-selecting
- mirror countries
- protocols to use
- latest mirror sync time with the master
so that when reflector-auto is running, it knows what to do. Reflector-auto has some small learning curve since it (to be the most useful) needs a configuration file with proper reflector options.
under the EndeavourOS wiki.