I know there choice of distro is really meaningless as you can install almost any program on almost any distro. But I have been playing with kali which is for security people and pen testers. Is there a similar distro for programmers? Like a few ides installed some profiling tools some virtual environment tools etc?
Gentoo. Literally the entire system is a build environment. Imagine a single environment that’s capable of compiling thousands of different packages and managing dependencies etc.
NixOS. It’s really good for building multiple discrete environments specific to a development project, and it’s done via a functional declarative language that’s right up a programmer’s alley. You can specify everything precisely to what you want for that environment including all dependencies and not have them pollute each other when you switch builds.
But it’s a steep learning curve and the documentation could be better, but it’s probably fine if you’re used to learning new languages.
Short answer is no, I think because what tools you need for programming change so much based on the development you’re doing. C++ developers need compiler toolchain stuff that Javascript developers would never need to look at and vice versa.
Curveball answer is that modern extensible IDEs with the power of language servers and plugins have kind of become this. I’d massively recommend properly getting into one of the following and learning how to configure new languages and plugins:
- VScode
- Neovim
- Emacs
- Helix
(Sure I’ve probably missed some great options, feel free to flame me on why notepad++ should be OPs first choice)
UNIX was kinda designed to be an IDE (of its time) by itself. Desktop/Server Linux (whether GNU or non-GNU) mostly continues this tradition; you are provided with some powerful tools for text manipulation, development, debugging and deployment out of the box in most distros. As such, any modern Linux distro is pretty good for development even out of the box. However, you must learn to use this power, and I’m not claiming it’s easy (I still regularly look up various manpages despite doing development on Linux for 10+ years in various forms).
With that said, I myself prefer NixOS. It really feels more developer-oriented that other distros, as you get the power of Nix out of the box, and integrated into the system. With Nix you get easy access to the biggest software repository in the world. You get per-project development shells, so that you never have to worry about different toolchain versions for different projects, or your system being contaminated with bloat you no longer need. You get the power of reproducible packaging, to eliminate a lot of (but unfortunately not all of) “Works on my machine”-type of problems. It’s also got a hell of a learning curve, but I think it’s worth it.
Yes, all of them.