Skip Navigation

Is there a programming specific distro?

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?

55 comments
  • Probably Bluefin-DX.

    The "DX" stands for developer experience. It's a variant of uBlue/ Fedora Atomic (Silverblue) with a lot of added programming tools like Brew, Nix, IDEs, local LLMs, and more.

    You can read more about it on the website.

    There's also Aurora, which is the same, but with KDE instead of Gnome.

    The dx-images are meant to be a plug-and-play solution for developers. You just install it, share your container config to your project colleagues, and go. Don't worry about not being able to work because of a bad update or some misalignments in your package manager broke your OS. Most stuff is containerised, and if your host breaks, you can just roll back, because the system is basically powered by git.

    I'm no developer, but I use the regular variant for casual purposes (no specific tasks, mostly browser) on my laptop, and Bazzite (also very similar, but gaming focused) on my desktop, and both are wonderful! They're the most boring distro/ OS I've used yet, and that's great. They're immutable/ image based and always work reliably.

    I can really recommend them for a lot of people, from ranging from IT professionals to my mum.

    • Don’t worry about not being able to work because of a bad update

      Never happened to me in 20+ years... I seriously wonder what some of y'all have been doing that this is a major concern.

      • I've done the horrible deed of updating Debian, for example.

        Distros like Arch get a pass, but Debian screwed me over several times. For example a few years ago, some driver decided to make itself clinge onto old kernel versions. So the boot partition got full and left me in a weird start where I had to manually remove old kernels and track down the driver at fault.

        Recoverable, but annoying, and on a system I use for work it would be really really expensive.

        Fedora used to nuke itself sometimes if you upgraded an install from version n to n+1, n+2, .... Like a config not being migrated properly, a package conflict because of renamed packages and versions, yada yada yada.

        If you didn't experience that, you either were very lucky, only used enterprise distros, or simply reinstalled often enough for it not to be an issue.

      • I've had bad tinkering break my system before, but never had an update break it irreversibly. The closest would actually be on Silverblue itself, when an update to the kernel was using different signing keys that cause the system not to boot. Fortunately it was simple, I selected the previous deployment and I was in (on a non versioned OS I would have selected the previous kernel which most are configured to retain the last few). A quick Google revealed Ublue had a whole kerfuffle and after verifying it was legit, I enrolled the new certs into my MOK.

        Although one time on Arch I had installed an experimental version of Gnome from one of their repos, and was pleasantly surprised when that version finally released and I removed the experiment repo and did an update absolutely nothing at all broke. Nothing.

      • I've had this happen more often than I'd like to admit.

        There were quite a few instances where I just couldn't game in the evening after turning on my PC, mostly because of my power supply (outages while updating, unstable grid, damaged PSU and hard drive, etc.) and my ability to shoot myself in the foot in regards to my IT skills.

        I imagined spending my friday evening differently than chrooting my install from another USB more often than I'd like to admit. At least Linux is repairable, good luck trying that with Windows...

        Now, thankfully, I live in another house with a landlord that actually cares that I don't get electrocuted in my shower, and I don't have those problems anymore. I also don't tinker as much with my OS anymore, at least not much.

        Still, Fedora Atomic feels way more robust and less buggy than regular Fedora, especially KDE. And the QoL tweaks from uBlue are great too!

  • I mean pretty much any distro that isn't locked down will be good for programming. All you really need is a package manager with a selection of at least somewhat modern dev tools, which almost all of them have.

    • there are locked down distros?

      • I'm thinking things like where they don't give you access to a console. I guess like Android or things with heavy parental controls or whatever.

  • No, but some are better suited for programming, because each distro has different packages in their repositories. I find Fedora to be very good when it comes to having basically every dev tool available in their repos. Arch is good too but too unstable for actual work. But keep in mind in most distros you can add separate repositories that contains the software you want. You can also use Homebrew that contains lots of dev tools as well

    • I enjoy arch on my work laptop.

      • The last time I used arch it worked fine for 6 months then it needed to be scrapped because the network fully stopped working after an update. I've been on fedora ever since without a single issue. Arch is fine for personal devices where you can afford to spend half a day on troubleshooting a package that is too recent and straight up doesn't work because there's no real testing being done. I wouldn't put it on a work device simply because it's not a just works distro

  • Not that I know of. I do a lot of native development mostly on Mint and Endeavor. I use pretty much the same tools on both and get a nearly identical experience. I'd say just go with what feels good to you.

  • There's nothing like it, nor will it ever be, for a couple of reasons.

    Programming is a long running task

    Distros like Kali are meant to be used for quick tasks where you don't need data preservation (or when data preservation is a bad thing). Programming is the opposite of this, it's only about data (the program) preservation. Programming something that will get erased on the next boot is pointless on the long run if you need to program that again, and if you don't then what you're doing is not programming but something else that requires some programming.

    Programming is a wide term

    There are multiple languages/IDEs/Workflows/etc, ranging from fully free and open source to paid closed source, whichever you will use depends entirely on you, having all of that pre installed would be 99% garbage since you will only care about 1 or 2 of them.

    Programming requires setup

    Even if you had whatever workflow you use pre installed, to work on something you would need to setup git keys, install dependencies, compile the first version, etc... and that's all before you can start doing stuff. And you would have to do this again and again since distros like Kali are not meant to be installed (if they were they wouldn't need to come with all those packages pre-installed because you could just install the ones you cared about)

55 comments