The following five principles comprise what is commonly referred to as the Arch Way, or the Arch Philosophy, best summarized by the acronym KISS for Keep It Simple, Stupid.
Simplicity is absolutely the principal objective behind Arch development. Many GNU/Linux distributions define themselves as “simple”. However, simplicity itself has many definitions.
Arch Linux defines simplicity as a lightweight base structure without unnecessary additions, modifications, or complications, that allows an individual user to shape the system according to their own needs. In short; an elegant, minimalist approach.
A lightweight base structure built with high programming standards will tend to have lower system resource demands. The base system is devoid of all clutter that may obscure important parts of the system, or make access to them difficult or convoluted. It has a streamlined set of well documented configuration files that are arranged for quick access and editing, with no cumbersome graphical configuration tools to hide possibilities from the user. An Arch Linux system is therefore readily configurable to the very last detail.
On the other hand, Arch Linux keeps the inherent complexities of a GNU/Linux system intact, while keeping them well organized and transparent. Arch Linux developers and users believe that trying to hide the complexities of a system actually results in an even more complex system, and is therefore to be avoided.
Code-correctness over convenience
The Arch Linux system places precedence upon elegance of design as well as clean, simple code, rather than unnecessary patching, automation, eye candy or “newbie-friendliness”. Software patches are therefore kept to an absolute minimum- ideally, never.
Simplicity, code-elegance, and minimalism shall always remain the reigning priorities of Arch development.
Concepts, designs and features are generated and implemented by using the Arch Way principles as a guide, rather than bowing to external influences. The development team are resolute in their commitment and dedication to the Arch Way philosophy. If you share their vision, you are welcomed and encouraged to use Arch.
Openness goes hand in hand with simplicity, and is also one of the guiding principles of Arch Linux development.
Arch Linux uses simple tools, that are selected or built with openness of the sources and their output in mind.
Openness removes all boundaries and abstraction between the user and the system, providing more control, while simultaneously simplifying system maintenance.
The open nature of Arch Linux also implies a fairly steep learning curve, but experienced Arch Linux users tend to find other more closed systems much more inconvenient to control.
The Openness principle extends to its community members as well. Arch Linux users are known to be very open with help and advice, as well as with package contributions to the community maintained Arch User Repository.
Whereas many GNU/Linux distributions attempt to be more ‘user-friendly’, Arch Linux has always been, and will always remain ‘user-centric’.
Arch Linux targets and accommodates competent GNU/Linux users by giving them complete control and responsibility over the system.
Arch Linux users fully manage the system on their own. The system itself will offer little assistance, except for a simple set of maintenance tools that are designed to perfectly relay the user’s commands to the system.
This user-centric design necessarily implies a certain “do-it-yourself” approach to using the Arch distribution. Rather than pursuing assistance or requesting a new feature to be implemented by developers, Arch Linux users have a tendency to solve problems themselves and share the results with the community and development team — a “Do first, then ask” philosophy. This is especially true for user-contributed packages found in the Arch User Repository — the official Arch Linux repository for community-maintained packages.
Another guiding principle of Arch Linux development is freedom. The users are not only permitted to make all decisions concerning system configuration, but also get to choose what their system will *be*.
By keeping the system simple, Arch Linux provides the freedom to make any choice about the system.
A freshly installed Arch Linux system contains only basic core components with no automatic configuration performed. Users are able to configure the system as they wish, from the shell. From the start of the installation procedure, every component of the system is 100% transparent and accessible for instant access, removal, or replacement by alternative components.
The large number of packages and build scripts in the various Arch Linux repositories also support freedom of choice, offering free and open source software for those who prefer it, as well as proprietary software packages, for those who embrace ‘functionality over ideology’. It is the user who chooses.
As Judd Vinet, the founder of the Arch Linux project said: “[Arch Linux] is what you make it.”