How to Enable Parallel Downloads in `pacman` on Arch Linux

How to Enable Parallel Downloads in pacman on Arch Linux

Arch Linux is known for its simplicity, flexibility, and bleeding-edge packages. One of the key tools in the Arch Linux ecosystem is pacman, the package manager that handles installing, updating, and removing software packages. pacman is both powerful and fast, but like many tools in the Linux world, it offers features that aren’t enabled by default—parallel downloads being one of them.

Parallel downloads allow pacman to fetch multiple packages at once, significantly reducing the time it takes to update or install large numbers of packages. This feature became officially available in pacman version 6.0 and above. In this article, we will walk through what parallel downloads are, the benefits they offer, and how to safely enable and configure them on your Arch Linux system.


Understanding Parallel Downloads

Traditionally, pacman downloads packages one at a time. This is simple and reliable, but not always the fastest method, especially on high-bandwidth connections. With parallel downloads enabled, pacman can fetch multiple packages simultaneously, making more efficient use of available network resources.

This improvement is particularly noticeable when:

  • Performing a full system upgrade (pacman -Syu)
  • Installing large packages with many dependencies
  • Reinstalling the base system or setting up new installations

While parallel downloads speed up the process, they do slightly increase the complexity of the downloading process, which is why it was not enabled by default in earlier versions of pacman.


Prerequisites

Before enabling parallel downloads, make sure your system meets the following requirements:

1. Updated System

Ensure your system is fully updated and that pacman is version 6.0 or newer. You can check the version with:

pacman -V

You should see output like:

Pacman v6.0.2 - libalpm v13.0.2

If you’re running an older version, run:

sudo pacman -Syu

2. Administrative Access

Editing pacman’s configuration file requires root privileges. You’ll need to use sudo or switch to the root user.


How to Enable Parallel Downloads in pacman

Enabling parallel downloads in pacman is straightforward and involves modifying a single configuration file: /etc/pacman.conf.

Step 1: Backup the Configuration File

Before making changes, it’s always wise to back up the original configuration:

sudo cp /etc/pacman.conf /etc/pacman.conf.bak

This allows you to restore the original settings if something goes wrong.

Step 2: Edit pacman.conf

Open the configuration file with a text editor of your choice. For example, using nano:

sudo nano /etc/pacman.conf

Step 3: Find the ParallelDownloads Option

Scroll through the file and look for the following line (it might be commented out):

#ParallelDownloads = 5

Uncomment this line by removing the # and optionally change the value:

ParallelDownloads = 5

The number 5 specifies how many downloads can occur simultaneously. You can adjust this number depending on your internet connection and system resources.

💡 Tip: A good starting value is between 3 and 5. Higher numbers may improve speed on fast connections but could cause issues on slower networks or systems with limited resources.

Step 4: Save and Exit

  • In nano, press Ctrl+O to save, then Ctrl+X to exit.
  • In vim, press Esc, then type :wq and press Enter.

Verifying the Change

To confirm that parallel downloads are working, perform a system upgrade:

sudo pacman -Syu

You should see multiple package downloads occurring at the same time in the terminal.

For example:

downloading core/package1-1.0-1-x86_64.pkg.tar.zst...
downloading core/package2-1.0-1-x86_64.pkg.tar.zst...
downloading extra/package3-1.0-1-x86_64.pkg.tar.zst...

If downloads are still occurring sequentially, double-check that the ParallelDownloads option is uncommented and correctly set.


Tuning for Best Performance

Here are some tips to optimize the parallel downloads feature:

1. Adjust the Number of Parallel Downloads

Test different values to see what gives the best results. For fast broadband connections, increasing to 8 or even 10 may be beneficial. For slower connections, stick to 3–5.

2. Enable a Faster Mirror List

Even with parallel downloads enabled, slow mirrors can bottleneck performance. Use the reflector tool to automatically select the fastest mirrors:

sudo pacman -S reflector
sudo reflector --country YOUR_COUNTRY --latest 10 --sort rate --save /etc/pacman.d/mirrorlist

Replace YOUR_COUNTRY with your actual country to get geographically closer mirrors.

3. Use aria2 with AUR Helpers (Optional)

Some AUR helpers like yay or paru support using aria2, a multi-threaded download utility, for even faster downloads. This is separate from pacman but worth considering if you use the AUR frequently.


Safety Considerations

While enabling parallel downloads is generally safe, there are a few things to keep in mind:

  • Increased load on mirrors: More simultaneous connections can put additional strain on package mirrors, especially if many users are doing the same.
  • More disk activity: Parallel downloads may cause higher disk I/O during the fetch phase.
  • Potential for partial downloads: Though rare, simultaneous downloads increase the risk of corruption if the system crashes or loses connection during download. pacman will generally detect and fix this on the next run.

To mitigate these risks:

  • Avoid excessively high ParallelDownloads values (keep it under 10 unless you have a very fast system and connection).
  • Keep an eye on disk space and usage, especially on SSDs.
  • Periodically clean the package cache with:
sudo paccache -r

Or, to remove all unused cached packages:

sudo pacman -Sc

Disabling Parallel Downloads (If Needed)

If you run into problems or prefer the old behavior, you can easily disable parallel downloads by commenting the setting again:

#ParallelDownloads = 5

Then save and exit the configuration file.


Conclusion

Enabling parallel downloads in pacman is a simple but powerful way to improve your package management experience on Arch Linux. With just a small tweak in the pacman.conf file, you can speed up system updates and package installations, making better use of your bandwidth and time.

For most users, enabling 3–5 parallel downloads is safe and provides noticeable improvements. As with many things in Arch, you’re in full control—tune the setting to suit your hardware and network conditions.

Whether you’re a seasoned Arch user or just diving in, this is one of those tweaks that brings a small but meaningful boost to your daily workflow.


Additional Resources

If you have any questions or want to share your results after enabling parallel downloads, feel free to engage with the Arch Linux community on the forums or Reddit.