Two years ago, I installed Ubuntu on my school/dev laptop to force myself to learn computer fundamentals and powerful tools. So far it proved a rea...
For further actions, you may consider blocking this person and/or reporting abuse
The best choice for developers is a rolling-release distro. I use Manjaro which is based on ArchLinux and I could not change anymore.
Distros like Mint & Ubuntu are definitely not for developers as they're based on Debian and have only few updates.
For example, as a Golang developer on Ubuntu, I would have to install the SDK by myself and I could not use apt.
Why do you think a rolling-release distro is the best? My personal hunch would be to have a stable environment that mostly just works, which is why I'm currently running Ubuntu 18.04 LTS on my dev laptop. I don't want to spend time fixing stuff when an update breaks things.
I've been using Arch for a year now. I can say that kernel updates every week, and it haven't even broken once. I previously used Ubuntu too, had much more headaches with it.:)
Mint & Ubuntu are stable distros and thus more suitable for non-tech people like my parents. It's like Windows or MacOs. A new release every 6 months is OK for most people, but IMO not for devs.
I'm with you on this and have been using Gentoo for as long as I can remember. Rolling release distros don't require you to install or reinstall the whole system when new version is released. I just don't feel like doing complete installs every few months or so. Also, rolling release distros are as stable as you make them since you are usualy given an option to install stable, or bleeding edge packages.
Which flavor do you use? I tried using the KDE (used KDE3 and KDE4 myself back in the days) and I found it too bloated, and I cannot stand Gnome 3. Maybe you have some tricks up your sleeve to share!
Gentoo. I was a distrohopper for about ten years, switching every six months or so, until 2014 when I hopped to Gentoo. Have not looked back once as a main daily driver.
Its' a really a meta-distro, and is absolutely overkill for a standard desktop configuration. Where it shines in customization. I was able to pare it down to run on a Pi, and I love that I can compile all my packages without, e.g. Bluetooth support if I want, and it absolutely excels at juggling developer toolchains. I can have multiple slotted versions of Python or Ruby or even GCC and switch symlinks around with a single command. I love knowing that all my applications are built linked to the same exact system libraries, because I built it all myself. Portage is the best package manager I have ever used.
It also taught me so much more about my computer and about Linux, the most I'd learned since I started with Ubuntu back in '05. After getting comfortable with that, the differences between other distros were largely surface-level, and my Linux knowledge didn't progress much. Gentoo was a whole new thing all over again, and now I have a much greater understanding of more of my OS, quite helpful when troubleshooting. I even hand-roll my own kernel config now and don't even think about it.
Not that I troubleshoot terribly often. Gentoo kind of gets a rap for being a breakable mess that you'll spend a crazy amount of time fixing instead of getting work done
. I have not found this to be the case. In five years, I've had two major system snafus, and both were entirely my fault. I changed a setting I didn't fully understand. Gentoo has never, not once, died on me without my help.
The downside, of course, is that you're compiling everything yourself, which is largely a waste of time. I do feel guilty about the excess ecological footprint, and if I do decide to hop ship, that will be the driving factor.
Gentoo is sort of special distribution that is intended for people with masochistic tendencies and is perfect for developers. My current install has been working perfectly for around 10 years now. I have even started using it on embedded systems like ClearFog and when you get used to cross compilation quirks(hell), you get a perfect 200Mb distro which can easily be moulded to meet your requirements. I am biased since I'm a big fan of Gentoo but I must admit, there were times I just wanted to do this:
Totally with you on cross-compilation. The Pi project was...non-trivial. But it worked, eventually ;)
I still have nightmares about
qemuthough.I don't use it so much, not needed unless you want to run arm binaries on x86. I used to do a chroot and run/compile in qemu emulation but that was dreadfully slow. Now I just cross compile and do the following before I run arm 32bit binary on my 64bit x86.
I also have Gentoo induced nightmares, you're not alone ;)

Oh yeah, and when you ignore emerge sync and forget about updates for more than a year...then it's more like this:

