I run vanilla Arch with niri (Wayland), Waybar and a few other tools to create a desktop environment. I didn't do any special kernel or app specific tweaks for performance.
The machine boots using 1.1 GB of memory and total disk space after installing a bunch of apps is ~10 GB. Browser, Docker, video editor, image editor, LibreOffice, OBS, VMs, a ton of CLI tools and everything you'd expect to have a fully working and usable system is there.
It's a wonderful environment on 2014 era hardware. Granted I have 16 GB of memory but it would be fine with 8 GB even when running non-trivial Docker based projects and doing 1080p video editing.
Even Silksong runs at 60 FPS with a GeForce 750 Ti (2 GB) GPU. Although I splurged on a used AMD RX 480 (8 GB) to get more things to run nicely in parallel. Wayland is very picky with limited GPU VRAM, especially with NVIDIA cards.
I also run the same set up on a more modern laptop with way better hardware but things aren't much faster unless I'm very CPU bound.
Everything to get the system up and running in 1 command and 10-15 minutes is here: https://github.com/nickjj/dotfriedrice
The reason this advice is bizarre is that old memory isn't actually that dear. The machines that would have had 2GB of RAM or less would be from the Core 2 Duo era or so, taking DDR2 or DDR3, and typically supported 8-16GB. 8GB of DDR3 is currently in the ballpark of $10 and the machines that take it can be found by the pallet in the "free e-waste" pile, so who is going to suffer <2GB instead of 8GB over $10?
You don't even have to go that old. There are so many companies that upgrade tiny pc's its created a whole self hosting community with the tiny lenovo, hp and dell unit's. It's not only Windows that can be replaced with old hardware but also many online services with proxmox for cloud/nas/dns/vpn/multimedia etc. Of course these are not 2GB systems but you can do some pretty cool things with 8 and 9 year old systems that are literally decommissioned because they are too old. Although a friend of mine who works for a MSP gave me a Lenovo m710q tiny a month ago and its made a pretty good Debian Desktop for my workbench in the garage. I lucked out there because even these tiny's are now going up in price. People have caught on.
The overall sentiment expressing the growing gap between software needs and hardware capabilities is sound. This is where FOSS projects shine who put deep thought into providing the same features modern users need into an OS that can intelligently utilize older computing resources. I've been in the industry since the Nineties and it still amazes me how many companies invest so little into backward-compatibility and performance during their OS and application design process.
I've had my Panasonic Toughbook (CF31-5) for almost 10 years and while it's a dinosaur to some, it's a major upgrade from what I had before in terms of portable computing. Its max memory is 16 GiB DDR3 SDRAM on an Intel Core i5-5300U. When I first bought it I tried Debian and Ubuntu, but even back then those ran slow. I installed Xubuntu and have run that ever since with no performance issues whatsoever.
Because I primarily use Emacs and TeX tools, writing Elisp and LaTeX, the system is more than enough for me. I've not played graphics-heavy games, run GPU-intensive UI or done any heavy data plotting. However, one benchmark I do have: I am able use the test automation framework required for my day job with ease. I run that software on Xubuntu because on my work-provided systems (Windows 11 and macOS Tahoe) the application crawls and is practically unusable.
And not a word about MGLRU and its settings. It has the biggest impact on performance on lower-end PCs, especially with low amount of RAM and slow HDD.
Here's a post from "le9" patch user which was created by ChromeOS developers much before MGLRU, but exploits the similar idea: keeping the essential file cache in RAM for as long as possible. It's usually night and day on low-end machines.
- https://www.phoronix.com/forums/forum/software/general-linux-open-source/1267300-le9-strives-to-make-linux-very-usable-on-systems-with-small-amounts-of-ram?p=1267789#post1267789
- https://www.phoronix.com/forums/forum/software/general-linux-open-source/1267300-le9-strives-to-make-linux-very-usable-on-systems-with-small-amounts-of-ram?p=1268100#post1268100For older hardware: Void Linux, Xubuntu or maybe Linux Mint Xfce. If you want something up to date that needs to be online.
AntiX and Puppy Linux are a bit too rough, in my opinion. I'd rather leave the machine with some fully updated old Windows version designed for that hardware, offline. Works very well for retro gaming, ripping CDs and stuff like that.
I don't know how a "complete" guide can completely fail to mention NVIDIA. It doesn't seem straightforward to support older NVIDIA cards (on any OS, to be fair, not just on Linux). That's currently one of the issues with my 2013 Dell laptop that has a Quadro K1100M.
Anyone remembers Ross technologies ?
When I was a student mucking around the trashed corner of a retired hardware room, I found a very dusty box that looked promising. It was a Ross hyperstation.
I was able to install Arch Linux and Debian on it. But I think it had some corrupt RAM and would crash after a few days if lucky or hours if not. That was a pity. This was the first system where I could see 4 cpus and had got pretty excited. This was a time when there were rumours of Intel dual cores going around. I was planning to run it as our NFS file server.
I was able to bootstrap GCC on it too, after a few tries.
I had a similar experience trying to use an old laptop with 2GB of RAM. I was surprised how much it struggled with basic tasks. I remember my first computer with 32MB of RAM. Obviously we live in a different world now but still, it's not like I was trying to do anything more ambitious than what I used to do on that PC.
One relevant thing to check with older hardware: https://unix.stackexchange.com/questions/631217/how-do-i-che...
https://en.wikipedia.org/wiki/X86-64#Microarchitecture_level...
The post is missing a section about video cards.
My old laptop from 2006 has an ATI x1600. I remember that I lost v sync with kernels past 3.something so I had to put the kernel on hold while the other packages updated around it. That was around 2012. Maybe the issue is fixed by now but old graphic cards can make an old PC run only as a headless server. It's been years since I booted it.
I like running Linux on older Dell Optiplex systems that you can buy off of Ebay. They usually come with 8GB ram, 256 or 512 SSD and usually 4 to 6 cores (maybe 8). All of the ones I bought use Intel CPUs.
They run Debian or Ubuntu great although I usually run them headless and just SSH into them. One experiment I did was with Talos / K8s with about 3 of these and it worked great.
Nice to see BunsenLabs getting some love - smooth way into a GUI Debian
I prefer Boron over the more recent Carbon due to some of the panel changes (although presumably this is all configurable somewhere)
https://ddl.bunsenlabs.org/ddl/
Boron also probably requires this fix:
I use Pop_OS! on my old 2014 Macbook Pro (16 GB LPDDR3, i5-4278U with 4 cores). It runs superbly with Gnome3. Given that it is 12 years old now and the latest supported macOS version with opencore legacy patcher was stuttering and unusably slow, there is a second life now for the machine. I mostly use it as a headless home server, the built in battery serves as UPS, keyboard and trackpad make it easier to setup and debug things.
I changed the battery myself (50€ replacement from Amazon) and it looks as good as new (one benefit of the aluminum chassis and glass display is that they can be cleaned quite well). Hardware support from Linux for those intel machines is great nowadays: WiFi, Bluetooth, trackpad etc all work.
Great post. I just revived an old PC as well that was gathering dust by installing Linux on it. Also upgraded the hardware from a i3-6100 using iGPU + 8GB RAM to:
- i5-6600K (€20 used)
- ASUS STRIX RX 480 8GB (€20 used)
- 16GB DDR4 (€50 used)
€90 all in for an incredible Linux machine that still runs games great at 1080p. Probably even that amount of RAM was overkill, but it's 3200Mhz instead of the old 2133Mhz.
Swap the HDD for an SSD first makes more difference than the distro choice.
What’s a good small laptop that’ll run a recent Linux distro? I’d like to get one to have an ultra-portable machine for doing lightweight development work - I don’t need much more than a text editor and a C compiler.
Would a second-hand 11” MacBook Air or 12” MacBook be a good choice?
With the crazy hardware prices. It's time to go lean. Embrace lean software and learn to do with less or pay the price with your hard earned $$$.
And you can go even smaller with TinyCore Linux [0] or the xwoaf-rebuild [1]
0, http://www.tinycorelinux.net/
1, https://web.archive.org/web/20240901115514/https://pupngo.dk...
Honestly it comes down to what do you mean by using Linux. In 2026, or well at least since the mid 2010s, the biggest hurdle will be the web browser. Do you need that? If yes then you are already in the higher system requirement pool. If not then pretty much anything goes, like the options I mentioned above. And even then you can use curl, wget, aria2 etc to access online content to some extent
I would advise against using Lubuntu in favour of MX Linux or AntiX for older systems.
It's interesting how on a server 2 GiB of RAM can get you quite far, however on a desktop that's pretty much the minimum feasible amount. It used to be the opposite: servers needed plenty of RAM and CPU compared to desktops
Alpine Linux Combined with OXWM isn't a bad idea. If your install is small and you have enough ram it's possible to run it from RAM with persistence.
Don't get your OS recommendations from an LLM-generated article.
Don't do zram, do zswap.
The big difference is zswap is dynamically managed by the kernel and zswap sends out compressed pages to swap.
Please consider if you really need zram when zswap is an alternative: https://news.ycombinator.com/item?id=47500746
why not just take stock Arch Linux? I feel it as minimal at it can, Am I wrong?
It is astonishing to me just how bad end user software has gotten over the past twenty years. It's just goofballs. It's not like that point was when software started requiring more resources, the "What Andy giveth Bill taketh" aphorism was coined in the 90s after all. Software gets complicated over time. Every bug fix or added input validation or whatever adds code. That's fine and appropriate. Convenience and integrity add code/complexity. That's not what I find so bothersome.
I find 2006 an interesting horizon. It was then that the average home computer massively jumped in processing power compared to the software running on it. For the vast majority of users the computer spent more idle time waiting for input than users waited for output. Of course for some users there's never enough power but for most all of their tasks were effectively instant. Even heavyweight (for the time) stacks like Java ran incredibly well. He'll even Emacs could run well!
Then the curve seemed to invert. Hardware kept getting more capable with even faster CPUs, more cores (on common consumer machines, and more RAM. As the article points out a "lightweight" Linux DE with native apps really flies on such hardware.
But more development seemed to move to the web. More JavaScript required more powerful JS engines and those are up more and more memory. More shit loaded into the DOM means more and more objects on the heap with more pointer chasing.
Modern stacks are really only fast because modern computers brute force their way through them. A simple CRUD type task that fly as a VB or Delphi (neither stack performance kings) app on Windows 2000 now requires a 2GHz dual core CPU with 4GB of RAM as a baseline thanks to it now being a web app.
Using a twenty old machine with native applications and the CLI feels to me like a super computer compared to the computers I first used (Apple IIs). A Core 2 Duo is a stupidly powerful CPU for most tasks. If you can get by with a command line workflow even a Core 2 Duo is crazy fast.
/soapbox
For "older but not truly retro" devices, I personally recommend linux mint. I have a fx6100 running it.
> They are slow because Windows got heavier while the hardware stayed the same.
That is not true. They are slow, because ALL software got better and more advanced and that is not only the operating system. It always makes me mad when people say that macOS is so optimized you can do more than on windows.
No. Old hardware not having a hardware decoder for modern youtube videos won't play them.
Modern webpages full of interactive realtime features won't fit in the RAM or will be bottlecked by a cpu. Yes, the modern linux will run, but are you going to do anything more than opening a notepad or old software? No. You are not going to use modern web apps or software on it.
Is it okay? Yes. Optimizing for old hardware is EXPENSIVE. Just move on.
If you think Linux is a good candidate for older hardware (which it is) wait until you try a BSD.
>If the machine cannot run a lightweight Linux desktop at a usable speed after you have applied the optimizations in this guide, it is time to recycle it
or better yet, install NetBSD. That system will run on anything that old :)
Slackware and Hyperbola GNU/Linux still run fast. Just pick XFCE instead of KDE under Slackware.
Deselect KDE if you don't need it. If the machine is old, it's better to use XFCE and install the rest later.
If you install and setup slapt-get you might install some nice KDE/Plasma software later to run under KDE. Then you can set the QT5 theme to GTK2 under /etc/profile.d/qt.sh (chmod +x it) and this content:
export QT_QPA_PLATFORMTHEME=gtk2
Slackware is not 100% free but you can compile a libre kernel from FSFLA with ease and drop it into the UEFI partition or /boot and run the required grub/lilo/elilo command later.I’ve got a 15 year old workstation that I’m breathing new life into, but fortunately starting from a higher baseline. 24GB of RAM is going to 96GB, and it turns out it should be able to use an NVMe drive, so have a card and an M2 drive on the way. The annoying thing is that the GTX 460 is no longer supported by the Nvidia driver so I’m back to nouveau. That might get replaced with something more modern. I had an old Mint installed and decided to blow it away with stock Debian, and Claude’s setting up nix VMs for itself to run in. It has been crazy how $4k in 2011 for an SR-2 system has yielded a long productive life for this box.
> They are slow because Windows got heavier while the hardware stayed the same.
Heavier and then full of spyware, pardon, telemetry.
It's not just old hardware: I've got a laptop, some Lenovo thing, I bought used from a friend (as part of a pack with a NUC etc.). It had Windows 11 on it: I was Windows-free since many years, decades even already. So I got to "experiment" Windows 11 a bit again.
I don't understand how people can use a computer that does so many heavy updates, for a start.
Then Windows is simply dogshit slow as TFA point out.
It's not a beefy laptop: it's got only 6 GB of RAM (6 is a weird number but it is what it is) but...
It works totally fine under Linux (actually I'm typing this from the couch on this little laptop). Sure, my "24 GB of RAM" laptop is better, but with 6 GB this laptop under Linux definitely works. It runs OrcaSlicer fine, etc.
It's not just on older hardware that Linux is much better than Windows: on modern hardware too.
>The honest assessment: If the machine cannot run a lightweight Linux desktop at a usable speed after you have applied the optimizations in this guide, it is time to recycle it responsibly. Most municipalities have e-waste collection programs. Do not throw it in the trash. The components contain recyclable metals and toxic materials that need proper handling.
This is the whole point.Linux helps in that judgement whether to keep or throw the box.
OS/2 might also be an option on some of this older hardware.
Thanks for this link!
"antiX is my top pick for truly constrained hardware. It runs on systemd-free Debian Stable, uses around 256MB at idle, and includes a full desktop experience. The trade-off is a less polished interface compared to Ubuntu-based options. If you need something even lighter, Puppy Linux runs entirely in RAM and can resurrect machines that most distros would reject. The learning curve is steeper, but the performance is unmatched."
I would actually recommend Bodhi Linux for under 2GB. https://www.bodhilinux.com/ I installed AntiX on a 2GB Chromebook, and it had issues crashing on browsers under even a couple tabs. It might have just been the laptop I bought from Goodwill, or the fact that I disabled swap, because it was an old 16GB soldered SSD/NAND drive that I wanted to avoid heavily writing swap space to. https://www.youtube.com/watch?v=VhozuNv-J7Q
Bodhi is more featured with a more conventional package manager than Puppy, and while I like booting from RAM, it's learning curve is a little steeper and less maintained than Bodhi, which is getting a new release soon: https://www.reddit.com/r/bodhilinux/comments/1qqrfyj/is_bodh...
I did a video with Bodhi on Virtual box with 1GB since I didn't have the Chromebook with me at the time, but it idles around 350MB (possibly before Chromium running): https://youtu.be/61xI-g--ozs?si=y7ukxyEGSj_kNPF7
For additional package manager support, a nice UI (Enlightenment) and compatibility, it's far more preferrable than 250MB ideling on AntiX with less support.
For Atom N450 series, I recommend eXe Linux: https://exegnulinux.net/ I have a video of that too.
I hadn't heard of BunsenLabs, but I will definitely check it out (Note: Atom N450 chips support 64 bit, even on single core, so they might work great on those machines)