Linux distro you are using for development?

Updated on Sep 16, 2018

Hi all I just wanted to know the different linux distros you are using for development and why you chose that.

Did you find this post useful? Show some love!
DISCUSSION (112)

I'm using ArchLinux:

  • No bloated crap or shady partnership with asshole companies like Ubuntu
  • No obsolete package like Debian/CentOS
  • No weirdness with proprietary drivers like Fedora
  • Lightweight
  • Tweakable to the infinite
  • Up to date.

You forgot:

  • Broken packages every week
  • Malwares in community repos

I've been using Arch Linux for a while but I ended up switching for something more "stable", rolling release is awesome but it can break to easy, I don't want that on a machine I use to code.

Broken packages is extremely rare.

The malware stuff was removed under an hour. Shit happens, what's important is how they deal with it. Also if you don't read the install files of an AUR package you're gonna have a bad time!

And no, arch doesn't break. I've used it for 10 years now and it broke less than Ubuntu that I was using before (why do you think I switched :p)

Well I did use Arch for years and while it's true that I doesn't break THAT often, it still can happen (and it happened to me a few times). I'm not saying it's a bad distro, it's awesome, but if you want guaranteed stability (without taking time to double check things when you update), rolling release (on Arch or otherwise) is not the best idea.

Also, don't take my first post too seriously, it was a bit satirical :)

