Manjaro Difference between revisions of "Pacman-mirrors"

Difference between revisions of "Pacman-mirrors"

From Manjaro
imported>Fhdk
(moved temporary switch branch to advanced pacman-mirrors page)
imported>Fhdk
(moved section to advanced pacman-mirrors and added -u to pacman command)
Line 39: Line 39:


====Create a mirrorlist====
====Create a mirrorlist====
  sudo pacman-mirrors --fasttrack && sudo pacman -Syy
  sudo pacman-mirrors --fasttrack && sudo pacman -Syyu


====Limit to 5 mirrors====
====Limit to 5 mirrors====
An optional number can be supplied to limit the number of mirrors in the mirrorlist
An optional number can be supplied to limit the number of mirrors in the mirrorlist
  sudo pacman-mirrors --fasttrack 5 && sudo pacman -Syy
  sudo pacman-mirrors --fasttrack 5 && sudo pacman -Syyu


====Mirrors for your country only====
====Mirrors for your country only====
Not all countries have mirrors, if geoip returns a country not in the pool all mirrors will be used.
Not all countries have mirrors, if geoip returns a country not in the pool all mirrors will be used.
  sudo pacman-mirrors --geoip && sudo pacman -Syy
  sudo pacman-mirrors --geoip && sudo pacman -Syyu


===Commands customizing the mirror pool===
===Commands customizing the mirror pool===
Line 55: Line 55:


====Customize mirror pool by countries====
====Customize mirror pool by countries====
  sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syy
  sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syyu


====Customizing mirror pool by interactive selection====
====Customizing mirror pool by interactive selection====
Using the --default will list all available mirrors and procotols
Using the --default will list all available mirrors and procotols
  sudo pacman-mirrors --interactive --default && sudo pacman -Syy
  sudo pacman-mirrors --interactive --default && sudo pacman -Syyu


====Use specific protocols (prioritized)====
====Use specific protocols (prioritized)====
  sudo pacman-mirrors --api --protocol https,http && sudo pacman -Syy
  sudo pacman-mirrors --api --protocol https,http && sudo pacman -Syyu


====Permanently switch to unstable and use German mirrors====
====Permanently switch to unstable and use German mirrors====
  sudo pacman-mirrors --country Germany --api --set-branch unstable && sudo pacman -Syy
  sudo pacman-mirrors --country Germany --api --set-branch unstable && sudo pacman -Syyu


====Permanently switch branch and use German mirrors with https====
====Permanently switch branch and use German mirrors with https====
  sudo pacman-mirrors --country Germany --api --set-branch unstable --protocol https && sudo pacman -Syy
  sudo pacman-mirrors --country Germany --api --set-branch unstable --protocol https && sudo pacman -Syyu


===Reset===
===Reset===
Line 74: Line 74:


====Revert all changes ====
====Revert all changes ====
  sudo pacman-mirrors --country all --api --protocol all -set-branch stable && sudo pacman -Syy
  sudo pacman-mirrors --country all --api --protocol all -set-branch stable && sudo pacman -Syyuu


==Overview==
==Overview==
Line 1,807: Line 1,807:
<div class="mw-collapsible-content">
<div class="mw-collapsible-content">
<pre>
<pre>
~ >>> sudo pacman-mirrors --country Denmark && sudo pacman -Syy                                                                                                             
~ >>> sudo pacman-mirrors --country Denmark && sudo pacman -Syyu                                                                                                       
.: INFO Downloading mirrors from repo.manjaro.org
.: INFO Downloading mirrors from repo.manjaro.org


