Live data from Hacker News

Ask HN: What is the best Linux distro for a development laptop?

news.ycombinator.com

281–290 of 329 posts

Re: Ask HN: What is the best Linux distro for a development laptop?

#281
post #72

I'm using Elementary, and I really like it so far. It's based on Ubuntu, and the standout things for me were: 1. Gets out of your way really fast - very little config and setup to do. 2. Clean UI - very macOS inspired, so they try and get rid of everything unnecessary. To the point where it doesn't feel like a normal Linux distro with knobs all over the place. 3. Excellent built in terminal - can't stress this enough…

I can only recommend it in older hardware, because Elementary is actually very, very fast. I used in a 32bits/2GB laptop and it was the only usable distro there.

But not having windows menus in any application or contextual menus in the default video player is way too minimalistic for me.

Also, installing and using Chrome instead of the default browser results in three icons in the dock.

Now my laptop can run 64bits and has 8GB of RAM, so standard Ubuntu (and having menus) is a much better choice.

Re: Ask HN: What is the best Linux distro for a development laptop?

#282
post #64

The best development OS is the production OS, so just use whatever you're going to deploy on. Ubuntu (Server) and RHEL and Centos are ubiquitous. I think the easiest to manage in prod is Ubuntu.

TBH I much prefer to keep that kind of stuff in a VM so I can tear down or rebuild them from scratch. Of course, I still have Windows as my primary OS, if for no other reason than I'm too lazy to deal with the inevitable driver wrangling. (Caveat: PuTTY into an Arch VM is my dev environment.)

I use Ubuntu as my primary OS because things like Bluetooth and ebook-reader detection are more reliable than in Windows. Particularly Bluetooth headphones have been a PITA under Windows 8 and 10. They work better with Ubuntu.

However, my laptop has an Intel video card. I'm sure with an AMD or nVidia video card, using Linux can be more problematic.

Re: Ask HN: What is the best Linux distro for a development laptop?

#283

Earlier quoted context omitted.

The issues I had whenever I strayed from Debian weren't technical deficiencies of yum, etc, but rather the choices made by other distros. Installing "vim" and unexpectedly getting some sort of "minimal" version of vim. Packages which symlink or install large binary files or log files into /etc (suddenly grepping /etc becomes problematic). In general, lots of little decisions which make me exclaim the distro equivalen…

> Packages which symlink or install large binary files or log files into /etc wtf? who is actually incompetent enough to do something like this?

This was something like ~8 years ago, but here's an excerpt from my notes when using Redhat:

    # ls -l /etc/httpd/
    conf
    conf.d
    logs -> ../../var/log/httpd
    modules -> ../../usr/lib/httpd/modules
    run -> ../../var/run
Reactions:

    * Why is 'grep -r /etc' taking so long?
    * Why am I seeing log entries in the output?
    * Why am I seeing 'permission denied' on a bunch of socket files?
Debian seems to have the most respect for the FHS. http://www.pathname.com/fhs/

Re: Ask HN: What is the best Linux distro for a development laptop?

#284
post #148

ArchLinux is very decent distro. If you need something that you can tweak to be the continuation of your mind, environment designed exactly for you, it is Arch. If you have some time in the beginning to read archwiki, you will avoid a lot of problems in the future. After you understand how it works, it is easy to fix whatever breaks. For me Arch breaks extremely rarely. I use it for 7 years and remember no more than…

Yup. I switched from Ubuntu to Arch after I realised I was trying to make Ubuntu work like a rolling release distro. This lead to frequent breakage. Arch definitely has a learning curve, but it also helps you realise that some things really are as simple as they appear (if that makes sense). That said, if you're like me and prone to fits of 'mad science', you will find yourself breaking your OS from time to time. But…

Yeah, as a development distro Arch is fantastic. Nobody's mentioned the fact you get bleeding edge compilers, etc. as well.

But I could not imagine running Arch on a server. Each week I forget to update Arch it's like 1GB of updates a few of which are kernel related and need a reboot.

Re: Ask HN: What is the best Linux distro for a development laptop?

#285

Earlier quoted context omitted.

> Packages which symlink or install large binary files or log files into /etc wtf? who is actually incompetent enough to do something like this?

This was something like ~8 years ago, but here's an excerpt from my notes when using Redhat: # ls -l /etc/httpd/ conf conf.d logs -> ../../var/log/httpd modules -> ../../usr/lib/httpd/modules run -> ../../var/run Reactions: * Why is 'grep -r /etc' taking so long? * Why am I seeing log entries in the output? * Why am I seeing 'permission denied' on a bunch of socket files? Debian seems to have the most respect for the…

