Laptop with external monitor: need advice on which Linux distro/WM to use

Hey everyone,

I am about to receive a work laptop: the Lenovo T490 (could be changed to T490s, unclear as of yet).

I am after the perfect Linux + WM/DE combo that allows for seamless work on a main display at 2560x1440 and a secondary display at 2560x1080, with the best font rendering that Linux can offer, and without requirements about [much] external hardware.

Which distro?

I have mostly made up my mind that I am going to use Manjaro. Arch itself is amazing – extremely fast (it beat out my iMac Pro on a few I/O tests so I’d guess kernel overhead is smaller), well-maintained software repositories, packages kept up to date, and it has never broken a working X11 configuration (unlike Debian and Ubuntu, although that was in the far past so I might be very unfair to them here). And the out-of-the-box everything-is-working trait of Manjaro made it my favourite.

I have found that Debian/Ubuntu and the like aren’t my cup of tea in general. apt seems to nag you too much about dependencies at just the right time when you are simply trying to install a piece of software and move on with your work. I know this isn’t a technical evaluation – but I am a human, not only a programmer, and those distros did rub me the wrong way enough times to start wanting to avoid them.

I’ve heard good things about Pop!_OS and sometimes Slackware but I am not willing to invest too much time in learning a new distro’s peculiarities, I admit.

Still, if you have an advice – that includes a very quick onboarding guide, please! – shoot it my way. I’m still curious, just don’t want to sink too much time.

Which WM?

I’ve been using XFCE 4 for a long time when I worked in Linux (most of my career). It’s nothing beautiful or even that much customisable but I don’t have big requirements either. I’d like to have multiple workspaces and be able to bind keys to literally any and all command, move some bars to the 4 different corners of the desktop, add a few monitoring widgets here and there… and that’s pretty much it. I don’t even care about sound or Bluetooth. Very likely I’ll buy an USB-to-Ethernet adapter and won’t use Wi-Fi either.

Still, if you have a recommendation – with some screenshots if it’s not too much trouble – I’d love to read about (and see) them. I feel that I never really went deep customising a Linux WM and I know I missed out so I can see myself sinking some weekend hours in trying to invent a badass UI that I like.

Options I am aware of

  • KDE. Don’t know, always felt big and bloated and booting a brand new Ubuntu KDE to see 3.5GB of RAM already taken brings too many Windows 10 memories. Should a WM / DE be that heavy out of the box? I dislike it on that basis alone.
  • GNOME. It gets a lot of praise these days and I admit I am poorly informed on it, including resource usage. Any downsides?
  • Cinnamon. Zero clue. Heard praises but I know absolutely nothing about it. Would you recommend it and why?
  • i3. Also zero clue. Used it once long ago, kind of liked it but didn’t want to spend time customising it and ditched it. Nowadays I am more open to tinker with my WM / DE and make it my own.

What I’m looking for

  • Visual cleanliness. I don’t need macOS level of polish although I’d enjoy it. Good no-nonsense UI with enough ability to move things around and a few dark themes is good enough.
  • Excellent font rendering and good [re-]scaling capabilities. This is my top requirement. The laptop’s builtin display is at 2560x1440 while the external display is at 2560x1080. Would that be a problem for the current WMs / DEs? I want the best font rendering possible in Linux without weird glitches when moving windows between both displays, or grainy fonts because both displays have different PPI.
  • As less bloat as possible. I don’t want mail server, httpd, ftpd etc. Let me install sshd or LibreOffice if I want to, and get out of my way. Give me a good working system out of the box, with minimal dependencies.
  • As much speed as possible. I’ve been blown away by what an i3 CPU laptop with a pretty regular SSD (no more than 500MB/s read/write) can do compared to beasts like the iMac Pro (the observation was under Manjaro/XFCE). I am looking for a system whose resources are reserved for me and not for the 500 daemons doing hell knows what (looking at you, KDE).
  • Easy isolation? I know this is a work in progress in the Linux WM / DE space and only Qubes seems to have gotten this [somewhat] right. Is there a way to prevent any program to capture key presses, scan the clipboard etc. privacy intrusions? I’d like to have and enforce an easy to setup policy which does common sense isolation. But is that even possible nowadays in Linux at all?

Any thoughts you might have, I’d love to hear them. As you might have guessed, I am particularly interested in low-setup Linux installs :slight_smile:

