The most popular versions of Linux, such as Ubuntu, focus on improving the user experience by updating packages automatically and providing striking and resourceful GUIs.
Although easy-to-use distributions (distros) certainly have their place, in this guide, we tried to go back to the glorious days when developers customized their Linux compilation. These Linux distributions allow you to fine-tune your development environment, therefore, whether you are a veteran programmer or a newcomer, you can continue with your coding.
In summary, whatever your programming preferences, you will find a distribution that suits your needs in this top 10 search.
1. Arch Linux
Arch Linux offers a powerful level of customization during installation, allowing you to download and install only the packages you need. While this is definitely not for beginners to coding, the fact that you can install only a minimum number of programs on your machine using Arch Build System and Arch User Repository, reduces the possibility that something will interfere with your encoding.
This means, for example, that you can install a barebones window manager such as i3 to make sure that your system will respond quickly when you use the chosen text editor. If you encounter difficulties, Arch Linux Wiki offers a useful installation guide.
2. Debian
Debian is one of the oldest Linux distributions and is built with stability in mind. All programs included with Debian must comply with the Debian Free Software Guidelines. The packages are selected and tested carefully for inclusion in the & # 39; Stable branch. of Debian, which means that although some may be dated, there is very little chance of system instability, which makes this operating system ideal for programmers.
The Debian website a chapter on programming that will explain the basics of creating a script, compile it and use Autoconf to allow your scripts to be compiled into other Linux distributions.
3. Raspbian
Raspbian is the default operating system that is included with Raspberry Pi. As Pi was designed as an educational tool, Raspbian is the perfect operating system for those interested in starting coding.
The Raspberry Pi website has excellent guides on the use of the Scratch visual programming tool, which is used to create animations and games. . There is also an excellent section on how to get started with Python, which is immediately compatible.
Younger coders may prefer to learn to use the programming language of Minecraft Pi, a mini version of the popular sandbox game. [19659004] Gentoo "class =" expandable lazy-image lazy-image-loading lazyload optional-image "onerror =" this.parentNode.replaceChild (window.missingImage (), this) "sizes =" auto "data-normal =" https://vanilla.futurecdn.net/techradar/media/img/missing-image.svg "data-src =" https://cdn.mos.cms.futurecdn.net/6GCX3ATMRgJz5gDKBscgwm-320-80.jpg "data -srcset = "https://cdn.mos.cms.futurecdn.net/6GCX3ATMRgJz5gDKBscgwm-320-80.jpg 320w, https://cdn.mos.cms.futurecdn.net/6GCX3ATMRgJz5gDKBscgwm-650-80.jpg 650w" data-sizes = "auto" data-original-mos = "https://cdn.mos.cms.futurecdn.net/6GCX3ATMRgJz5gDKBscgwm.jpg" data-pin-media = "https: //cdn.mos.cms.futurecdn .net / 6GCX3ATMRgJz5gDKBscgwm.jpg "/>
4. Gentoo
Named after the fast swimming penguin, Gentoo is sometimes referred to as" meta & distribution "as users download and compile their source code manually according to your needs.This not only makes it a perfect match for the requirements of hard Your machine's ware, but allows you to decide exactly what versions of packages can be installed.
Gentoo suffered a minor setback a few years ago when their entire wiki was disconnected. Fortunately, it has since been restored and now includes the official Gentoo manual. There is also a small Gentoo fan on Reddit if you need more help.
5. Ubuntu
Unlike distributions of barebones such as Arch Linux and Gentoo, Ubuntu is designed to be ideal for beginners, with a desktop interface and automatic updates.
Ubuntu is the chosen distribution of the Android Open Source Project to compile source files. The Android compilation is tested regularly using the latest versions of Ubuntu.
You can also install other development environments using Ubuntu Make.
Ubuntu now supports the packaging of applications & # 39; snapshots & # 39;, using the Snapcraft tool, which allows you to write applications in the programming language of your choice and package them with all the required dependencies. Visit the Ubuntu developer portal here.
6. Fedora
Fedora is a derivative supported by the Red Hat Linux commercial distribution community. It also enjoys the distinction of being the choice distro of the Linux kernel creator, Linus Torvalds.
In addition to being very easy to configure and install, Fedora has a dedicated Developer Portal. Simply click on "Start a project" to see specific guides on the development of web applications, command line, desktop and mobile devices. There is also an excellent section on how to work with hardware devices like Arduino.
If this were not enough, the Fedora repositories also include Eclipse, a full and multilanguage IDE. Eclipse is probably best known for Java, but it also has a C / C ++ and PHP IDE. You can expand your functionality even more with add-ons.
7. OpenSUSE
OpenSUSE (formerly SUSE Linux) is a distribution designed specifically for software developers and system administrators. The installation and configuration of the system is very simple with the integrated YaST tool. This allows you to install all packages & # 39; -devel & # 39; what developers need with a single click.
OpenSUSE comes pre-installed with all the basic tools that a software developer needs, such as Vim and Emacs text editors, compiler automation tools such as CMake, and packaging tools such as RPM. The operating system also comes with OBS (Open Build Service), a tool for developers to create software for various distros and platforms.
8. CentOS
Like Fedora, CentOS is a free and community-based variant of Red Hat (a commercial version of Linux). Many of the packages are the same and theoretically it is possible to build a version of CentOS that is functionally identical to Red Hat, although this is difficult to achieve in practice.
This results in a highly stable system. The CentOS repository also contains Developer Toolset, which has a range of essential programming tools.
For developers, the Xen virtualization platform offers a way to compartmentalize your projects and run applications securely within a virtual machine.
You can find instructions on how to do this and other suggestions for developers on the excellent CentOS Wiki.
9. Solus
Solus is special because it is one of the few Irish distributions of Linux, and also because it follows a cured continuous release model. The advantage of this is that once you have installed the operating system, you can continue running updates instead of a major update. Solus, however, tries to avoid installing extremely recent packages and beta software to maintain system stability.
Solus supports several editors and IDE such as Atom, Idea and Gnome Builder, as well as the Git GUI, GitKraken. The Solus project website also states that the operating system supports a number of programming languages such as Go, Rust, PHP, Node.js and Ruby.
10. Puppy Linux
Puppy Linux is an extremely light distribution based on Ubuntu or Slackware. The entire operating system is only about 325 MB in size, which means that it can run completely in RAM and be installed on a common hard drive. It comes with a minimum number of packages, although you can add more, like & dev; & # 39; which contains several development tools.
Puppy Linux & # 39; Wikka & # 39; It details the programming languages compatible with the operating system. One notable language is BaCon, which can convert code written in BASIC to C.
Wikka also has a wide selection of tutorials on how to write Bash scripts and how to get started with Python.