A few more, from my notes:

These were the default permissions of the apache log dir:

    # ls -ld /var/log/httpd/
    drwx------ 2 root root 4096 Jan 18 12:09 /var/log/httpd/
I guess their expectation is that only root should ever need to read a log file? Contrast this with Debian, which gives read access to admins:

    $ ls -ld /var/log/apache2
    drwxr-x--- 2 root adm 4096 Jan 16 06:25 /var/log/apache2
Redhat also decided to stick wsgi sockets into the log dir. If you try to run a wsgi process as anyone other than root, you get a permissions error:

    (13)Permission denied: mod_wsgi (pid=31431): Unable to connect to WSGI daemon process 'bob' on '/etc/httpd/logs/wsgi.1965.3.1.sock' after multiple attempts.
To fix this problem, you have to tell wsgi to stick its socket files somewhere more reasonable, like /var/run (which is what Debian does by default).

When you look up the modwsgi "Common Problems" page, the very first entry describes exactly this issue... https://code.google.com/archive/p/modwsgi/wikis/Configuratio...

'cfdisk' was removed from the distro because it was "a pile of junk". Really? That's funny -- I've used it to create dozens of Debian partitions and never had a problem. https://partner-bugzilla.redhat.com/show_bug.cgi?id=53061

Re: Ask HN: What is the best Linux distro for a development laptop?

#287
post #142

Earlier quoted context omitted.

Antergos and friends are fine, but they're not the whole Arch experience. (Some say they're not Arch, full stop.) Installers are brittle. They don't always fit every case you give to them. That's why vanilla Arch lacks an installer, because chances are you're smarter than a shell script. No matter what crazy, inane setup you might be facing, Arch can tolerate it. Specifically because it doesn't have an installer. (I…

> (I once dual-booted Mac OS and Arch, with a shared /home partition. It totally worked and was a lot of fun.) Interesting! What caveats did you experience? Did you end up symlinking stuff like ~/.firefox to ~/Library/Application Support/Firefox?

I was really only interested in keeping my personal files (like pictures or my development directory) synced. However, this still opened up a great big can of worms.

* Linux hfs drivers don't support journaling. Solution: turn it off, and suffer the inability of Mac OS to make a disk clean without booting into Recovery or Linux first if the computer powers off in a way that would dirty the disk.

* Mac OS user/group numbering differs from that of Linux by default. Solution: modify my user/group numbers, attempt to fix permissions, apply "Fix Disk Permissions" from Disk Utility judiciously.

* HFS is not case sensitive by default. I like case sensitivity, and so does Linux. Solution: make a case-sensitive HFS volume and ignore that it leaves Unreal Engine's storefront unable to launch.

* On Mac OS, /home is no longer /home. Solution: change the advanced options of my user to change the user home folder to /Volumes/UserData/rob, ignoring that this is a pretty awful hack and that if the disk is dirty or unmounted, login will simply spin forever.

* Bash scripts (and I think node-gyp?) running under Mac OS either 1) don't expect your home folder to have spaces, or 2) don't expect it to not be at /home/username. Solution: 1) name the /home volume "UserData" and not "User Data", 2) cry.

It was an ordeal, but Arch was totally normal and never broken by it. Everything in Arch worked perfectly well. And a couple of things were not so okay in Mac OS, but never any deal-killers.

All my application settings were either just synced automatically or nicely contained in .files ignoring the Mac OS standards, so I didn't bother doing too much symlinking.

However, I didn't have the foresight to shell out some extra cash for a 256GB SSD, so I had to deal with space limitations caused by the 128GB SSD. Larger apps like XCode or GarageBand had to be either shuffled around or diligently symlinked to an external drive that would later be mounted for use of those utilities. Typically apps on Mac OS are nice enough to not spray their contents everywhere, but the Mac App Store insists on downloading things to /Applications and not where you want things (so you shuffle things around) and still some apps are not just contained in .app files but instead download things to some arcane directories. Judicial use of `ncdu` was applied to clear out some disk space, as well as just a big ol' external drive.

At least it wasn't Windows. Which would likely die horribly if you tried something like this.

I wonder if maybe I should get a blog.

Re: Ask HN: What is the best Linux distro for a development laptop?

#288
How timely as I have just spent the downtime days of December catching up on current state of Linux (and BSD). I was a big visitor of Distrowatch and pretty much tested the big 5 as well as a few fringe ones that sounded interesting and were pretty up-to-date.