2 Likes

Although I’m not a Linux user myself, I would think most could handle those displays and that it was more down to the hardware of the machine itself :smiley:

1 Like

I coudn’t possibly recommend a distro that I know for sure supports the resolution you’re using (I don’t have a display capable of that, anyway :smiley:) and my own experience has been limited to Centos (headless) and Ubuntu for my dev environment.

I can say that I know Ubuntu offers a kind of ‘try-before-you-install’ installer so you can just run it from a USB drive/key.

In addition (regarding Ubuntu), to some of your other requirements:

  • It’s clean (subjective)
  • You can opt out of the bloat by customising the installation

I haven’t ever tested it for performance, although from personal experience I cannot say that I’ve ever noticed any particular issues, but that will depend greatly on use case.

As for isolation, again I’ve not used it, but there are a few articles that discuss and introduce it: https://docs.ubuntu.com/core/en/guides/intro/security

I’m not trying to sell Ubuntu (edit: I know you expressed a dissatisfaction for it); it’s the OS I’ve used predominantly for the last couple of years when I wanted a gentle intro to working on a Linux system and seem to have stuck with it since :slight_smile:

3 Likes

So it looks you are only looking for someone to say what you wan to listen :wink:

Ubuntu breaking X11 its really from the past, like 2012, last time I remmeber to have the issue, that was also when I started to use Ubuntu, thus maybe was a rookie mistke, spcially when I was comming from Windows.

I don’t know Manjaro, but what kept me on Ubuntu is really the out-of-the-box just works.

Ubuntu 18.04 here, and a picture is worth 1000 words, thus here it is one after a restart:

I think that this is more a concern about if the graphics in the motherboard of your new Laptop support it.

You can always use the selinux or apparmor to tight things up.

Also you can use LXC containers to run another Linux distro inside your current Linux distro. So like one for work and another one for personal use.

My approach is to use heavily docker for my developer flow, everything runs inside a docker container, even my code editor.

For personal use in sensitive stuff I always use Firefox from inside a docker container, like when banking.

2 Likes

Sorry I sounded that way. I simply meant that from what I’ve seen so far, Manjaro seems to fit my use-case best.

And I stopped using Debian back in 2012 I think. So okay, I am willing to accept this is not happening for a long time now. Cool.

How is the story with adding PPAs? Some years ago people complained that when wanting to add a specific PPA for a program, it also included dependencies which were in conflict with Ubuntu’s builtin PPAs. This kind of scared me off of it back then (and it was even worse in Debian, apt would outright refuse to install certain packages from external repositories if they contained dependencies with newer versions compared to Debian’s repositories).

Basically, I am after something like homebrew on Linux. Arch/Manjaro’s pacman has been performing really well in that regard but I admit I haven’t stressed it as much as I did apt back in the day.

Actually very cool! Happy to be wrong and I am really glad they have been improving it. I mean, my Manjaro+XFCE4 still takes ~420MB of RAM after reboot but eh, 1.7GB is quite minimalistic as well and nothing to scoff about. Thanks for posting this!

It does, but I’ve heard many people complain (including on HackerNews) that having two displays with different PPI values trips X11 and font rendering becomes suboptimal. I guess I’ll just have to find out for myself if that’s the case…

Yep, didn’t want to add those to my skillset but I definitely will because X11’s default behaviour is atrociously insecure – it’s actually worse than Windows! Didn’t want to become an expert in that but I have no intention of allowing e.g. Chrome to scrape everything I type or scan the graphical surfaces of other programs.

Still haven’t adopted that for everyday use but I really should. Only used it a few times for specific PHP / MySQL / PostgreSQL / Java install versions but it must be carried over to everything, as you do.


All in all, I suppose there aren’t huge differences between most distros but I would still like frictionless installs and, if possible, rollbacks – not sure if anything else except nixOS offers that though.

2 Likes

Wat? KDE5 is the lightest of all the DE’s you listed. A full KDE5 setup uses ~140megs of RAM. Though Kubuntu does like desktop search’s so it does install an indexer that will eat some more memory (generally 200megs or so) until it finishes indexing (where it then drops to ~20megs). You absolutely should not be seeing 3.5gigs being used. I’m using Kubuntu right at this moment and even with chrome running I’m not even using a whole gig (I have intellij IDE running over a remote X so it’s not using any local memory).

