Arch Linux is an independently developed, x86-64 general-purpose GNU/Linux distribution that strives to provide the latest stable versions of most software by following a rolling release model.
Arch Linux has been categorized as a do-it-yourself distribution for advanced and experienced Linux users.
The default Arch Linux installation is a minimal base system, configured by the user to only add what is purposely required. The fact that you make a decision on how your system should look like and the packages it should have installed, makes your system clean and not having useless applications eating your memory and CPU. You can only install what you need for your daily use. It will take a bit of your time to install the operating system but at the end of it, no one else will know how your computer is running better than yourself.
Arch does not come with a graphical installer and the whole installation process is done via a terminal. This can be intimidating for new Linux users.
Arch Linux uses a rolling release model, meaning there are no “major releases” of completely new versions of the system. A regular system update is all that is needed to obtain the latest Arch software. The installation images released every month by the Arch team are simply up-to-date snapshots of the main system components.
Arch Linux Principles
The main philosophy behind Arch is KISS (Keep It Simple, Stupid). Arch Linux adheres to five principles:
- User centrality
In practice, this means the project attempts to have minimal distribution-specific changes, minimal breakage with updates, pragmatic over ideological design choices, user-friendliness, and minimal bloat.
Arch Linux defines simplicity as without unnecessary additions or modifications. It ships software as released by the original developers with minimal distribution-specific changes: patches not accepted by upstream are avoided, and Arch’s downstream patches consist almost entirely of backported bug fixes that are obsoleted by the project’s next release.
In a similar fashion, Arch ships the configuration files provided by upstream with changes limited to distribution-specific issues like adjusting the system file paths. It does not add automation features such as enabling a service simply because the package was installed. Packages are only split when compelling advantages exist, such as to save disk space in particularly bad cases of waste. GUI configuration utilities are not officially provided, encouraging users to perform most system configuration from the shell and a text editor.
Judd Vinet, a Canadian programmer and occasional guitarist, began developing Arch Linux in early 2001. Its first formal release, Arch Linux 0.1, was on March 11, 2002. Inspired by the elegant simplicity of Slackware, BSD, PLD Linux and CRUX, and yet disappointed with their lack of package management at the time, Vinet built his own distribution on similar principles as those distros. But, he also wrote a package management program called pacman, to automatically handle package installation, removal, and upgrades.
In late 2007, Judd Vinet retired from active participation as an Arch developer, and smoothly transferred the reins over to American programmer Aaron Griffin, also known as Phrakture.
Between 2012 and 2013 the traditional System V init system was replaced by systemd. On January 25, 2017 it was announced that support for the i686 architecture would be phased out due to its decreasing popularity among the developers and the community.
Arch Linux has it’s own package manager called Pacman. Like “apt” for Ubuntu and “dnf” for Fedora, package installation in Arch Linux has been done using Pacman. As you probably know, unlike other Linux distributions, Arch Linux doesn’t have any GUI package manager.
The goal of Pacman is to make it possible to easily manage packages, whether they are from the official repositories or the user’s own builds.
Pacman is used to install, remove and update software packages. It is one of the major distinguishing features of Arch Linux. Pacman combines a simple binary package format with an easy-to-use build system. The Arch Build System is a *BSD ports-like system for building and packaging software from source code into installable .pkg.tar.xz packages which Pacman can manage.
Pacman keeps the system up to date by synchronizing package lists with the master server. This server/client model also allows the user to download/install packages with a simple command, complete with all required dependencies.
Pacman is written in the C programming language and uses the bsdtar(1) tar format for packaging.
On Arch Linux, the official repositories are: core, extra and community. These packages are already compiled, and they are installed through Pacman. There are more than 11,000 packages in the official repositories. But, there are many other programs available on Linux.
The AUR (Arch Linux User Repository) exists so any Arch user can add a new program and become its maintainer, or adopt an “orphaned” package without a current maintainer. There are about 55,000 packages in the AUR.
The Arch User Repository (AUR) is a community-driven repository for Arch users that hosts a number of packages outside the official Arch Linux package database. It contains package descriptions (PKGBUILDs) that allow you to compile a package from source with makepkg command and then install it via Pacman.
A good number of new packages that enter the official repositories start in the AUR. In the AUR, users are able to contribute their own package builds. The AUR community has the ability to vote for packages in the AUR.
The Best Documented Linux Distribution
Arch Wiki is a treasure trove of information. It is Arch Linux’s comprehensive documentation in the form of a community wiki. Arch Wiki is immensely useful for Arch Linux distro as well as other Linux distro users since the guidance and fixes in it are relevant effectively out of the Arch ecosystem. Even though other distros package things differently compared to Arch, Arch Wik’ can give correct directions.
You will for sure get everything you would wish to know concerning installation and maintenance of every component and detail of a proper Linux system.
This documentation can be a reference for general Linux administration. For sure if you are new to Arch but have experience with other Linux distros, you have already read Arch documentations a couple times.