The mirrorselect program provides a nice interface to set the GENTOO_MIRRORS variable and the Gentoo rsync mirror.
emerge --ask app-portage/mirrorselect
Select the Gentoo source mirror(s)
Interactively find Gentoo source mirrors (and set or update the GENTOO_MIRRORS variable):
* Modifying /etc/portage/make.conf with new mirrors... Reading make.conf Moving to /etc/portage/make.conf.backup Writing new /etc/portage/make.conf * Done.
Notice that a backup copy of /etc/portage/make.conf will be created by mirrorselect before updating it.
Users can also specify a country (United States of America, for example):
mirrorselect -i -c USA
The following command finds the 3 fastest servers by downloading 100K from each; it will use all available mirrors in the list:
mirrorselect -s3 -b10 -D
Please consider using one of these additional options to limit the available mirrors in the list it tests.
Server type selection:
-c COUNTRY, -country COUNTRY only use mirrors from the specified country NOTE: Names with a space must be quoted eg.: -c 'South Korea' -F, --ftp ftp only mode. Will not consider hosts of other types. -H, --http http only mode. Will not consider hosts of other types -r, --rsync rsync mode. Allows you to interactively select your rsync mirror. Requires -i or -a to be used. -R REGION, -region REGION only use mirrors from the specified region NOTE: Names with a space must be quoted eg.: -R 'North America' -4, --ipv4 only use IPv4 -6, --ipv6 only use IPv6
Select the Gentoo rsync mirror
TODO: These instructions will only work if sync-uri is not already set in /etc/portage/repos.conf/gentoo.conf, otherwise it will simply add duplicate entries.
Gentoo documentation states:
Gentoo is hosted by many mirrors around the globe. Selecting a mirror that is geographically near may help speed up repository syncs.
The default configuration of the Gentoo repository comes from sys-apps/portage and is located at /usr/share/portage/config/repos.conf. However settings in /etc/portage/repos.conf override it.
mirrorselect will not create the /etc/portage/repos.conf/gentoo.conf file automatically. If that file does not exist, mirrorselect will default to using the old make.conf SYNC variable which has been deprecated. In order to avoid this make sure Portage is up to date and copy the repos.conf file from Portage's /usr (library) location to the /etc (configuration) location:
emerge --ask --update sys-apps/portage
cp /usr/share/portage/config/repos.conf /etc/portage/repos.conf/gentoo.conf
For additional repos.conf documentation and configuration please refer to Portage/Sync#Portage_configuration
Then find a Gentoo rsync mirror with mirrorselect (make sure to use
sync-type = rsync):
mirrorselect -i -r -o >> /etc/portage/repos.conf/gentoo.conf
Just navigate to the mirrors of choice and press Space to select one (or more) mirrors.
In case of problems with rsync mirror it might help to check the mirrorstats.