If you find Arch too much "cutting edge", maybe you could give Manjaro a try ! You get Arch benefits but packages updates are much more tested, so less risks(:

I'm surprised nobody has mentioned antergos.com. Arch-based, installer is very nice, can support live CD mode.

I’ve been using arch for about six years and I can only remember one broken package which was fixed in a couple of hours. In the meantime I had simply downgraded that package.

Arch has been very stable for me. I have a ~5 year old notebook still running its first arch installation. And it has seen many different desktop environments and a lot of AUR packages.

For me arch is the perfect dev distro.

Never had any problem with my computer, I guess we don't use the same tools.

Also, every distro having community repos may encounter malwares, and that's exactly why the installation tools pushes you to review and check what you're installing.

If you downloaded a software from a community distribution center on any other platform, the problem would be the same.

I am yet to try Arch Linux. I have been a hearing a lot of buzz about how cool it is. But for me as developer more than tools stability matters and I was introduced to Arch when it was unstable like broken releases bugs arising frequently. But since a lot of you are saying it's quite stable I am going to give it a try. :)

Try to use Manjaro bro. It's very awesome.

That's also in my list since many people here are saying it's cool.

Ubuntu is backed by Canonical, which is in close partnership with Amazon.

I totally understand that. But Ubuntu is a brand (a product rather). Canonical is the company. 😉

Manjaro Deepin:

  • Based on Manjaro which is based on Archlinux
  • It has beautiful UI
  • It has a great community
  • Fast, and relatively stable
  • Rolling release kernel updates
  • Have access to ArchLinux package repository as well as Manjaro's

forum.manjaro.org/t/manjaro-deepin...

Manjaro Deepin is beautiful but I use KDE because of my computer

Has a slick look. Is it maintained by Manjaro Team or another team?

I think that it has some support from Manjaro team, but as this is community edition most of the support comes from the team that assembled it.

I'm currently using Manjaro with i3 as a development machine at home because everything except the browser is done in a terminal emulator anyway. I have Debian on my personal servers and CentOS at work. I don't much like CentOS as a user system but it's ok on a server.

I run Debian and CentOS locally for Vagrant and Docker respectively.

That out the way, the reason I like Manjaro? I wanted to try Arch and have been happy enough with it not to want to hop distros. I used to use Debian unstable, and that worked for years without a hitch, but this is more up-to-the-minute and the AUR is really very good for finding anything I want.

Really, unless you're using something specific to that distro like a custom DE or want to run something non-free where the providers thing that the only distro in existence is Ubuntu, then there's not much difference. Stuff usually works and it's rarely more than a quick search away to find a solution to most problems.

Manjaro I heard is quite unstable and the team's support is often slow and sometimes the issues go overlooked is it true?

I've been using it a few months and not seen any problems so far, but I don't really do anything that exciting with it, so...

Will give this a try this is also topping the distrowatch's list nowadays.

"Pop!_os"

I purchased a laptop from a company which also happens to be the makers of Pop!_os. Their laptops come with your choice of either Ubuntu or Pop!_os installed. I'd already tried Ubuntu before and Pop!_os is a derivative of Ubuntu, so I took it as an opportunity to try something new. I ended up really liking it. It's very straightforward to use, my existing knowledge transfers well, and almost all of the screen real-estate is used for programs.

I'm also a System 76 user, although I haven't tried out Pop. Other than just hating the name, my Ubuntu setup "just works", and I'd rather spend my time working than experimenting with OS flavors.

I do agree that it's a weird name. The main reason that I tried it was that I was expecting to need to install a new OS on it anyway and may as well try a new one before doing that.

This is an OS I have not heard of. It seems interesting but with all those animations doesn't it become resource hungry?

I don't know of any major animation involved with Pop!_os. Just bare-basic animations to prevent transitions from being jarring -- the same kinds I see on my Android phone. I've never noticed major resource use by this laptop unless I'm doing something strange like running multiple web servers, though it is a beefy laptop to begin with. On a normal day, the only processes which consume a meaningful amount of resources are Tracker and Firefox.

It's good then. I am gonna give this a try. :)

elementary OS 5.0 Juno (currently in beta).

I love the design and it's stable enough for me.

Running 04.01 on my dev workstation with three monitors, but running the Juno beta on my laptop. Love the clean simple interface. Elementary OS has never failed me. It's super stable!

But what about the package support for Elementary OS. I heard it isn't that great.

The OS seems lightweight gonna give it a try and see how it fares for my personal project needs.

It's very lightweight with rock solid stability. I thoroughly enjoyed doing dev work on elementaryOS Loki. I had to move to a MacBook Pro for work, so I don't use it as much any more, but I would go back to it in a heartbeat.

Elementary is based off Ubuntu, so it supports all the same PPA's and .debs that ubuntu can use

Debian.

Stable for most servers, testing for my workstation.

I know a lot of people seem to like Ubuntu, but they still have yet to convince me they can really think like a server distro [whereas I've friends who've been bitten by how they don't]

Am planning to delve into Devuan now that they've had a couple of releases...

I have used Debian and CentOS for servers. Some how I feel CentOS is better than Debian when it comes to servers. CentOS tries to emulate some of RedHat capabilities too. You can give it a try and you are right about Ubuntu definitely not a choice for running in servers so much bloatware.

For enterprisey stuff, I might consider RHEL or SLES, but I find generally they ship versions if things too out of date for my needs.

CentOS doesn't merely emulate RHEL, it is RHEL. Basically, they rebuild the packages, with all the branding changed, and the restricted features taken out. Even before they were taken over by RedHat. Check Section 9 of the CentOS 7 release notes: wiki.centos.org/Manuals/ReleaseNot...

When I was building SANs, I used SLES, but mostly because of SuSE Studio.

I'm using KDE neon.

  • I need the latest Plasma.
  • I don't want to manage my machine.
  • Official PPAs and .deb/.snap packages are readily available.
  • I want something based on Ubuntu as it's what used in production at work.

I'm using KDE Neon for the same motives, it is just ubuntu with the last kde plasma.

Try CentOS in production trust me you will feel a difference in things and save you loads as it takes less resources to get the job done and also does it more efficiently than Ubuntu.

Depends on the technology stack.

  • EAI stack (MQ/IIB/ITX/Fuse/Perl/Java/C) - RedHat or CentOS (in a VM), because that's the runtime when it gets deployed and for this stack it's important that the dev platform resembles the prod platform, also some of the software is available in RPM only
  • Ruby-on-Rails stack - ArchLinux, that's my desktop OS, because I want a rolling release cycle... and my Ruby-on-Rails stack has always been directly on my desktop
  • everything Docker - Ubuntu (in a VM), because I was afraid to "taint" my desktop OS with docker, that just didn't feel right
  • Web development (React/Typescript for the most of it) - no preference, it seems to work well on all systems... well, at least on all Unix/Linux systems

This is a good set up. You have clear separation of concerns when it comes to the kind of development you are doing. But curious though why Ubuntu for docker you could've gone with a much lighter alternative.

Right. Well, in general I prefer DEB over RPM, which leaves me with Ubuntu and Debian as officially supported docker (host) distributions. I guess the most important factor that made me decide in favour of Ubuntu is that my 1st docker project included 3rd party docker images based on Ubuntu (Ubuntu being the container OS). My backup plan was: with Ubuntu inside the container AND outside the container no matter how bad a problem with docker might get, I could always escape dockerization.

Later of course I used smaller distributions in the containers. But I'm still pretty happy with Ubuntu being the docker host system, so I've never switched.

Lubuntu

The UI might not look great. But one of the advantages compared to other debian based distros is it doesn't take much space or resources.

I'm using 17.10 but it still uses 250MB RAM and 2% processes after starting up

Wow that's nice 250MB RAM gives a lot more memory for programs. This definitely wronged my notion that Ubuntu is slower compared to other distros.

Many won't like it because of the UI, it may look like windows 95. But it gets the job done

At the end of the day looks doesn't matter as long as it can get the work done in a faster and better way.

Gentoo

Software slotting makes it easy to handle multiple dev deps in parallel.

Came for this...

Also, awesome build environment out of the box, so you can "git clone" to your heart's desire!

I'm using Solus OS, it serve me right as web developer. everything works out of the box for my machine (Thinkpad E450). And most importantly it rolling release and stable enough at least for me.

But isn't it kind of designed for home and general computing for the everyday user.

yes, but it has the package needed for web development, and if you can't find it, it still linux on its core, you can always compile from source 🤣

As long as package support is there and compiling from source doesn't lead to system crashing it's fine ;)

What: Me for many years, and all my dev friends that uses Linux for web development are using Ubuntu.

Why: Is the most popular/"friendly", has builtin packages for all the tools we need, I never had to compile something and I have only a few extra repositories added. Being popular I can find tutorials How to install for everything I need and what command lines I should type.

Context: I'm no fanboy, if I could afford I would have a Mac, so I'm always looking for the easiest/shortest/simplest way to do my job, OS is just a tool, a firewall between me and my finished projects.

I agree with the statement "OS is just a tool". I feel macOS is kind of overrated for development. Any day I would rather use some other linux variant than macOS.

I don't think it's overrated, it simply provides the best UX and developer tools. Windows and Linux only provides one of them. Overpriced yes.

You can actually quantify the value it adds, I will give you just a few examples.

In linux I have to spend many hours learning how to do simple UX stuff like tweaking my scroll speed, and I don't even have the courage to install the 3D drivers anymore because in 60% of cases in the last 7years I had to reinstall the system or spend a few days on fixing it.

People that say Linux is easy they already have years of experience and/or they are comfortable with using the CLI to do simple tasks like editing configs, compile stuff, which most of the people are not.

Thanks for this perspective :)

