I have been using Arch Linux as the working environment for nearly 2
years. Generally speaking, the experience is very good, and I want to recommend it for more people, especially software engineers.
Because I am a developer, one SSH client is mostly enough, and fascinating desktop doesn’t appeal to me. Since Arch Linux
is “rolling release” mode, it means I can always get the newest kernel and software packages (one “pacman -Syu
” command will refresh the whole system), and my favorite thing is to make use of the newest functions provided by compiler and kernel . On the contrary, one pain point of distributions whose mode are “point release” is sometimes you need to compile the vanilla kernel yourself if you want to try some up-to-date features (E.g., use eBPF
on RHEL 7
) .
The package management system is another killer feature. For instance, I used to try to develop OpenMP
program using clang
. Not similar as gcc
, clang
requires additional package:
# pacman -S clang
......
Optional dependencies for clang
openmp: OpenMP support in clang with -fopenmp
python2: for scan-view and git-clang-format
......
The prompt not only shows me that I need to install openmp
package, but also requires “-fopenmp
” option to compile OpenMP
program. This is very humanized. I tried to enable OpenMP
feature of clang
on some other OSs, and the process is not as smooth as Arch Linux
.
Last but not least, Arch Linux community is friendly, I can always get help from other enthusiastic guys.
For me as a programmer, what I need is just a stable Operating System which can always provide latest software toolchains to meet my requirements, and I don’t want to spend much time to tweak it. Arch Linux
seems fulfill these demands perfectly. If you have simple requirement as me, why not give it a shot?