View previous topic :: View next topic |
Author |
Message |
lars_the_bear Guru
Joined: 05 Jun 2024 Posts: 522
|
Posted: Wed Jun 26, 2024 12:13 pm Post subject: Linux on old/underpowered hardware: is the battle lost? |
|
|
Hi folks
I'm drawn to Gentoo because it offers the possibility of creating a fairly minimal Linux desktop install. The Fedora installations I use for business are using about 12Gb of RAM just to show the desktop and a web browser; my Gentoo installations (with Xfce4) use 470m to do the same thing. The Fedora system idles with a load average of about 0.2; the Gentoo installation idles with a load average of zero.
Why does this matter?
I will be retiring this year after 40+ years in the electronics/IT industry. All the over-specified computers that currently clutter my house will be going back to my clients/employer, and I'll be left with a handful of laptop and desktop computers of 2012-2015 vintage. I have Gentoo on one of these, and it works really well, apart from a few nasties that I've raised elsewhere. These machines don't do very well with Fedora -- not once I try to do any real work, anyway.
But.... there's all this compiling. Lots and lots and lots of compiling. Some things, in fact, I can't compile, even though I feel I need to, because I don't think a 10+ year old computer ought to be subjected to 100% CPU on all cores for days on end. I followed the official guidance, and tried to do a full update after the first week, but it wanted to update Firefox and a bunch of other stuff. Leaving aside the potential for damage to the computer, we're in the middle of a bit of a heatwave here. It's hard to keep my office cool, without running a 200W heater on my desk for days on end.
So I've sought out binary builds of the software I need. Sometimes I can find them, sometimes I can't. Many of the 'official' binaries are built for wide compatibility, and they clash with the USE flags I have. Sometimes I install them anyway, and sometimes they work, and sometimes they don't.
I've set up a private binhost, so I can reinstall more easily if I have to. Of course, that's only useful to the extent that the stuff on the binhost isn't already out of date. by the time I need it.
Now, I'm aware that folks are running Gentoo on their 486 systems and what-not, but I wonder if that's just an exercise for enthusiasts? It doesn't sound very practical in the long term. Even with the computers I have -- all of which have > 16Gb RAM and > 2Ghz CPUs -- Gentoo doesn't seem very practical. It's just compiling -- constantly.
What I can do, I suppose, is install all the software I will ever need, all in one go, and then never update again. I'm not hugely concerned about the risks involved in doing this, but I suspect that, sooner or later, I'll need to `emerge` something, and I'll be unable to.
Now, I could afford to buy a decent computer if I had to. But I'm reluctant to use my retirement savings in this way. I really would prefer to use the stuff I have, since it works fine (so long as I never have to update again, or install anything new). But am I just fighting a battle that is already lost? While it seems to be theoretically possible to run Gentoo on a 10+ year old laptop, is it really practicable to do so?
I'd be interested to know what other folks think about this.
BR, Lars |
|
Back to top |
|
|
pingtoo Veteran
Joined: 10 Sep 2021 Posts: 1249 Location: Richmond Hill, Canada
|
Posted: Wed Jun 26, 2024 1:22 pm Post subject: |
|
|
Don't overthinking.
Have you consider the future Gentoo no longer exist?
I use ARM based computer for my everyday use. A few of them acting as servers for storage (ramdisk) or computation (distcc helper).
Gentoo to me is a great tools for building system to the state I want. Once I have the system in the state I want I stop update. I make changes when there are new things, new feature I am interesting than I will make use of docker/qemu to build a complete system and verify the interesting stuff did work as I expected, then I just dump the newly build image to the system storage (a SD card, or try to netboot with remote storage)
This is a private home lab system, the security consideration were never involve in term of what if someone is hacking my system to gain root access, because if that happen I have different problem. It is more about at network level how I prevent unwanted access from remote.
So if you have several computers and if they were idle, may be thinking how to make use of them, give them different duty in you entire usage. your daily drive computer should be design to not have to frequent update and use other free idle machine for testing changes before apply to your daily computer. |
|
Back to top |
|
|
lars_the_bear Guru
Joined: 05 Jun 2024 Posts: 522
|
Posted: Wed Jun 26, 2024 1:37 pm Post subject: |
|
|
pingtoo wrote: | Once I have the system in the state I want I stop update. |
I've certainly considered that. But what if, in a few weeks' time, I want to install a new application, and it needs a later version of some behemoth like GTK?
BR, Lars. |
|
Back to top |
|
|
pingtoo Veteran
Joined: 10 Sep 2021 Posts: 1249 Location: Richmond Hill, Canada
|
Posted: Wed Jun 26, 2024 1:50 pm Post subject: |
|
|
lars_the_bear wrote: | pingtoo wrote: | Once I have the system in the state I want I stop update. |
I've certainly considered that. But what if, in a few weeks' time, I want to install a new application, and it needs a later version of some behemoth like GTK?
BR, Lars. |
So you do it on you none-daily drive computer first to verify you successful build it than try to perform a binary only install on to your daily drive computer.
In essentially I am advise have exactly same (or very little divination) of second computer (can be virtual machine or container) let it take time to build. I cannot imagine there is a use case that need to have something always immediately available,
So it become a problem of designing a system for your usage with several computers and how to reduce effort of migration from one to another. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54578 Location: 56N 3W
|
Posted: Wed Jun 26, 2024 2:07 pm Post subject: |
|
|
lars_the_bear,
There are several different answers to your questions, depending an the compromises you are willing to make.
If the answer to that is absolutely none at all, the price it do all the building yourself.
That's your gentoo your way.
Then you mentioned computers, plural. That offers the possibility of distributed compiling. Read about distcc.
Its not a silver bullet, only the compile phase of C or C++ has the possibility to be distributed.
At the other end of the spectrum is the Gentoo provided binhost. You don't chose any build time customisation.
Its the Gentoo version of Fedora if you you like.
Then there is some middle ground. You stray from the Gentoo binhost a little at the cost of building some packages.
You choose your update frequency. Between monthly and quarterly should do for a stable system, maybe with a more frequent GLSA check.
Wild thought ...
Oracle and Amazon both offer free virtual machines, so that they can upsell you. :)
Oracles arm64 offering let you put together a respectable arm64 build system for no financial outlay. I've not looked at the amd64 equivalent.
If its any good, you could build binpackages there. Install Gentoo in a chroot if you need to.
I've not used either, so that's all I know. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 883
|
Posted: Wed Jun 26, 2024 2:11 pm Post subject: |
|
|
I'm a fan of low-power stuff. Most of my systems are fanless and consume <15 Watts. Performance wise that's comparable to old mainstream stuff of many years ago. (If you want to see specs see Intel J5040 (in use for my desktop) or Intel Atom C2750 (in use for my main home server)).
The constant compiling can be reduced by lowering your update frequency. I'm going as low as 4 times a year (roughly one every 3 months) and so far it hasn't given me troubles i wouldn't have with a shorter update interval. It does mean updates take long, my desktop usually needs a few days of 24x7 compiling. I should note my systems are using stable packages only.
For desktop, unfortunately, you can't get around rust. Mozilla products need it and more and more python libraries use it too. Compiling rust is like hell on earth, but worse .
During my last update i had a system with 8GB ram+8GB swap where rust was being compiled with make -j1 and it got killed my the out-of-memory killer. This is now the only system where i use a single -bin package. Memory is key here, my systems with 16GB or 32GB ram compile rust with -j5 (all of them being 4T CPU's), so i think you are safe with the specs you posted. My J5040 system has 32GB ram, and compiles rust in tmpfs in 2:46:10 (according to qlop). _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
Fitzcarraldo Advocate
Joined: 30 Aug 2008 Posts: 2054 Location: United Kingdom
|
Posted: Wed Jun 26, 2024 3:22 pm Post subject: |
|
|
lars_the_bear,
I have two 'old' laptops running Gentoo Linux:
Clevo W230SS purchased 2015, running KDE under Gentoo Linux Stable:
– Intel Core i7-4810MQ 6 MB (2.8 GHz)
– 16 GB DDR3 1600MHz RAM
– 13.3″ matte HD LED IPS (1920×1080)
– NVIDIA GeForce GTX 860M – 2 GB GDDR5
– 750 GB HDD (7200 rpm)
– Gigabit LAN & Wireless Intel AC-7260 HMC (867Mbps, 802.11AC) + Bluetooth
Mesh Edge DX (badged Compal NBLB2) purchased 2010, running KDE under Gentoo Linux Testing:
– Intel Core i7 720QM (1.6 GHz but throttled to 933 MHz by Compal due to limit on power from PSU)
– 8 GB DDR3 RAM
– 15.6″ LCD (1920×1080)
– ATI Mobility Radeon HD 5650, 1 GB GDDR3
– 320 GB HDD
– Atheros Communications AR8131 Gigabit Ethernet controller
– Intel WiFi Link 5300
– Broadcom BCM2046 Bluetooth Device
They both perform well when the desktop and applications are used, but do take e.g. days to perform any significant World update. In fact, to reduce the pain of updating I have configured them both to avoid using qtwebengine and, in the case of the older of the two, to use binary browser packages. I would have installed app-office/libreoffice-bin on the older machine but, due to the required dependencies, it cannot be installed so I installed Microsoft Office 2007 under WINE instead, which works fine.
Nevertheless, as mentioned, any significant World update can take days to complete on those machines. I put up with that partly because of the configurability that Gentoo Linux facilitates, partly because I like Portage and am familiar with it, partly because I enjoy tinkering, and partly because I usually enjoy a challenge.
However, I spend more of my time these days using my family's old Acer Aspire XC600 tower PC running Lubuntu (uses LxQt, one of the lighter desktop environments):
– Intel Pentium G2030 (3.0 GHz)
– 8 GB DDR3
– Intel HD Graphics (Xeon E3-1200 v2/3rd Gen)
– 1 TB 7200 RPM HDD
– Intel 82579V Gigabit Ethernet Controller
– Ralink RT3090 Wireless 802.11n 1T/1R PCIe
– Samsung SyncMaster 720N 17″ external monitor (1280 x 1024)
Lubuntu is, of course, a binary distribution and is fast and easy to update on that machine. It does not have the extensive configurability of Gentoo Linux, but it does everything I need and it is speedy on an obsolete Acer PC (a few applications actually work better on it than in Gentoo Linux). The downside (for me) is that it uses systemd instead of OpenRC. For drafting a document, sending/receiving e-mails, editing image files, creating/editing a spreadsheet, and browsing the Web, it does a good job with minimum effort to keep packages up to date.
I also have an obsolete nettop (ASRock ION 330HT) running Gecko Linux (OpenSUSE Tumbleweed) with LxQt:
– Intel Atom 330 (1.6 GHz)
– 4 GB DDR2 (the nettop detects 3,327 MB)
– NVIDIA ION Graphics
– 320 GB HDD
– NVIDIA MCP79 Gigabit Ethernet controller
– Atheros Communications AR9285 Wireless Network Adapter
openSUSE Tumbleweed is a rolling binary distribution and works well, albeit slowly on an under-powered nettop, and World updates do take a long time (a few hours), even though the packages are all binary. I would not dream of trying to install Gentoo Linux on that machine.
Anyway, you can get a feeling for the sort of update performance and usage performance I get from the above machines' specifications and associated comments. To be honest, I get the impression you would be better off using a binary distribution with a lightweight desktop if you are finding package compilation such an issue. In my opinion, not performing regular World updates (to avoid lengthy compilation times) is not a good approach; if I were you I would opt for a well-known and well-supported binary distribution with a lighter weight desktop environment (Xfce, LxQt or whatever). Others may disagree with me, but that's my tuppence worth. _________________ Clevo W230SS: amd64, VIDEO_CARDS="intel modesetting nvidia".
Compal NBLB2: ~amd64, xf86-video-ati. Dual boot Win 7 Pro 64-bit.
OpenRC systemd-utils[udev] elogind KDE on both.
My blog |
|
Back to top |
|
|
John R. Graham Administrator
Joined: 08 Mar 2005 Posts: 10655 Location: Somewhere over Atlanta, Georgia
|
Posted: Wed Jun 26, 2024 4:05 pm Post subject: |
|
|
Hi, Lars.
I just bought a refurbished 2017 era (i.e., reasonably modern) Lenovo P520 workstation with a 3.7GHz Xeon W CPU, 6 hyper-threading cores (so 12 threads), and 32GiB of RAM for an almost comically low sum. I'm in the process of setting up bespoke build systems & binhosts for my three weakest machines. Should make them easier to live with for years to come. Perhaps something like this is an option for you?
I had a really nice little Intel Atom based Acer Aspire One that I retired a few years ago because 4 GiB (!) is really not enough to build the larger packages (they swap forever during the link phase). In retrospect, in light of my nascent binhosts, I wish I had kept it.
- John _________________ I can confirm that I have received between 0 and 499 National Security Letters. |
|
Back to top |
|
|
sitquietly Apprentice
Joined: 23 Oct 2010 Posts: 150 Location: On the Wolf River, Tennessee
|
Posted: Wed Jun 26, 2024 5:45 pm Post subject: Re: Linux on old/underpowered hardware: is the battle lost? |
|
|
lars_the_bear wrote: | I'm drawn to Gentoo because it offers the possibility of creating a fairly minimal Linux desktop install. ..... But.... there's all this compiling. Lots and lots and lots of compiling. ..... I've set up a private binhost, so I can reinstall more easily if I have to. ..... |
Until a couple of years ago I had a fanless Intel Atom system that I loved for its efficiency. Could do most of my work with its 3GB ram with less than 25 watts. The only Linux I could run was antiX -- and it ran great! antiX is the definition of simplified with runit init and simple window managers (icewm, jwm, fluxbox).
I do use Gentoo and build a binary repo on my bigger computers (with 10 times more memory and 10 times more power draw). The binary repo, combined with a rational update policy make building and updating my systems an acceptable burden for the benefits of working from source (update every three months and ignore the hysteria about OMG Don't You Know That The Code From Three Months Ago Is Full Of Bugs and Security Flaws -- Today's Code Is What You Must Use!!!).
If you believe that in fact a Linux system that is only updated once every three months is unacceptably flawed then you should abandon what you believe to be crap and run FreeBSD or OpenBSD.
BTW, FreeBSD is also source based (it is dual source/binary and can mix ports/packages) and supports building a minimal desktop. With UFS filesystem (instead of ZFS) you could run it on your low-ram systems.
I have a hard time abandoning Gentoo completely; it is just so much fun (and very useful). But there are some nice alternatives for not-the-latest low-end hardware. |
|
Back to top |
|
|
lars_the_bear Guru
Joined: 05 Jun 2024 Posts: 522
|
Posted: Wed Jun 26, 2024 5:49 pm Post subject: |
|
|
John R. Graham wrote: |
I just bought a refurbished 2017 era (i.e., reasonably modern) Lenovo P520 workstation with a 3.7GHz Xeon W CPU, 6 hyper-threading cores (so 12 threads), and 32GiB of RAM for an almost comically low sum. |
That's a fair point. Lenovo stuff of this vintage, especially where it's ex-business is, indeed, laughably cheap. Businesses (including mine) buy these by the hundred and then, when the supplier's warranty expires, sell them in bulk to refurbishers. That's how I come to have a stack of Lenovo laptops. Except mine are even older. There are similar good deals for ex-business Dell gear.
So, yeah; it's not that I can't afford a newer computer. I could if I wanted to. I just have a visceral, bloody-minded objection to spending money when I don't have to And, also, I rather like my old Lenovos. My W520 can fit 4Tb of storage -- 6Tb if you swap out the DVD bay. How much would I have to pay, to get that feature in a new laptop?
But even with a machine like yours, if it's acting as a binhost and, presumably, builds packages for a range of other machines, and you update it (say) weekly, it's still going to be compiling near-constantly, isn't it? Or is it just that fast, that it doesn't need to?
I quite like the suggestion that @NeddySeagoon made earlier, of uploading this work to something in cloudspace somewhere. I just need to find a way to do it for free. Amazon have a 'free' AWS tier, but they'll charge you if you go over your usage quota, which I imagine would be very easy to do.
What I really want is for somebody to just build a binary distribution exactly to my specification, and let me use it free of charge. What saddens me a little is that, 10-15 years ago, Fedora was that distribution. It's been downhill ever since.
BR, Lars. |
|
Back to top |
|
|
John R. Graham Administrator
Joined: 08 Mar 2005 Posts: 10655 Location: Somewhere over Atlanta, Georgia
|
Posted: Wed Jun 26, 2024 5:56 pm Post subject: |
|
|
lars_the_bear wrote: | But even with a machine like yours, if it's acting as a binhost and, presumably, builds packages for a range of other machines, and you update it (say) weekly, it's still going to be compiling near-constantly, isn't it? Or is it just that fast, that it doesn't need to? | I don't think it's going to need to constantly build. I can keep you posted after I get the build jobs set up, but for reference: Code: | terra ~ # genlop -t app-office/libreoffice chromium
* app-office/libreoffice
Mon Jun 3 12:49:47 2024 >>> app-office/libreoffice-7.6.7.2
merge time: 1 hour and 44 seconds.
* www-client/chromium
Thu May 16 21:08:43 2024 >>> www-client/chromium-124.0.6367.155
merge time: 5 hours, 54 minutes and 51 seconds. | Essentially everything else will be much faster. Also, I've got my eye on some compatible Skylake CPUs with up to 20 threads; the chromium build will benefit from one of those for sure.
- John _________________ I can confirm that I have received between 0 and 499 National Security Letters.
Last edited by John R. Graham on Wed Jun 26, 2024 6:05 pm; edited 2 times in total |
|
Back to top |
|
|
lars_the_bear Guru
Joined: 05 Jun 2024 Posts: 522
|
Posted: Wed Jun 26, 2024 5:59 pm Post subject: Re: Linux on old/underpowered hardware: is the battle lost? |
|
|
sitquietly wrote: |
If you believe that in fact a Linux system that is only updated once every three months is unacceptably flawed then you should abandon what you believe to be crap and run FreeBSD or OpenBSD.
|
Frankly, I don't care if I never update again, for the rest of my life. I'm carrying far bigger risks than somebody hacking my laptop.
But, with Gentoo, it seems to me that the less frequently you update, the more of pain it is when you do. Of course, if I never update, that's not a problem. My worry in that case is that, one day, I'll want to install something new, or update something to fix a bug, and find that the available versions are incompatible with my ancient set-up. So I'll have to reinstall the whole darned thing, which will take weeks.
BR, Lars. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|