Fedora with i3, most of the time I just need 2 windows: browser and terminal with tmux. I like the stability without having to be a power user on linux, I was thinking in a change to arch but tried it on a vm without luck, I think I'm getting older and just need that stuff works, I don't have the time or patience to deal with too technical things.

Haha I can understand. But with Fedora's bleeding edge features and lack of package support for new versions when it comes out how do you manage?

I have to agree with @marceloandrade , Fedora just works out of the box and has been my distribution of choice for years now. Younger me would distro-hop quite regularly, play with themes, window managers and configs. Now I'd rather focus on Getting Things Done than spend a good portion of my time setting up my environment. Perhaps Fedora just offers that environment I was searching for, though I still do install the odd extension to improve UX.

As for packages, perhaps this is personal choice just like the distribution. A 6 month cycle with fixes in between makes for a stable platform but also being new enough.

Typically I find myself not requiring the bleeding edge release, and given the popularity of per language package managers for development, well, you're not depending on the distribution.

Alternatively you could install from rawhide if you really need to, contact the maintainer to update if it fits within the update policy, or, repackage for the latest version using COPR yourself.

I just need a few packages from Fedora, rest of my dev environments are dockerized so no issues.

After reading some of the answers I checked manjaro/i3 and looks really nice.

I've been using Manjaro for about a year. Worked pretty well until a few weeks ago, when I randomly updated the kernel lol. Now there are a few weird things happening now and then. Nothing is broken, just sometimes some apps freeze randomly. Kinda frustrating but I don't really have the time to investigate right now :/

As long as it's not broken it's good to go why don't you try downgrading the kernel again?

Honestly any stable, maintained distro will do. I have Arch on my laptop, Mint on my desktop. Both are pretty easy to install any package on, both do Vim and task runners like a champ :D

I hear Fedora is great too, just haven't gotten around to it.