Gnome(3) is generally the most ‘heavy’ of the DE’s listed. Cinnamon is basically Gnome2 but kept updated, it’s lighter than Gnome3 and a bit faster but still slower and larger than KDE5. I3 I’d probably say is more light than gnome3/cinnamon but not as much as KDE, it’s window handling is top notch (if you like tiling DE’s, otherwise stay away) but it definitely lags on occasion when having to re-tree windows when you need to do that.

KDE5, outright, and if you do like how Mac’s look you can get it looking like those really easily. Latte-dock is the big centerpiece for those, lol.

KDE5 is also the only one of all those listed that actually do subpixel scaling correctly (though various other programs may or may not work as well, like gnome programs are particularly finicky, but the DE itself will look great).

That’s more of a distro thing, Ubuntu doesn’t come with the server but it does come with LO, however that’s easily removed if you so wish.

The big thing about Ubuntu based distro’s is that they “do” have a lot of stuff, not pre-installed of course, but it has a lot of stuff that you can just install-and-instantly-use that often take more effort in other distro’s. It is not always absolutely up-to-date but it is pretty well updated (far more so than things like fedora) and tends to not have newer broken packages that you occasionally get with, say, arch.

No clue what qubes is, but snaps and flatpaks packages both have isolation unless you install the package specifically with open access (which both systems try to keep you from doing unless you really really need to). Plus docker is perfect isolation as well, lol. And that’s only scratching the surface. Linux has so many ways to isolate that it’s almost crazy. SELinux is the extreme way for example (detailed control of any syscall in any way with any pattern between any disparate things to an absolute degree, I use selinux at work for example, though it’s way too fine-grained for desktop use unless you are really ocpd’ish, lol, snaps/flatpak’s are perfectly good for most things, and (k)ubuntu comes with a more ‘general’ selinux style thing called apparmor that you can enable as well).

I really would recommend something based on ubuntu though, sure it has a lot but it also has the absolute best compatibility with an amazingly huge amount of software and hardware, it’s the one that will generally ‘just work’. Snaps and Flatpak’s use LSC style containers built into the linux kernel to get isolation (sadly this does mean that the system theme’s don’t always translate over unless you give them access to those files, lol).

Well when you add third-party stuff they can do whatever they want, but it’s not hard to hold package versions either. However, the ubuntu ecosystem has significantly moved toward snaps and flatpak’s the past couple years, which don’t have any such issues at all.

Yes, that is very hard for X11 to deal with, KDE5 mostly works around it as best it can (better than any other DE), but using wayland with KDE5 will just get it all working correctly regardless (more so than any other DE as well).

2 Likes

So much pieces of info, thank you! :heart: You definitely did change my mind on modern Ubuntu and especially KDE (5). I’ll give it a try on my spare laptop first (whose installation I recently broke anyway; while I was trying to format an external HDD I accidentally dd-zeroed the internal SSD, lol).

QubesOS.

I have exactly zero clue what you just said. :laughing: Last I checked Ubuntu still uses apt; does that use snap / flatpak files instead of .deb files?

I have heard from other people about SELinux and AppArmor and it was mostly positive things. I guess I’d have to read a bit more on them but it sounds like too much stuff to learn than I am willing to currently… :confused:

Not sure I understood why exactly. Is it because of AppArmor, for example? Because of the apt repositories? Because it works with KDE 5 seamlessly? (But then, wouldn’t an Arch-based distro like Manjaro also work seamlessly with it?) Or is it because of snap / flatpak software packages, which offer lightweight isolation?

I have only heard you and 2-3 other people on HN praise Wayland. Note that I am not appealing to statistics – they are often an awful way to gauge quality! – but I remain somewhat sceptical. Isn’t Wayland something that kind of shuts the door in your face if you want compatibility with older apps, or did I get this wrong (very likely).

2 Likes

Oy I shuddered at reading that! o.O

Interesting looking… looks heavy though with all the VM’s…

Oh, apt is just a normal package manager, installs things to your system itself. There are a number of different style on linux though:

  • flatpak: It’s a self-contained little container of a runnable program, has everything it needs, the linux kernel gives it interfaces to work with things via the CPU virtualization sandbox calls (but without virtualization, I.E. it’s sandboxed but fast). You can ‘link’ things between the main system and such a program running in it, usually done to give them config directories so they can’t read anything else or so, and mapping to specific files when, say, a user requests to open a file, it’s really nice.

  • snap: Basically ubuntu’s version of flatpak, they were built at the same time, both run fine on ubuntu

  • appimage: Fully self-contained file of a full program, just double-click or however you start things and go, no installation, but it does run on the ‘main’ system.

