So what is Arch Linux really?

Package Management

You will come into contact with the Arch package manager Pacman as soon as you start installing Arch. Pacman has an important role in Arch's rolling-release design. Like other Linux package installers, Pacman works primarily from the command line, but Pacman also supports graphical front ends such as Pamac or PackageKit [10] (Figure 3).

Figure 3: The command-line tool Pacman takes care of package management in Arch, but GUI front ends are also available.

The graphical front ends supports searching for, installing, uninstalling, and updating packages. You need to use Pacman for more advanced functions. As with Apt-get and other package tools, it is generally worth learning about the console package manager's basic functions (Table 1): you can often achieve your goals more quickly using a few Pacman commands than by clicking around in a graphical front end.

Table 1

Pacman Basics

Command

Function

pacman -Ss search_string

Searches the package database for the specified search string

pacman -S package_name

Installs the package together with dependencies

pacman -Sy

Updates the local package database

pacman -Su

Installs pending updates for the installed packages

pacman -Syu

Reinstalls the repositories and installs all available updates

pacman -R package_name

Uninstalls the package

pacman -Rs package_name

Removes the packages, together with dependencies that are no longer required

pacman -Rss Package

Deletes the package together with the dependencies that are no longer requires and their dependencies

You can accomplish most package-related tasks with options of the pacman command. For instance, the command:

pacman -Ss chromium

searches through the repositories for every package with the term chromium in the package name or the description (Figure 4). The command:

pacman -S chromium-bsu

installs the game Chromium B.S.U.[11] (Figure 5).

Figure 4: The fastest way to handle package management is usually at the terminal. A single command turns up packages that match a search string.
Figure 5: When you install a package, Pacman retrieves the desired package from the network, along with any required dependencies.

The Pacman/Rosetta page in the Arch wiki [12] compares Pacman commands to equivalent package commands with apt-get, SUSE's zypper, Fedora's dnf, and other package tools.

You can incorporate both official and unofficial Arch repositories [13] by adding them to the /etc/pacman.conf. Alternatively, the Arch User Repository (AUR for short) contains a variety of packages that haven't yet made their way into the official repositories. Unlike Ubuntu PPAs, the AUR does not contain any software itself; instead it just lists recipes (PKGBUILDS in Arch jargon) that describe the installation of each application from source code or other package formats. AUR helper programs such as Yaourt or Pacaur then make it easy install these programs.

Dos and Don'ts

To ensure that Arch works reliably and the steady stream of updates doesn't affect the system, you should stick with a few basic rules. Some of these rules are also true for other Linux distributions: as a user, you should always have root rights for a self-managed system, but complete control over the system comes with the burden of responsibility for the system. Therefore, if you are in doubt, always check whether you really can achieve what you wish to achieve without root access.

Keep up-to-date with major rebuilding work in Arch. You'll find announcements on the introductory pages of the Arch Community or collected in the Arch Linux News Archives [14]. Major modifications don't happen every day and come as no surprise; however, sometimes changes will require users to intervene.

Due to Arch's rolling-release principle, as many as 100 or more updates are often pending in Arch within a few days (Figure 6). Don't hesitate too long in installing them; otherwise you run the risk of eventually being unable to resolve dependencies. You don't really need to install updates every day, but you should devote some time once a week to installing updates for security reasons. The system itself can tolerate an update pause of several weeks, though a considerable download volume will accumulate during this time.

Figure 6: Numerous updates accumulate during a week.

Like package management tools from other distributions, Pacman lets you exclude packages from updates with the IgnorePkg and IgnoreGroup options in pacman.conf. Due to the frequency that updates appear, it might be an attractive option to suppress an update from time to time, but unfortunately, Arch doesn't actually support such partial updates [15]. To avoid any difficulties, you should either install all updates or pause all updates for a while.

When setting up or updating packages, Pacman repeatedly outputs important information, as well as the usual status messages (Figure 7). So make sure you take a look at the corresponding log file pacman.log, which you'll find below /var/log, after each update. Pay particular attention to issues such as warning: /Path/File installed as /Path/File.pacnew or ... saved as /Path/File.pacsave. These messages usually appear when updating services in which the updated package contains a configuration file that differs from the current version. Then compare the .pacnew file with the current configuration file and transfer any changes. A .pacsave file, on the other hand, is created when you remove a service or program whose configuration file you have adjusted. You can quickly restore the service, if required, using the backup copy.

Figure 7: When installing updates, pay attention to package management instructions and warnings issued during the action.

Unofficial repositories and the AUR are not subject to strict quality control or intensive security checks. You should therefore check the PKGBUILD file for errors, inconsistencies, and malicious code, particularly when installing packages from the AUR. A look at the file's source line is usually enough. The source line should point to an official address for the software you are installing (Figure 8) – no matter whether it is source code, a DEB package, an RPM package, or a tarball with binaries. (Actually, you should also perform similar checks on packages from the openSUSE Build Service or from Ubuntu PPAs.)

Figure 8: You should at least check the data source when installing packages from the Arch User Repository (AUR).

On the Arch Wiki, you'll find more detailed information about using Arch [16], tips for maintaining the system [17], and information about how to protect your system from attacks [18]. Don't be put off by the abundance of dos and don'ts: The overhead for maintaining an Arch computer is hardly different from the overhead for maintaining other systems, especially with short update cycles.

Conclusion

Arch requires its users to know a bit about Linux. If you have never heard of the basic components of a Linux system, such as the kernel, X server, ALSA, or CUPS, you will certainly find it difficult to get started in the world of Arch. Even if you are an advanced Linux user, you'll probably need to temper your expectations – Arch can't lip-read every possible users' wishes. You might need to spend some time reading the documentation or looking for answers in the Arch forums.

Once you get Arch up and running, you can configure it to do anything you need it to do. Arch's minimal philosophy means your system will have fewer things to break. But remember you might need to add a tool to the system to perform a routine task you are used to doing with the default configuration in other Linux distros. For instance, you'll need to install the dosfstools package in order to format a FAT-based USB stick. Despite such complications, Arch's rolling release format offers a big advantage to experienced users who want to keep their systems up-to-date. (See the box titled "Rolling Benefits.")

Rolling Benefits

Once you get used to Arch, you'll find that the rolling release format offers some big advantages for keeping your system up to date. It is theoretically possible to keep an Ubuntu system almost as up to date by using third-party Personal Package Archives (PPAs), but over-indulgent use of PPAs entails the risk of them getting in the way – a huge amount of manual work is required when you upgrade to the next Ubuntu generation. You normally have to remove all software from alternative repositories if you want the update to work without any complications. In Arch, on the other hand, the system always remains up-to-date and, if necessary, it's possible to install all new software, whether open source or proprietary, via the AUR.

If you're planning on switching to Arch, it is a good idea to take your time and first set up a test system. Learn how to use Pacman and familiarize yourself with the system basics. The knowledge gained in this testing stage will certainly help you cope with using Arch in the real world.

You can experience the Arch environment with fewer complications if you opt for an Arch derivative such as Antergos or Manjaro. However, these spin-offs start you out with a much larger system because the developers try to cover as many applications as possible in the standard installation.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News