Line 1,822: Line 1,822:
.: INFO Mirror list generated and saved to: /etc/pacman.d/mirrorlist
.: INFO Mirror list generated and saved to: /etc/pacman.d/mirrorlist
.: INFO To remove custom config run  'sudo pacman-mirrors -c all'
.: INFO To remove custom config run  'sudo pacman-mirrors -c all'
:: Synchronizing package databases...
:: Synkroniserer pakkedatabaser...
  core                                                                                     137,4 KiB  19,2M/s 00:00 [####################################################################] 100%
  core                         143,1 KiB  10,7M/s 00:00 [##############################] 100%
  extra                                                                                   1763,6 KiB  11,5M/s 00:00 [####################################################################] 100%
  extra                       1719,8 KiB  10,3M/s 00:00 [##############################] 100%
  community                                                                                 4,4 MiB  11,2M/s 00:00 [####################################################################] 100%
  community                       4,5 MiB  11,0M/s 00:00 [##############################] 100%
  multilib                                                                                 179,0 KiB  13,4M/s 00:00 [####################################################################] 100%
  multilib                     177,7 KiB  13,3M/s 00:00 [##############################] 100%
:: Starter fuld systemopgradering...
der er intet at udføre
</pre>
</pre>
</div>
</div>
Line 1,909: Line 1,911:
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. This creates a custom mirror pool.
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. This creates a custom mirror pool.


  $ sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syy
  $ sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syyu


If a supplied country does not offer a mirrorserver the app quits with an error explaining why.
If a supplied country does not offer a mirrorserver the app quits with an error explaining why.


  $ sudo pacman-mirrors --country Antarctica && sudo pacman -Syy
  $ sudo pacman-mirrors --country Antarctica && sudo pacman -Syyu
  .: Info Downloading mirrors from repo.manjaro.org
  .: Info Downloading mirrors from repo.manjaro.org
  .: Warning Option '-c/--country' : unknown country: 'Antarctica'
  .: Warning Option '-c/--country' : unknown country: 'Antarctica'
Line 1,925: Line 1,927:


Another option for the mirrors closest to your location is '''--geoip'''
Another option for the mirrors closest to your location is '''--geoip'''
<pre>$ sudo pacman-mirrors --geoip --quiet && sudo pacman -Syy
<pre>$ sudo pacman-mirrors --geoip --quiet && sudo pacman -Syyu
:: Querying servers, this may take some time
:: Querying servers, this may take some time
=> Testing mirrors in France
=> Testing mirrors in France
Line 1,931: Line 1,933:
:: Mirrorlist generated and saved to: /etc/pacman.d/mirrorlist
:: Mirrorlist generated and saved to: /etc/pacman.d/mirrorlist
</pre>
</pre>
=== 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'' branch
Switch branch and syncronize
$ sudo pacman-mirrors --branch testing && sudo pacman -Syy
Install whatever software needed from that branch.
$ sudo pacman -S some-software-package-you-need
After installation switch back and syncronize
$ sudo pacman-mirrors --branch stable && sudo pacman -Syy
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 can safely be ignored and they dissappear when the installed package(s) reaches stable branch


===Customizing the mirror pool===
===Customizing the mirror pool===
Line 1,961: Line 1,946:


'''First option''' is using ''--interactive''. It uses your current mirror pool(wether default or custom)
'''First option''' is using ''--interactive''. It uses your current mirror pool(wether default or custom)
  $ sudo pacman-mirrors --interactive && sudo pacman -Syy
  $ sudo pacman-mirrors --interactive && sudo pacman -Syyu


'''Second option''' is using ''--interactive --default''. This force the use of the official mirror pool
'''Second option''' is using ''--interactive --default''. This force the use of the official mirror pool
  $ sudo pacman-mirrors --interactive --default && sudo pacman -Syy
  $ sudo pacman-mirrors --interactive --default && sudo pacman -Syyu


'''Third option''' is supplying a list of countries with ''--country''
'''Third option''' is supplying a list of countries with ''--country''
  $ sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syy
  $ sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syyu


Using ''Option 1 and 2'', pacman-mirrors will process the available mirrors and present you with a list in which you will select your desired mirrors. ''Option 3'' creates a pool from the supplied countries. In either case the pool is saved and used to generate a mirrorlist.
Using ''Option 1 and 2'', pacman-mirrors will process the available mirrors and present you with a list in which you will select your desired mirrors. ''Option 3'' creates a pool from the supplied countries. In either case the pool is saved and used to generate a mirrorlist.
Line 1,983: Line 1,968:
'''Second option''' to is to use ''--default'' with ''--interactive''
'''Second option''' to is to use ''--default'' with ''--interactive''


  $ sudo pacman-mirrors --interactive --default && sudo pacman -Syy
  $ sudo pacman-mirrors --interactive --default && sudo pacman -Syyu
* You will be presented with a list with all and every mirror and you can pick your selection.
* You will be presented with a list with all and every mirror and you can pick your selection.



Revision as of 10:44, 8 March 2018

Pacman-Mirrors

Pacman-mirrors is a Manjaro specific utility for generating and maintaining the system mirrorlist. This article covers current version 4.7.x. Pacman-mirrors uses the information available on the Mirrorservice

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 and preferably also up-to-date.

Use

For most functions, a working internet connection is required. From v4, Pacman-Mirrors will check if network is online. It is doing so by querying https://manjaro.org.The app is run by an ordinary user with superuser rights from the console and when no arguments are given it will display a usage description as if -h had been given.

$ sudo pacman-mirrors

Exactly how the app generates the mirrorlist is controlled by supplying arguments on the commandline.

IMPORTANT

It cannot be stressed enough, that every run of pacman-mirrors requires you to syncronize your database and update your system

$ sudo pacman -Syyu

If you fail to do so, the issue/s which had you make change might not be solved. Furthermore you might run into partial-updated scenario which can cause havoc in your system. For more detailed information on how pacman works you can read up on the Archlinux Wiki


TL:DR - Samples please

All commands uses the available mirror pool. The mirror pool can be the default full mirror pool or a customized mirror pool. Commands for info do not require superuser - changing systemfiles do.

Commands giving information

List available countries

pacman-mirrors --list

What branch am I on

pacman-mirrors --api --get-branch

Commands using defaults

Create a mirrorlist

sudo pacman-mirrors --fasttrack && sudo pacman -Syyu

Limit to 5 mirrors

An optional number can be supplied to limit the number of mirrors in the mirrorlist

sudo pacman-mirrors --fasttrack 5 && sudo pacman -Syyu

Mirrors for your country only

Not all countries have mirrors, if geoip returns a country not in the pool all mirrors will be used.

sudo pacman-mirrors --geoip && sudo pacman -Syyu

Commands customizing the mirror pool

You can customize the mirror pool to your preference. BUT Don't limit yourself too much as pacman-mirrors only writes up-to-date mirrors to your mirrorlist.

Customize mirror pool by countries

sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syyu

Customizing mirror pool by interactive selection

Using the --default will list all available mirrors and procotols

sudo pacman-mirrors --interactive --default && sudo pacman -Syyu

Use specific protocols (prioritized)

sudo pacman-mirrors --api --protocol https,http && sudo pacman -Syyu

Permanently switch to unstable and use German mirrors

sudo pacman-mirrors --country Germany --api --set-branch unstable && sudo pacman -Syyu

Permanently switch branch and use German mirrors with https

sudo pacman-mirrors --country Germany --api --set-branch unstable --protocol https && sudo pacman -Syyu

Reset

You will come to a point where you want to reset to defaults

Revert all changes

sudo pacman-mirrors --country all --api --protocol all -set-branch stable && sudo pacman -Syyuu

Overview

Available arguments

All available arguments can be viewed by unfolding this block

~ >>> pacman-mirrors -h                                                                  
Version 4.7.1
ANVENDELSE:
 pacman-mirrors [-h] [-f [TAL]] [-i [-d]] [-m METODE]
		[-c LAND [LAND...]] [--geoip] [-l]
		[-b PAKKEGRUPPE | -G | -S/-B PAKKEGRUPPE] [-a] [-p PRÆFIKS]
		[-P PROTOKOL [PROTOKOL...]] [-R] [-U URL]
		[-q] [-t SEKUNDER] [-v] [-n]

METODER:
  -i, --interactive     Opret personlig serverliste
  -f, --fasttrack [TAL]
                        Generate mirrorlist with a number of up-to-date
                        mirrors. Overrides : --geoip, --method
  -c, --country LAND [LAND ...]
                        En liste over lande, adskilt med komma, hvorfra
                        servere vil blive brugt
  --geoip               Brug geolokation for at bruge server i dit land (om
                        muligt)

PAKKEGRUPPE:
  -b, --branch {stable,testing,unstable}
                        PakkeGruppe
  -G, --get-branch      API: Udskriv PakkeGruppe fra konfigurationsfilen
  -S, -B, --set-branch {stable,testing,unstable}
                        API: Erstat PakkeGruppe i konfigurationsfilen

API:
  -a, --api             [-p PRÆFIKS][-R][-S/-B|-G PAKKEGRUPPE][-P PROTOKOL
                        [PROTOKOL ...]]
  -p, --prefix PRÆFIKS  API: Sæt prefix til : $mnt | /mnt/install
  -P, --proto, --protocols {all,http,https,ftp,ftps} [{all,http,https,ftp,ftps} ...]
                        API: Erstat protokoller i konfigurationsfilen
  -R, --re-branch       API: Erstat PakkeGruppe i server listen
  -U, --url URL         API: Erstat server url i serverlisten

DIVERSE:
  -d, --default         INTERACTIVE: Indlæs standard server information
  -h, --help
  -l, --list, --country-list
                        Udskriv alle lande med servere
  -m, --method {rank,random}
                        Oprettelsesmetode
  -q, --quiet           Stilletilstand - færre informationer
  -t, --timeout SEKUNDER
                        Maksimal ventetid for serversvar
  -v, --version         Udskriv versionsnummer
  -n, --no-mirrorlist   Bruges for at holde serverlisten uændret

Files used by pacman-mirrors

File: /etc/pacman-mirrors.conf (sample - can be changed by pacman-mirrors api commands)

To view the content of a default configuration - click the link to the right --->

~ >>> cat /usr/share/pacman-mirrors/mirrors.json                                                                                                                                     
    ##
    ## /etc/pacman-mirrors.conf
    ##

    ## Branch Pacman should use (stable, testing, unstable)
    # Branch = stable

    ## Generation method
    ## 1) rank   - rank mirrors depending on their access time
    ## 2) random - randomly generate the output mirrorlist
    # Method = rank

    ## Define protocols and priority
    ##   separated by comma 'https,http' or 'http,https'
    ## ATM available protocols are: http, https, ftp
    ## Not specifying a protocol will ban the protocol from being used
    ## If a mirror has more than one protocol defined only the first is written to the mirrorlist
    ## Empty means all in reversed alphabetic order
    # Protocols =

    ## When set to False - all certificates are accepted.
    ## Use only if you fully trust all ssl-enabled mirrors.
    # SSLVerify = True

File: /usr/share/pacman-mirrors/pacman-mirrors.json (sample - self updating)

To view the content of a default mirror pool - click the link to the right --->

~ >>> cat /usr/share/pacman-mirrors/mirrors.json                                                                                                                                     
[
  {
    "country": "Australia",
    "url": "http://mirror.ventraip.net.au/Manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Australia",
    "url": "http://manjaro.melbourneitmirror.net/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Australia",
    "url": "http://manjaro.mirror.serversaustralia.com.au/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Austria",
    "url": "http://mirror.inode.at/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Belarus",
    "url": "http://mirror.datacenter.by/pub/mirrors/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Belgium",
    "url": "http://ftp.belnet.be/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Belgium",
    "url": "ftp://ftp.belnet.be/mirrors/manjaro/",
    "protocols": [
      "ftp"
    ]
  },
  {
    "country": "Belgium",
    "url": "https://manjaro.cu.be/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Bulgaria",
    "url": "https://mirrors.netix.net/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Bulgaria",
    "url": "https://manjaro.ipacct.com/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Bulgaria",
    "url": "http://manjaro.telecoms.bg/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Canada",
    "url": "https://osmirror.org/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Chile",
    "url": "http://manjaro.dcc.uchile.cl/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "China",
    "url": "https://mirrors.ustc.edu.cn/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "China",
    "url": "http://mirrors.tuna.tsinghua.edu.cn/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "China",
    "url": "https://mirrors.zju.edu.cn/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Colombia",
    "url": "http://mirror.edatel.net.co/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Costa_Rica",
    "url": "https://mirrors.ucr.ac.cr/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Czech",
    "url": "https://mirror.dkm.cz/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Denmark",
    "url": "https://mirrors.dotsrc.org/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Denmark",
    "url": "https://www.uex.dk/public/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Ecuador",
    "url": "https://mirror.cedia.org.ec/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Ecuador",
    "url": "https://mirror.espoch.edu.ec/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "France",
    "url": "http://mirror.lignux.com/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "France",
    "url": "http://ftp.free.org/mirrors/repo.manjaro.org/repos/",
    "protocols": [
      "ftp",
      "http"
    ]
  },
  {
    "country": "France",
    "url": "https://fr.mirror.babylon.network/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "France",
    "url": "http://kibo.remi.lu/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Germany",
    "url": "http://mirror.ragenetwork.de/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Germany",
    "url": "https://ftp.halifax.rwth-aachen.de/manjaro/",
    "protocols": [
      "ftp",
      "https"
    ]
  },
  {
    "country": "Germany",
    "url": "http://ftp.tu-chemnitz.de/pub/linux/manjaro/",
    "protocols": [
      "ftp",
      "http"
    ]
  },
  {
    "country": "Germany",
    "url": "https://mirror.netzspielplatz.de/manjaro/packages/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Germany",
    "url": "https://mirror.netcologne.de/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Germany",
    "url": "https://repo.rhindon.net/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Germany",
    "url": "https://repo.stdout.net/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Germany",
    "url": "https://mirror.alpix.eu/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Germany",
    "url": "https://manjaro-mirror-a.alpix.eu/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Germany",
    "url": "http://ftp.rz.tu-bs.de/pub/mirror/manjaro.org/repos/",
    "protocols": [
      "ftp",
      "http"
    ]
  },
  {
    "country": "Germany",
    "url": "http://babyname.tips/mirrors/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Hong_Kong",
    "url": "http://ftp.cuhk.edu.hk/pub/Linux/manjaro/",
    "protocols": [
      "ftp",
      "http"
    ]
  },
  {
    "country": "Hungary",
    "url": "http://mirror.infotronik.hu/mirrors/pub/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Indonesia",
    "url": "http://kambing.ui.ac.id/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Indonesia",
    "url": "http://kartolo.sby.datautama.net.id/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Ireland",
    "url": "https://ftp.heanet.ie/mirrors/manjaro/",
    "protocols": [
      "ftp",
      "https"
    ]
  },
  {
    "country": "Italy",
    "url": "https://manjaro.mirror.garr.it/mirrors/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Italy",
    "url": "https://ba.mirror.garr.it/mirrors/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Italy",
    "url": "https://ct.mirror.garr.it/mirrors/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Japan",
    "url": "http://ftp.tsukuba.wide.ad.jp/Linux/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Japan",
    "url": "http://ftp.riken.jp/Linux/manjaro/",
    "protocols": [
      "ftp",
      "http"
    ]
  },
  {
    "country": "Netherlands",
    "url": "https://ftp.nluug.nl/pub/os/Linux/distr/manjaro/",
    "protocols": [
      "ftp",
      "https"
    ]
  },
  {
    "country": "Netherlands",
    "url": "http://ftp.snt.utwente.nl/pub/linux/manjaro/",
    "protocols": [
      "ftp",
      "http"
    ]
  },
  {
    "country": "Netherlands",
    "url": "https://nl.mirror.babylon.network/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Netherlands",
    "url": "https://manjaro.mirror.wearetriple.com/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Netherlands",
    "url": "https://mirror.koddos.net/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Philippines",
    "url": "http://mirror.rise.ph/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Portugal",
    "url": "http://ftp.dei.uc.pt/pub/linux/manjaro/",
    "protocols": [
      "ftp",
      "http"
    ]
  },
  {
    "country": "Portugal",
    "url": "http://manjaro.barata.pt/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Romania",
    "url": "http://mirrors.serverhost.ro/manjaro/packages/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Romania",
    "url": "http://ftp.lug.ro/manjaro/",
    "protocols": [
      "ftp",
      "http"
    ]
  },
  {
    "country": "Russia",
    "url": "https://mirror.yandex.ru/mirrors/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Russia",
    "url": "http://mirror.truenetwork.ru/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Singapore",
    "url": "https://download.nus.edu.sg/mirror/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "South_Africa",
    "url": "http://mirror.is.co.za/mirrors/manjaro.org/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Sweden",
    "url": "https://ftp.lysator.liu.se/pub/manjaro/",
    "protocols": [
      "ftp",
      "https"
    ]
  },
  {
    "country": "Spain",
    "url": "http://ftp.caliu.cat/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Sweden",
    "url": "https://mirror.zetup.net/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "Taiwan",
    "url": "http://free.nchc.org.tw/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "Turkey",
    "url": "http://ftp.linux.org.tr/manjaro/",
    "protocols": [
      "ftp",
      "http"
    ]
  },
  {
    "country": "United_Kingdom",
    "url": "http://mirror.catn.com/pub/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "United_Kingdom",
    "url": "http://repo.manjaro.org.uk/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "United_Kingdom",
    "url": "https://www.mirrorservice.org/sites/repo.manjaro.org/repos/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "United_Kingdom",
    "url": "http://manjaro.mirrors.uk2.net/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "United_States",
    "url": "http://mirror.dacentec.com/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "United_States",
    "url": "http://mirror.solarvps.com/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "United_States",
    "url": "http://distro.ibiblio.org/manjaro/",
    "protocols": [
      "http"
    ]
  },
  {
    "country": "United_States",
    "url": "https://mirror.clarkson.edu/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "United_States",
    "url": "https://mirrors.ocf.berkeley.edu/manjaro/",
    "protocols": [
      "https"
    ]
  },
  {
    "country": "United_States",
    "url": "https://mirror.math.princeton.edu/pub/manjaro/",
    "protocols": [
      "https"
    ]
  }
]

File: /var/lib/pacman-mirrors/status.json (sample - self updating)

To view the content of a default mirror pool including mirror status - click the link to the right --->

~/Desktop >>> cat /var/lib/pacman-mirrors/status.json                                                                                                                                
[
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Australia",
    "last_sync": "21:08",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.ventraip.net.au/Manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Australia",
    "last_sync": "01:08",
    "protocols": [
      "http"
    ],
    "url": "http://manjaro.melbourneitmirror.net/"
  },
  {
    "branches": [
      0,
      0,
      0
    ],
    "country": "Australia",
    "last_sync": "194:40",
    "protocols": [
      "http"
    ],
    "url": "http://manjaro.mirror.serversaustralia.com.au/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Austria",
    "last_sync": "06:18",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.inode.at/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Belarus",
    "last_sync": "06:18",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.datacenter.by/pub/mirrors/manjaro/"
  },
  {
    "branches": [
      -1,
      -1,
      -1
    ],
    "country": "Belgium",
    "last_sync": -1,
    "protocols": [
      "http"
    ],
    "url": "http://ftp.belnet.be/manjaro/"
  },
  {
    "branches": [
      0,
      0,
      0
    ],
    "country": "Belgium",
    "last_sync": "138:19",
    "protocols": [
      "ftp"
    ],
    "url": "ftp://ftp.belnet.be/mirrors/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Belgium",
    "last_sync": "06:19",
    "protocols": [
      "https"
    ],
    "url": "https://manjaro.cu.be/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Bulgaria",
    "last_sync": "00:49",
    "protocols": [
      "https"
    ],
    "url": "https://mirrors.netix.net/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Bulgaria",
    "last_sync": "00:19",
    "protocols": [
      "https"
    ],
    "url": "https://manjaro.ipacct.com/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Bulgaria",
    "last_sync": "02:39",
    "protocols": [
      "http"
    ],
    "url": "http://manjaro.telecoms.bg/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Canada",
    "last_sync": "00:59",
    "protocols": [
      "https"
    ],
    "url": "https://osmirror.org/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Chile",
    "last_sync": "00:49",
    "protocols": [
      "http"
    ],
    "url": "http://manjaro.dcc.uchile.cl/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "China",
    "last_sync": "05:09",
    "protocols": [
      "https"
    ],
    "url": "https://mirrors.ustc.edu.cn/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "China",
    "last_sync": "05:09",
    "protocols": [
      "http"
    ],
    "url": "http://mirrors.tuna.tsinghua.edu.cn/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "China",
    "last_sync": "05:09",
    "protocols": [
      "https"
    ],
    "url": "https://mirrors.zju.edu.cn/manjaro/"
  },
  {
    "branches": [
      0,
      0,
      0
    ],
    "country": "Colombia",
    "last_sync": "2163:33",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.edatel.net.co/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Costa_Rica",
    "last_sync": "03:39",
    "protocols": [
      "https"
    ],
    "url": "https://mirrors.ucr.ac.cr/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Czech",
    "last_sync": "06:19",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.dkm.cz/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Denmark",
    "last_sync": "00:59",
    "protocols": [
      "https"
    ],
    "url": "https://mirrors.dotsrc.org/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Denmark",
    "last_sync": "00:09",
    "protocols": [
      "https"
    ],
    "url": "https://www.uex.dk/public/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Ecuador",
    "last_sync": "02:49",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.cedia.org.ec/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Ecuador",
    "last_sync": "01:29",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.espoch.edu.ec/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "France",
    "last_sync": "01:39",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.lignux.com/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "France",
    "last_sync": "04:59",
    "protocols": [
      "ftp",
      "http"
    ],
    "url": "http://ftp.free.org/mirrors/repo.manjaro.org/repos/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "France",
    "last_sync": "00:49",
    "protocols": [
      "https"
    ],
    "url": "https://fr.mirror.babylon.network/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "France",
    "last_sync": "00:19",
    "protocols": [
      "http"
    ],
    "url": "http://kibo.remi.lu/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Germany",
    "last_sync": "00:49",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.ragenetwork.de/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Germany",
    "last_sync": "00:19",
    "protocols": [
      "ftp",
      "https"
    ],
    "url": "https://ftp.halifax.rwth-aachen.de/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Germany",
    "last_sync": "04:59",
    "protocols": [
      "ftp",
      "http"
    ],
    "url": "http://ftp.tu-chemnitz.de/pub/linux/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Germany",
    "last_sync": "00:09",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.netzspielplatz.de/manjaro/packages/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Germany",
    "last_sync": "05:19",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.netcologne.de/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Germany",
    "last_sync": "06:40",
    "protocols": [
      "https"
    ],
    "url": "https://repo.rhindon.net/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Germany",
    "last_sync": "00:09",
    "protocols": [
      "https"
    ],
    "url": "https://repo.stdout.net/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Germany",
    "last_sync": "00:09",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.alpix.eu/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Germany",
    "last_sync": "00:09",
    "protocols": [
      "https"
    ],
    "url": "https://manjaro-mirror-a.alpix.eu/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Germany",
    "last_sync": "06:50",
    "protocols": [
      "ftp",
      "http"
    ],
    "url": "http://ftp.rz.tu-bs.de/pub/mirror/manjaro.org/repos/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Germany",
    "last_sync": "18:20",
    "protocols": [
      "http"
    ],
    "url": "http://babyname.tips/mirrors/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Hong_Kong",
    "last_sync": "09:10",
    "protocols": [
      "ftp",
      "http"
    ],
    "url": "http://ftp.cuhk.edu.hk/pub/Linux/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Hungary",
    "last_sync": "06:20",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.infotronik.hu/mirrors/pub/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Indonesia",
    "last_sync": "20:20",
    "protocols": [
      "http"
    ],
    "url": "http://kambing.ui.ac.id/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Indonesia",
    "last_sync": "03:00",
    "protocols": [
      "http"
    ],
    "url": "http://kartolo.sby.datautama.net.id/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Ireland",
    "last_sync": "05:40",
    "protocols": [
      "ftp",
      "https"
    ],
    "url": "https://ftp.heanet.ie/mirrors/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Italy",
    "last_sync": "10:00",
    "protocols": [
      "https"
    ],
    "url": "https://manjaro.mirror.garr.it/mirrors/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Italy",
    "last_sync": "10:00",
    "protocols": [
      "https"
    ],
    "url": "https://ba.mirror.garr.it/mirrors/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Italy",
    "last_sync": "10:00",
    "protocols": [
      "https"
    ],
    "url": "https://ct.mirror.garr.it/mirrors/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Japan",
    "last_sync": "01:10",
    "protocols": [
      "http"
    ],
    "url": "http://ftp.tsukuba.wide.ad.jp/Linux/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Japan",
    "last_sync": "12:20",
    "protocols": [
      "ftp",
      "http"
    ],
    "url": "http://ftp.riken.jp/Linux/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Netherlands",
    "last_sync": "04:40",
    "protocols": [
      "ftp",
      "https"
    ],
    "url": "https://ftp.nluug.nl/pub/os/Linux/distr/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Netherlands",
    "last_sync": "06:20",
    "protocols": [
      "ftp",
      "http"
    ],
    "url": "http://ftp.snt.utwente.nl/pub/linux/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Netherlands",
    "last_sync": "00:50",
    "protocols": [
      "https"
    ],
    "url": "https://nl.mirror.babylon.network/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Netherlands",
    "last_sync": "04:50",
    "protocols": [
      "https"
    ],
    "url": "https://manjaro.mirror.wearetriple.com/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Netherlands",
    "last_sync": "04:40",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.koddos.net/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Philippines",
    "last_sync": "05:10",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.rise.ph/manjaro/"
  },
  {
    "branches": [
      0,
      0,
      0
    ],
    "country": "Portugal",
    "last_sync": "271:12",
    "protocols": [
      "ftp",
      "http"
    ],
    "url": "http://ftp.dei.uc.pt/pub/linux/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Portugal",
    "last_sync": "00:40",
    "protocols": [
      "http"
    ],
    "url": "http://manjaro.barata.pt/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Romania",
    "last_sync": "12:20",
    "protocols": [
      "http"
    ],
    "url": "http://mirrors.serverhost.ro/manjaro/packages/"
  },
  {
    "branches": [
      -1,
      -1,
      -1
    ],
    "country": "Romania",
    "last_sync": -1,
    "protocols": [
      "ftp",
      "http"
    ],
    "url": "http://ftp.lug.ro/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Russia",
    "last_sync": "03:00",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.yandex.ru/mirrors/manjaro/"
  },
  {
    "branches": [
      0,
      0,
      0
    ],
    "country": "Russia",
    "last_sync": "126:11",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.truenetwork.ru/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Singapore",
    "last_sync": "13:10",
    "protocols": [
      "https"
    ],
    "url": "https://download.nus.edu.sg/mirror/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "South_Africa",
    "last_sync": "03:10",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.is.co.za/mirrors/manjaro.org/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Sweden",
    "last_sync": "00:40",
    "protocols": [
      "ftp",
      "https"
    ],
    "url": "https://ftp.lysator.liu.se/pub/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Spain",
    "last_sync": "04:00",
    "protocols": [
      "http"
    ],
    "url": "http://ftp.caliu.cat/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Sweden",
    "last_sync": "02:40",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.zetup.net/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Taiwan",
    "last_sync": "04:00",
    "protocols": [
      "http"
    ],
    "url": "http://free.nchc.org.tw/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "Turkey",
    "last_sync": "06:20",
    "protocols": [
      "ftp",
      "http"
    ],
    "url": "http://ftp.linux.org.tr/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "United_Kingdom",
    "last_sync": "01:10",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.catn.com/pub/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "United_Kingdom",
    "last_sync": "00:40",
    "protocols": [
      "http"
    ],
    "url": "http://repo.manjaro.org.uk/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "United_Kingdom",
    "last_sync": "05:20",
    "protocols": [
      "https"
    ],
    "url": "https://www.mirrorservice.org/sites/repo.manjaro.org/repos/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "United_Kingdom",
    "last_sync": "00:50",
    "protocols": [
      "http"
    ],
    "url": "http://manjaro.mirrors.uk2.net/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "United_States",
    "last_sync": "00:30",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.dacentec.com/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "United_States",
    "last_sync": "06:21",
    "protocols": [
      "http"
    ],
    "url": "http://mirror.solarvps.com/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "United_States",
    "last_sync": "00:11",
    "protocols": [
      "http"
    ],
    "url": "http://distro.ibiblio.org/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "United_States",
    "last_sync": "01:51",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.clarkson.edu/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      0
    ],
    "country": "United_States",
    "last_sync": "01:51",
    "protocols": [
      "https"
    ],
    "url": "https://mirrors.ocf.berkeley.edu/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "United_States",
    "last_sync": "00:41",
    "protocols": [
      "https"
    ],
    "url": "https://mirror.math.princeton.edu/pub/manjaro/"
  }
]
<pre>
</div>
</div>

====File: <code>/etc/pacman-mirrors.conf</code> <small>(sample of default config)</small>====

<div class="toccolours mw-collapsible mw-collapsed">
To view the content of a default pacman-mirrors.conf - click the link to the right --->
<div class="mw-collapsible-content">
<pre>
~ >>> cat /etc/pacman-mirrors.conf                                                                                                                                                   
##
## /etc/pacman-mirrors.conf
##

## Branch Pacman should use (stable, testing, unstable)
# Branch = stable

## Generation method
## 1) rank   - rank mirrors depending on their access time
## 2) random - randomly generate the output mirrorlist
# Method = rank

## Define protocols and priority
##   separated by comma 'https,http' or 'http,https'
## ATM available protocols are: http, https, ftp
## Not specifying a protocol will ban the protocol from being used
## If a mirror has more than one protocol defined only the first is written to the mirrorlist
## Empty means all in reversed alphabetic order
# Protocols = 

## Get a list of all available counties with 'pacman-mirrors -l'
## Value can be 'Custom' or nothing which means all
# OnlyCountry = 

## When set to False - all certificates are accepted.
## Use only if you fully trust all ssl-enabled mirrors.
# SSLVerify = True

Sample command to customize mirror pool

To view the content of the sample command - click the link to the right --->

~ >>> sudo pacman-mirrors --country Denmark && sudo pacman -Syyu                                                                                                         
.: INFO Downloading mirrors from repo.manjaro.org

.: INFO User generated mirror list
--------------------------
.: INFO Custom mirror file saved: /var/lib/pacman-mirrors/custom-mirrors.json
.: INFO Using custom mirror file
.: INFO Querying mirrors - This may take some time
   0.091 Denmark        : https://mirrors.dotsrc.org/manjaro/
   0.075 Denmark        : https://www.uex.dk/public/manjaro/
.: INFO Writing mirror list
   Denmark         : https://www.uex.dk/public/manjaro/unstable/$repo/$arch
   Denmark         : https://mirrors.dotsrc.org/manjaro/unstable/$repo/$arch
.: INFO Mirror list generated and saved to: /etc/pacman.d/mirrorlist
.: INFO To remove custom config run  'sudo pacman-mirrors -c all'
:: Synkroniserer pakkedatabaser...
 core                          143,1 KiB  10,7M/s 00:00 [##############################] 100%
 extra                        1719,8 KiB  10,3M/s 00:00 [##############################] 100%
 community                       4,5 MiB  11,0M/s 00:00 [##############################] 100%
 multilib                      177,7 KiB  13,3M/s 00:00 [##############################] 100%
:: Starter fuld systemopgradering...
 der er intet at udføre

File: /etc/pacman.d/mirrorlist (sample)

To view the content of the sample mirrorlist - click the link to the right --->

~ >>> cat /etc/pacman.d/mirrorlist                                                                                                                                                   
##
## Manjaro Linux custom mirrorlist
## Generated on 2017-11-08 10:59
##
## Please use 'pacman-mirrors -id' to reset custom mirrorlist
## Please use 'pacman-mirrors -c all' to reset custom mirrorlist
## To remove custom config run  'pacman-mirrors -c all'
##

## Country : Denmark
Server = https://www.uex.dk/public/manjaro/unstable/$repo/$arch

## Country : Denmark
Server = https://mirrors.dotsrc.org/manjaro/unstable/$repo/$arch

File: /var/lib/pacman-mirrors/custom-mirrors.json (sample)

To view the content of a custom mirror pool - click the link to the right --->

~ >>> cat /var/lib/pacman-mirrors/custom-mirrors.json                                                                                                                                
[
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Denmark",
    "last_sync": "00:59",
    "protocols": [
      "https"
    ],
    "resp_time": "00.00",
    "url": "https://mirrors.dotsrc.org/manjaro/"
  },
  {
    "branches": [
      1,
      1,
      1
    ],
    "country": "Denmark",
    "last_sync": "00:09",
    "protocols": [
      "https"
    ],
    "resp_time": "00.00",
    "url": "https://www.uex.dk/public/manjaro/"
  }
]

Defaults

PacmanMirrors has some reasonable defaults

- Ranking mirrors with the fastest mirrors on top
- Using stable branch
- Using all mirrors

The -f or --fasttrack argument uses mirrors which are up-to-date for your branch. Optionally you can supply a number e.g. 10

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. This creates a custom mirror pool.

$ sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syyu

If a supplied country does not offer a mirrorserver the app quits with an error explaining why.

$ sudo pacman-mirrors --country Antarctica && sudo pacman -Syyu
.: Info Downloading mirrors from repo.manjaro.org
.: Warning Option '-c/--country' : unknown country: 'Antarctica'
.: Info Available countries are:
Australia, Austria, Belarus, Belgium, Brasil, Bulgaria, Canada, Chile, China, Colombia,
Costa_Rica, Czech, Denmark, Ecuador, France, Germany, Greece, Hungary, Indonesia,
Ireland, Italy, Japan, Netherlands, Philippines, Poland, Portugal, Romania, Russia,
Singapore, South_Africa, Sweden, Spain, Taiwan, Turkey, United_Kingdom, United_States,
Vietnam


Another option for the mirrors closest to your location is --geoip

$ sudo pacman-mirrors --geoip --quiet && sudo pacman -Syyu
:: Querying servers, this may take some time
=> Testing mirrors in France
:: Writing mirror list
:: Mirrorlist generated and saved to: /etc/pacman.d/mirrorlist

Customizing the mirror pool

If you, for various reasons, have a preference for specific mirrors, it is possible to create a personal mirror pool. This is done by supplying --interactive [--default] or --country argument.

A more in-depth article is Create your own Custom Mirrorlist

A word of caution

Don't limit yourself too much. Pacman-mirrors will only use up-to-date mirrors in the final mirrorlist.

Customizing pool

The customized pool is saved as /var/lib/pacman-mirrors/custom-mirrors.json

First option is using --interactive. It uses your current mirror pool(wether default or custom)

$ sudo pacman-mirrors --interactive && sudo pacman -Syyu

Second option is using --interactive --default. This force the use of the official mirror pool

$ sudo pacman-mirrors --interactive --default && sudo pacman -Syyu

Third option is supplying a list of countries with --country

$ sudo pacman-mirrors --country Germany,France,Austria && sudo pacman -Syyu

Using Option 1 and 2, pacman-mirrors will process the available mirrors and present you with a list in which you will select your desired mirrors. Option 3 creates a pool from the supplied countries. In either case the pool is saved and used to generate a mirrorlist.

Syncronization status

Pacman-mirrors downloads pool status for the default mirror pool. When you want to regenerate your mirrorlist, your custom pool is updated with the info from the downloaded pool status.

This ensures you will always use up-to-date mirrors.

Resetting custom pool

First option to reset is to default mirror pool

$ sudo pacman-mirrors --country all && sudo pacman -Syy

Second option to is to use --default with --interactive

$ sudo pacman-mirrors --interactive --default && sudo pacman -Syyu
  • You will be presented with a list with all and every mirror and you can pick your selection.

Third option is to supply a list of countries

 $ sudo pacman-mirrors --country Germany,France,Austria
  • If you supply the same preferred countries on every reset you will get your mirror pool updated with added or removed mirrors.

FAQ

pacman-mirrors.conf

If pacman-mirrors is updated and has a new pacman-mirrors.conf, it will inform you that a new conf is saved as pacman-mirrors.conf.pacnew.

You must manually merge changes/additions into your pacman-mirrors.conf.

Forum posts

Cookies help us deliver our services. By using our services, you agree to our use of cookies.