I was mostly looking for ease of installing as well as setting it up to be a workable internet/email machine, ultimately leaving it up for the guest who would house-sit for me over Xmas. My criteria on the opinions below are based on not only installing, but also; ease of updating, get it functioning fine on the current web (youtube, flash games, etc), install a few software choices I preferred and finally try to "break" the system by pretending I wanted the latest Mesa drivers than what came with it.

First, I see a lot of suggestions by many for Arch. I really do understand the following this distro and others based on it because of the super control of having complete choice of everything installed, BUT to recommend it is a bit much for anyone just wanting things to work for a while and then getting real work done after. This "rolling release" model of distro (and Gentoo even more so) is great for those wanting to learn more/experiment about linux or those who just can't stand having anything other than the latest release for every single item on the hard drive. Stick with binary distro's to save your sanity in the long run.

Off all the 10+ I tried, I recommend this:

1) OpenSuse Leap - Pretty up-to-date and long term support cycle. Even better look to the Spin GeckoLinux for well put together lite/minimalist Opensuse Leap spins. I really liked these and he has them made for all the popular desktop environments (I really liked Geckolinux Mate). OpenSuse "Tumbleweed" is their rolling release version for those wanting latest software.

2) Korora - A Fedora spin with great defaults, codecs, etc. Also has choice of DE and Korora Mate was the one I ultimately left on my machine for my house guest.

3) Any of the Ubuntu spins like Ubuntu-Mate or KDE, etc. I leaned more towards the LTS version (16.04) because I just prefer longer stability/support between major releases. I really liked the corny named Maui Linux. This is a spin of KDE Neon (which is KDE's own distro and based on Ubuntu). Maui has a cool idea to be part rolling when you want so you can get latest, then just freeze it and turn it into a long term just security updates LTS. I was able to get the latest KDE and Mesa just by enabling a repository, then I unchecked it and can stay with it. Maui was sort of ugly imo at default but I quickly was able to get rid of their theme to a vanilla Breeze/KDE. I also am enjoying KDE again because of Maui.

Also, Suse's Zypper (and now Fedora's dnf, which is based off of Zypper) I think are the best package managers, by far. Do research for why, but RPM has come a long way. I was able to update major versions of Leap and Fedora without a hitch. Install software and back out if needed. All very speedy on top of it.

Hope this was helpful.

Re: Ask HN: What is the best Linux distro for a development laptop?

#289
post #204

I recommend Fedora, it has more up-to-date stuff and very developer friendly. I'm probably biased though because the high-energy-physics stuff I develop for usually runs on EL-variants, so Fedora is naturally a good platform for it. I've always had more trouble compiling random things on debian-based stuff though (probably has something to do with default linker flags and poorly-written packages). RH has a big virtua…

If the user just wants to get work done and doesn't care if they have the latest thing, why not CentOS?

I wonder this too, because on our servers, which are running WHM/Cpanel, they're all running on CentOS and it seems to work very well. I'm on macOS privately.

But yeah, for some reason, on our servers, it seems to work solid, but here it's not very liked as dev distro.

Re: Ask HN: What is the best Linux distro for a development laptop?

#290

Earlier quoted context omitted.

> Why? Because if you miss three releases then you have to do three upgrades. If you setup a system and then come back to it a couple of years later and find you need to upgrade you can plan on fighting through multiple system braking upgrades. Yes I know you can mitigate this with LTS but that's a big compromise.

> Yes I know you can mitigate this with LTS but that's a big compromise. Genuine question as a Ubuntu user, where do you win using Debian on a laptop? I totally understand using it on servers, as it is the definition of 'rock solid' and you can ensure that it will work 100% of the time. Admittedly I don't pay a huge amount of attention to the differences, but isn't using Ubuntu LTS compromising in the same way as Deb…

If you run Debian on your servers then having the same software, and the same versions available, is a good for consistency.

There's something to be said for running multiple distributions so you spot binaries in different places, etc, but really running the same system "everywhere" has more value to me.

My laptop/desktop run Debian stable, my servers run Debian stable, and so I know what to expect.

When I need things that aren't available, or have to be backported, I know how to do that. For extreme changes I can use containers, or virtual machines. But for the past few years I've not been convinced in the feature-churn or value added by Ubuntu. (Especially when you see that their "universe" isn't really supported by anybody - hell even looking at bug reports for their supported packages is often depressing. Bugs open for very long time with no updates because of lack of people willing/able to fix them - combined with forum advice which is often the blind leading the blind.)

Post reply on HN