Hah, my record is like two months and even that was a little annoying. At that point I'd probably just start from scratch, it'd likely be a comparable time commitment...
Arch Linux .
Basically because of two key points: AUR and Arch Wiki
AUR is the Arch User Repository, basically, any software that you may need was already created and it's maintained by another user.
Arch Wiki: Probably the most complete wiki on Linux on the internet. It has a subject for all sorts of problems that you may face, extremely detailed and very well maintained.
Arch wiki is just insanely useful. Even if not using Arch, it is still valuable.
Solus Linux.
Awesome team, not based on any other distro, great default DE.
Runs fast and on everything I've tried so far.
Big fan of Solus! There are a few smaller reasons I'm not using it right now, but I definitely keep my eye on it. I think the biggest kicker was they didn't have a more recent version of NodeJS at the time that I left. I'd be curious if they've got a more recent version now though.
Their DE is fantastic.
You could install nvm (node version manager) and get every node version you need.
github.com/nvm-sh/nvm
Oooh! Nifty! Definitely going to be adding this to the list of things that I use. Would really help at work lol
also add direnv and have it automatically change node version depending on which directory you are in.
Really useful :D
Never heard of that, will have a look at it.
Fedora because each release has rather up-to-date softwares and mostly because it is the "desktop version" of CentOS/RHEL (and I used to work with a lot of those).
Like Ubuntu it provides various Desktop Environment versions called spins which is nice.
It uses rpm packages which I find more convenient than deb packages specially when it comes to making your own packages!
The Fedora project even provides an infrastructure you can use to make your own packages and have a repo for that : copr
They also provides "Third party repositories" that includes chrome, steam, nvidia drivers...
I briefly used Fedora recently and I liked it. For some reasons, I had to reinstall my distro and went back to Ubuntu because I needed to fall back on my feet rather quickly. I might reinstall it before the beggining of next semester. I really liked the rpm packages and how there isn't ppa. Because let's be honest, Ubuntu ppa can sometimes be a pain in the rear.
macos, because it just works. :troll:
Seriously, I've hopped from distro to distro from the late or mid-90s to the mid-2000s. I really liked Suse in 99-2000 or so. I first got started with Red Hat, a long time ago. I used Mint and Ubuntu quite a bit. A lot of Debian, too.
But right now, I am using macos and while I love the idea of going back to Linux, it just has a massive cost in lost productivity to move (same for any OS, not because it's Linux), buying or finding equivalent software, etc.
Love to read that thread so far :)
I wish I discovered Linux earlier, I'm a fan of DIY. I've considered switching to macOS and if I'm ever offered the choice, I think I won't be able to switch.
yeah, moving from an OS to another, no matter the origin and destination has a massive cost. Not saying it's not possible, but it shouldn't be underestimated.
Sacrilege
Started with Ubuntu, moved on to Kali, then Arch, tried deepin, Manjaro, bodhi, and parrot. Decided to make my own. Best decision i've ever made. Thinking about making it a public distro with a release schedule but I need a name. Suggestions welcome. If you're not into building your own, parrot is a nice multi use Debian based rolling distro.
Submit your distro on DistroWatch
Excellent idea. Will do, as soon as I get a gcc bug worked out
ElememtaryOS
Debian based, light weight, easy to use.
Similar to Mint Mate but w/ very cleandesign aesthetics like OSX.
A few standard features you'd expect in Debian are disabled by default but easy to re-enable if you're familiar w/ linux.
pretty sure elementaryOS is based on Ubuntu LTS
en.wikipedia.org/wiki/Elementary_OS
My mistake
The major distinguishing difference of Elementary is that it doesn't rely on traditional Debian-based shells (ex Gnome, LXDE, KDE). It uses its own named Pantheon. IMO, Pantheon is awesome.
Arch Linux
Debian stable
Ive been using Debian for a few months now, and so far its literally been the most rock solid Linux distro I've ever used.
While its software isn't bleeding edge, neither is my hardware. Since installing, I've literally had more problems with games consoles than my PC.
As a dev, being able to work without worrying about things breaking every update, is for me at least, well worth the tradeoff of not having the newest and shiniest versions of things, if it means having much more stability overall, and me actually getting work done.
One of the first distros I used was Gentoo, and I absolutely loved it. Getting the choices for what is installed and what features you have means you don't have to deal with someone else's decisions. That was back in highschool for me. Since then, I've discovered Arch and have used that for all my Linux needs since.
The correct one for whatever use case the system it's going on happens to be for.
For personal systems that I can afford to spend lots of time on updates and have no need to worry about legacy software: Gentoo.
Put simply, I'm more than willing to deal with building the system by hand if it means that the distribution makes zero assumptions about things it really shouldn't care about (like how exactly I have my storage stack put together).
For personal systems that I need to minimize the overhead of updates for and have no need to worry about legacy software: Alpine.
Really security focused, easy to manage, and makes fewer assumptions about how the underlying system is set up than most other distros (though the installer's inflexibility is irritating). Essentially, I don't have to go out of my way to secure an Alpine system, unlike most other distros.
For everything else: Debian.
In essence, Debian is simply the distro I dislike the least other than Gentoo and Alpine. This is less about what they do than what everybody else is doing that I don't like.
I like linux mint because "it just works". I have been using the xfce version at work since it is light weight and pretty fast. With mint I can just install and get to work with no trouble. The bundled tools have everything I need to be productive and now have to think about "ah crap, gotta install this to get xyz to work". Really that's all I want from linux: it working, the environment/tools, and bash.
Mint has a special place in my heart since it's the first distro I learned with Ubuntu. I used to install Mint on my parents old computers so they could have a second life. Works great!
Fedora because it's a distro for developers, neither too bleeding edge thus more stable nor too retarded.
But looking forward to use nixos, tried it inside a vm and so far I'm not disappointed, the only thing that holds me back now is my fedora install script
ArchLinux can also be a good alternative.
I have tried many, from mandrake / red hat era to slakware / ubuntu / linux mint to fedora. Most of these distros needed fresh install with every new version release and to me that was a HEADACHE.
When I came to know about rolling release distros, I settled on archlinux and have been using it since 2011/12.
I am not a developer.
Ubuntu is good... for about a couple months. Eventually one realises that ubuntu violates several principles of oss, and then there was the anouncement that canonical was going to close the doors to community additions. Time to move away from that. Think of ubuntu as a very hot but ultimately toxic relationship.
Then I got hooked by fedora, magnificent distro, much less violations to oss philosophy, bleeding edge updates. Think of fedora as the relationship with whom you do crazy stuff, but eventually you want to settle down and be with someone more stable. Along came opensuse, so far, this is the best distro I've used, I use it in all my servers, it's stable, fun, secure, but also can do crazy bleeding edge stuff too (tumbleweed). Try it out, you won't regret.
Pop_OS, it was made by system 76, and based on ubuntu
in my experience this has been very stable and extremely easy to set up
We had a new employee and he chose Debian. I seriously haven't considered this option before, but now I want to try it. Arch linux is great, the wiki is a very good reference whatever distro you use.
Ubuntu is my top choice too. Great features and you can shop stuff quite easily
Fedora for reasons summarized here
My beautiful Linux development environment
Deepu K Sasidharan ・ Jun 16 ・ 6 min read
As always, amazing article. I might go back to Fedora before the next semester. Getting rid of Ubuntu's ppa is nice.
WSL2 - it should make my life at work a whole lot easier (we have no choice but to use Windows as the host OS)
Out of curiosity do you have to use Docker and if so, how's the experience with it and WSL2?
CentOS for servers, Linux Mint for workstation stuff.
I haven't used Mint in years. I wonder how it is today. As for CentOS, never tried it.
I think arch Linux is most suited for devs
Bleeding edge and constant update might be something that slows how you ship software. So far, I'm on the fence of defaulting to Arch for dev. it is for advised and advanced users.
i disagree, arch is the only distro that has given me zero problems so far and i have been using it for better part of the year. i think being a developer you need access to newer tools and arch provides that, however i understand that some developers might want to be on the side of stability and i think the AUR has them covered, and it isn't too hard to package a piece of software you want.
Pop-os, Ubuntu but better driver integration imo.