Pacman-mirrors
Manjaro PacmanMirrors
A utility for generating and maintaining the systems mirrorlist.
Purpose
Manjaro uses pacman for system maintenance, updates and new installs. For pacman to function, a list of servers, or more commonly known as mirrors, with Manjaro software packages is required. As Manjaro has many mirrors all over the world it is feasible to use the mirrors closest to your location.
Use
The app is run by an ordinary user with superuser rights from the console
$ sudo pacman-mirrors
Exactly how the app generates the mirrorlist is controlled by supplying arguments on the commandline. The available arguments is shown when the argument -h
is given.
Important
After every change to your mirrorlist it is mandatory to run an update on your pacman database
$ sudo pacman -Sy
If you fail to do so, the issue/s which had you make change might not be solved.
Available arguments
-h, --help show this help message and exit
-g, --generate Generate mirrorlist
-m, --method {rank,random}
Generation method
-b, --branch {stable,testing,unstable}
Branch name
-c, --country COUNTRY
Comma separated list of countries,
from which mirrors will be used
--geoip Get current country using geolocation.
Ignored if '-c/--country' is supplied
-d, --mirror_dir PATH
Mirrors list path
-o, --output FILE Output file
-t, --timeout SECONDS
Maximum waiting time for server response
--no-update Don't generate mirrorlist if
'NoUpdate = True' in the configuration file
-i, --interactive Generate custom mirrorlist
-v, --version Print the pacman-mirrors version
-q, --quiet Quiet mode - less verbose output
Defaults
PacmanMirrors has some reasonable defaults
- Ranking mirrors with the fastest mirrors on top - Using stable branch - Using all mirrors
Country
Instead of pacman-mirrors probing all mirrors in all countries it is possible to supply a list of countries from which to use the mirrors.
sudo pacman-mirrors --generate --country Germany,France,Austria
If a supplied country does not offer a mirrorserver the app quits with an error explaining why.
$ sudo pacman-mirrors --generate --country Antarctica usage: pacman-mirrors [-h] [-g] [-m {rank,random}] [-b {stable,testing,unstable}] [-c COUNTRY] [--geoip] [-d PATH] [-o FILE] [-t SECONDS] [--no-update] [-i] [-v] [-q] pacman-mirrors: error: Option '-c/--country' unknown country: 'Antarctica'. Available countries are: Africa, Australia, Austria, Belarus, Belgium, Brasil, Bulgaria, Canada, Chile, China, Colombia, Costa_Rica, Czech, Denmark, Ecuador, France, Germany, Greece, Indonesia, Ireland, Italy, Japan, Netherlands, Philippines, Poland, Portugal, Romania, Russia, Singapore, Sweden, Taiwan, Turkey, United_Kingdom, United_States, Vietnam
Another option for the mirrors closest to you location is --geoip
$ sudo pacman-mirrors --geoip --quiet :: Querying servers, this may take some time => Testing mirrors in France :: Writing mirror list :: Mirrorlist generated and saved to: /etc/pacman.d/mirrorlist
Branch
Situations could exist, in which you want a not yet released to stable software, which contains a desired improvement or bugfix. For such situations it is possible to make a temporary switch to testing
or unstable</unstable> branch
$ sudo pacman-mirrors --generate --branch testing
Syncronize your pacman database with the new mirror/branch combination and install whatever software needed from that branch.
$ sudo pacman -Sy some-software-package-you-need
After installation switch back
$ sudo pacman-mirrors --generate --branch stable
Syncronize
$ sudo pacman -Sy
In such a situation where you have pulled software from another branch you must be prepared for messages from pacman or pamac about newer packages on the system. These messages dissappear when the installed package(s) reach stable branch
Your personal mirrorlist
If you, for various reasons, have a preference for specific mirrors, it is possible to create a personal mirrorlist. This is done by supplying the --interactive
argument.
$ sudo pacman-mirrors --interactive
Pacman-mirrors will process the available mirrors and present you with a list in which you will select your desired mirrors.
The resulting list will be saved to the system and used each time you run pacman-mirrors.