Give Arch and Manjaro a try. I installed Arch in my laptop after the sheer number of people suggesting it and it's great so far. Next I am gonna try Manjaro. ;)

There's also Antergos if you want to bootstrap an Arch install. I believe Antergos updates at the speed of Arch whereas Manjaro has its own repositories. At least, it did when I tried it a couple years back. Maybe not the case now?

I did some research on Manjaro turns out they have an amazing community support and also the package support is provided by AUR so it's a green. Having said that the team although they resolve the issues they are quite slow in doing so but breaking builds and issues are address quickly.

Linux Mint for the longest time, but currently on Ubuntu 18.04 since I need stable emoji support and Linux Mint 19 is still quite buggy on my machine.

Mint is like evergreen ground of Linux. It was, is and will be there always.

Yup! It's the distro that just works. But sadly, LM19 is still unusable on one of my older machine. Can't even run vi without the terminal freezing :/ Hopefully the subsequent versions will work fine.

I often distro-hop about, but I like Debian. I'm presently on Ubuntu 18.04 LTS running GNOME 3.28.2, but I also love the MATE desktop environment.

I've often considered using one of the more popular non-Debian distros, but I don't have the spare time to mess around with finding the software I need. Between the main apt repositories, PPAs, .deb files, and (occasionally) building from source, I'm always able to install everything I need pretty quickly.

(Incidentally, I'm not a big fan of Snap for a few technical and pedantic reasons. Good idea, just not my cup of tea.)

All that said, I have a septenduple-boot system running the latest versions of most Linux distros. That's 10% for technical reasons, and 90% because I felt like it. Within that context, I do rather like Solus.

I'm using Linux Mint(now the latest one) mainly because that was the linux distro that I used in my software classes back at college.
I also wanted to branch out of that and explore other options and I ended up landing on Manjaro, the homescreen and order of stuff seem familiar and is quite clean and well performing distro so I enjoy it too.

1 year ago I was using ArchLinux, but after several failures about installing dependencies packages what i need I've given up. And now I'm using Ubuntu. But I do think about installing Arch again, but another distro based on it, and Openbox of course.

I've been using Arch Linux (with Openbox) in my main work PC for a bit more than two years, it has "broken" about three times and with my latest MOBO change some stuff have not been working fine (some systemd services). Before that I was using Windows with Arch as a Virtual Box guest, and it also broke a couple of times there (both times VBox related issues). Anyway, I like Arch because of being able to get the latest versions of stuff faster, and the Arch Linux Wiki is just awesome!

That being said, for most of my other machines I use Ubuntu or its "flavors" (Xubuntu in my laptop, Ubuntu Server for remote testing and production machines). Why Ubunutu? Almost every vendor offer Ubuntu packages and/or instructions, you get a stable system out of the box and if you really want it, you can easily find a way to update almost any package to a more recent version. Ubuntu has never broken for me, but as I can read from other comments, everybody can have a different experience.

It's true everyone has different experience when it comes to OS. For me Ubuntu has broken about three times and Ubuntu servers have some outdated packages. Certain packages have very tedious process when it comes to updating to the latest packages so I had to leave Ubuntu. But I still love the simplicity of the OS for a common user who has everything he needs in his finger tips but as a developer I didn't feel so comfortable with Ubuntu.

  • Personal: Debian stable (everywhere), was Ubuntu until Debian 9.
  • Work: Mostly CentOS (because Rackspace run prod).

I find that Debian stable's occasional lack of up-to-date packages can frequently be sorted via the backports repository (I use this for Exim), which doesn't compromise on stability across the system, just the bits you need, and gives you a back out option :)

I moved away from Ubuntu as it focussed more on features and less on getting a job done reliably.

Exactly Ubuntu used to be my number one choice until a few years ago. But currently all ubuntu releases are focussed on useless features and becoming more and more resource hungry. I won't mind if the feature has some use and speeds up my system or productivity.

Any Ubuntu derivative should do the job pretty well. For me, ElementaryOS is the nicest. Clean, non-intrusive. Get a better terminal like Tilix, put some nice programming languages with a nice version manager like asdf or any_env, a good editor like VisualStudioCode, some docker love and you're pretty much done.

Using Ubuntu or any distro in that family, currently mint.

Use them because they generally require the least amount of configuration, most things work out of the box.

That gives me the best opportunity to build the stuff I want with tested tools

Used Kubuntu for a long time, but changed to Xubuntu, because of it's lower resource usage.