Not talking about other distro’s specific package managers as well. ^.^

But (K)Ubuntu has been heavily pushing for snap and flatpak’s for as much stuff as they can, for example browsers basically exclusively come as snap/flatpak’s now.

SELinux is way way beyond overkill for anything anyone would really need to do, it was designed for highly secure servers, hence why I use it at work. ^.^

AppArmor is basically SELinux-light, comes in ubuntu but I’ve not used it yet (I know selinux well enough that I’m comfortable putting it on other things now, but wow the amount of configuration you need with selinux is beyond insane, you really don’t want to touch selinux unless you really require crazy amounts of security).

Because almost anything you find will ‘just work’ on Ubuntu distro’s. There’s basically PPA’s/deb’s for everything possible, it runs snaps/flatpak’s just outright, if you run games (especially windows games) then basically Steam and its entire ecosystem runs on Ubuntu and its more painful to use it in other places. Ubuntu just has such an overwhelming amount of linux marketshare that it’s basically no contest. Others have their positives, but if you just want to ‘get work/play done’ then some distro of ubuntu is what you are looking for.

XWayland is an X interface on top of wayland so you can run older apps, it generally comes with any wayland install you’d use so that’s not an issue. Wayland isn’t quite “Done” yet is the thing. It will do 95% of what anyone needs it to do now, but it’s still not finished, however it is getting really really close…

2 Likes

Pretty interesting and useful info on flatpak / snap, thank you! :slight_smile:

Sounds like too much configuration. :confused:

Additionally: is Wayland doing a better job compared to X11 in terms of modern sub-pixel font rendering? If so then I’d opt for it. Otherwise I am not seeing the appeal. Why would a Linux user who is willing to spend a weekend on setting up their machine pick Wayland over X11? What would your reasons be?

2 Likes

No configuration, it’s all automatic and comes with every wayland setup I’ve seen. :slight_smile:

Yes it does, significantly so. And normally ‘you’ wouldn’t set it up but the distro maintainer would.

A quick off-the-head list of bonuses of Wayland over X11:

  • Faster.
  • Lighter weight.
  • Every program gets its own framebuffer.
  • Built in compositor that actually prevents things like tearing.
  • Interface agnostic, what I mean by this is you know how X11 is designed for a 2D screen? Wayland works for 2D, 3D like VR, etc… etc…, this means that when a program opens and it wants to, say, position itself precisely at coordinates 120x376 on the screen it can’t, because wayland doesn’t have a concept of a screen (though there are requests for ‘suggestions’ like that).
  • A whole lot more I can’t really think of right now because headache from weather… ^.^;

However, there are some bonuses of X11 over Wayland:

  • Many decades of development means it’s fairly bug free given the limitations of its architecture (which are pretty limiting, for example in subpixel aliasing).
  • Remote UI running via an X tunnel (wayland will get something similar once the renderpipe extensions are complete, looks like this year).
  • Can be faster if the hardware has no vulkan support (one reason wayland is faster is that vulkan is used to accelerate a lot of operations, though even without it one wouldn’t call it ‘slow’ by any stretch).
  • Um, I think there used to be some xwayland compat that caused some programs to not do things like position right, but I think those were solved in 2019…

In general as it stands now, just use whatever your distro provides. Like I think Kubuntu uses wayland if it thinks you have a great hardware setup for it otherwise it uses X11, its all transparent.

For note, NVidia closed-source drivers do not work with xwayland (you can’t 3d accelerate with nvidia closed source drivers so no, like, X games or so, which is mostly Steam), so if you have nvidia Kubuntu would run you with X11 regardless. The reason is that nvidia is refusing to support the vulkan standards for backend framebuffers and instead of pushing their own proprietary thing that no one else uses or really ‘can’ use. However there are people writing converters from nvidia’s garbage to the standards that will be done ‘sometime’, but its slow going because nvidia the past 5 or so years has really exceptionally pissed-off the linux development community with their utter stupidity. On the plus side Intel and AMD both have open sourced their GPU drivers and merged them together to develop together, so they are utterly rock solid and fast.

3 Likes