I'm using Xubuntu, too. My PC is beefy enough to run anything; I just like the simplicity.

Well you must try Lubuntu if resources is concerned and you don't want to switch out of Ubuntu

Lubuntu

The UI might not look great. But one of the advantages compared to other debian based distros is it doesn't take much space or resources.

I'm using 17.10 but it still uses 250MB RAM and 2% processes after starting up

KDE neon. It's based on Ubuntu, and I like Debian and it's derivates, and I like KDE's look and feel. Also, it came preinstalled in my current laptop.

elementary Loki...

Love the design... Fairly snappy and minimal..
Window Management is a bit poor, but hey, it works for me

Ubuntu 16.04.

Well 18.04 is crap. I don't like the gnome.
I'm using this because it's easy to use, I can setup my environment in one hour easily and my vps is ubuntu as well.

At the office I use kubuntu 18.04, it's a modern distro and fast to install and to mantain. On the other side, at home when I work remotely with my personal computer I use Gentoo Linux, highly customizable, no systemd and I'm in control.

On both cases, in case of doubt I have a docker image with same distro in production to test things.

I'm using Debian with i3.

I like the stability of it, it just works 😀

I use Fedora and SUSE Tumbleweed. With each, it's Gnome or KDE.
I write C code and shell scripts.

I'm using linux mint in my laptop.

  • Light enough for my machine
  • Well supported.
  • More or less customizable to my needs.
  • Does not breaks.

Now if serious.

  1. You can choose any key component of your system, for example, Systemd or OpenRC.
  2. You can choose a version of the library or tool and all packages that depend on it will be built using this version.
  3. You can disable features that you are not using or enable necessary that not turned on by default. E.g dynamic-modules support in Emacs.
  4. If new version or the new tool is not available as official ebuild, you can relatively easily write your own. For example, in deb-based distros, it turns into a nightmare.
  5. You can have multiple versions of the same software at one time, thanks to slots.

while (true):
print(Arch is the best!)

Haha I see what you did there. ;)

Currently I'm using Artix Linux. It's very similar to Arch, but doesn't use systemd.

On another machine I'm running Gentoo, but mostly as an experiment rather than actually believing it's better

Manjaro: it's based on ArchLinux and I love its rolling-release nature and AUR is a great source for software.

I don't know if I could trust an OS who's homepage features a slider which the first 4 images have nothing to do with the OS.

imo.

Currently using elementary OS.

• I just liked the UI.

Been using it for 2 years.
Although thinking of switching to Manjaro.

You can give it a try a lot of people here are using it and saying it's great.

In decreasing order of "seriousness business" and increasing order of "personal projects", but keeping it all approximately within the same family:

Amazon Linux, Red Hat, CentOS, Fedora

Kubuntu. Just been in love with it for a while, even with its quirks.

Though I do mostly use it for fun. I don't use it at work; company is a standard Windows org with some Mac OS.

I use Windows because Linux is horrible to use.

Slackware 14.2 + docker

Very stable and I prefer the reliability of slackbuilds over aur.

Debian.
Cause I started with Ubuntu few years ago and I tired of the new interface.

Classic DEV Post from May 11

My Programming Journey: Have Patience And Avoid Burnout.

This week I decided to talk about a couple of things that I feel like probably a lot of you might go through on your way to getting where ever it is you want to get to. And that is that burn out feeling or lack of motivation after the fun of doing something turns into well work. And having the patience to get to your goal.

READ POST
Follow @alexgwartney to see more of their posts in your feed.
Adarsh
A Software Engineer with the mind of a curious kid who likes to explore and deep dive into frameworks, libraries and computers in general.
Trending on dev.to
Does your employer pay for your health insurance in the US? 🏥
#discuss #healthinsurance #benefits #usa
Which Linux Notebook do you recommend?
#discuss #linux #help
Dev.to Review #3: Top 7 Of The Week, Discussed
#discuss #audio #top #popular
Do You believe Ruby on rails is still relevant ?
#discuss
Explain Postgresql Views Like I'm Five
#postgres #explainlikeimfive
Accessibility 101 - Developing for inclusivity
#a11y #beginners #development #inclusivedevelopment
Approaching software design principles
#principles #coding #development #learning
Discuss: What is your Myers-Briggs Type Indicator (MBTI)?
#discuss #nontech #selfimprovement #productivity