I recently found out about a Linux Distro named Q4OS and I wanted to test out their claim that it only requires 256 MB of ram when using the trinity desktop environment. However, when I used the live cd in virt-manager with 256 MB or ram, it just kernel panicked at boot. So I then tried it with 512 MB of ram. In addition to some issues that are not present when you are using at least 1 GB of ram, such as “sudo apt update” causing the entire VM to become unresponsive, I noticed that it seemed to actually use anywhere between 290 MB to 370 MB of ram when the only thing running was the process viewer (which is htop).
Obviously, this is still very low for a modern Linux distro but I was wondering how accurate VMs are for testing ram usage.
And, yes I know that it would be pretty much useless on a PC that only had 256 MB of ram even if it did work. I’m actually checking the ram usage because there is a possibility that I may be using a very old computer of mine that only has 1 GB of ram at some point in the future. So I’m just testing it and eventually other distros out to to see which one I’m going to end up using (assuming I do actually end up even using that computer).
Edit: I just tried the 32-bit version in virt-manager and htop stated it was only using 232 MB of ram, which means that their claim was right and that I might have been using the wrong version.
Edit 2: I just tried installing the 64-bit version in virt-manager and htop stated that it was using about 350 MB of ram, so I don’t know if installing it actually made a difference.
A VM should be an almost perfect representation. But what can vary slightly is the kernel drivers used for hardware.
The install cd is probably just running Debian installer, and way more lightweight.
“Use the install-cd media for older 64bit as well as 32bit machines.” - probably applies to such low memory.
Also you should probably use the 32-bit cd. 64-bit binaries use more memory, and realistically anyone building with an Athlon 64 (2003) or newer was probably also installing more memory than that.
RIght, I forgot that 64-bit binaries use more ram. And seeing that the 64-bit version does work fine with 1 GB of ram, in the off chance that there is something that should work but requires a 64-bit OS, I would still have the option to use the 64-bit version.
You need more ram for the live system. You will have the same results with a physical CD
I just installed this myself ( Trinity Desktop 32 bit ). What a weird and wonderful mix of old and new.
Running htop in konsole after install reported 245 MB of memory used. So, less than 256 MB confirmed.
There could also be differences in which hardware drivers are loaded and operating. In a VM, the graphical environment probably uses software rendering, which is also expected to take away some system memory of you didn’t pass through a gpu, but maybe that’s accounted differently.
On a somewhat unrelated note: I have an old Iomega arm board running an old version of Debian and OpenMediaVault, it only has 256 MB RAM, and only uses about 30% of that while streaming DLNA audio. Linux can be super minimal
No GUI I assume
Just Web GUI
deleted by creator
To answer the question of discrepancies, yes. There are actually different types of virtualisation techniques that offer different levels of interaction between the VM and the hardware (negating the use of additional emulation and processing, etc.). Look up paravirtualisation.
I am not familiar with Q4OS but I notice that it is available with both KDE Plasma and Trinity as well as in 32 bit and 64 bit additions.
The lightest weight version is most likely Trinity 32 bit. Is that what you were testing?
I may try it myself at some point. Looks interesting.
I was actually testing the trinity 64-bit version because it was the only version that had a live cd. I actually just downloaded the 32-bit version and I’m about to try it out.
deleted by creator
Did you not read the part of my post where I mentioned that I was planning on running this on an old computer that only has 1 GB of ram?
Sorry.
Note that many modern Desktops may only use as much RAM if they have as much.
Anyways, use LXQt, it is based on Qt6 now, will have Wayland support soon, and can be used with Wayfire or even tiling window managers, maybe even the one from COSMIC!
I’ve been looking into lightweight Linux distros on and off for a while now, so I have heard of LXQt. The only problem is that I have no experience with installing a desktop environment, so if there is a distro that can use it and it would use less ram than the 32-bit version of Q4OS (which is already less than 256 MB), I’d want a distro that has it preinstalled.
It would be easy if there was a list/database that contained a sort-able list of how much ram every distro used. But I’ve never found one, the closest was a list of lightweight distros on Wikipedia but that list is very outdated and is also missing a lot of distros.
https://fedoraproject.org/spins/lxqt/
I dont think it uses below 256MB but lets see? It is a moder desktop and soon with LXQt 6.1 you can install Wayfire, Kwin or other compositors and should be able to just select the different compositor in the login menu, and have Wayland.
I’m not familiar with Fedora, as I’ve only ever used Debian and Debian derivatives. I also can’t seem to find any information on the system requirements for the LXQt spin of Fedora. I may still check it out in the future because I don’t know if I will always stick with the Xfce edition of Linux Mint for my main computer, but right now I’m just looking for a Linux distro for my old computer and Q4OS seems to be fine.
All these distros are very similar. You just use
dnf
instead of apt, thats its. And repos get synced automatically.If you really really want to stay on the apt side (I wouldnt), you can use the OG Lubuntu, which was a driving force in LXDE and LXQt development. But you will want to run unsnap to remove the bloat and make it as small as possible.
LXQt uses less RAM than XFCE and it is now fully based on Qt6. XFCE is based on XOrg which is not maintained since forever. LXQt is really close to being Wayland ready, which is also faster and more efficient than XOrg’s spaghetti code.
But as Ubuntu progresses too slow to get the latest cool stuff, I would recommend Fedora. It really is nice.
The main reason I’m currently staying with Linux Mint is because it’s what I have installed and it works for me. I may switch to a different distro in the future but right now, I have no reason to. I’d also have concerns about software availability, which from what I’ve seen, Debian (and I think Arch to some extent) currently has the most software available.
Also, Xfce is currently in the process of adding support for Wayland. They have stated in their roadmap that they want full support for Wayland in version 4.20 and they are working on porting everything and making sure that everything works. You can read about their current progress here: https://wiki.xfce.org/releng/wayland_roadmap
If you only have 1 GB of RAM, you definitely need to use a 32 bit distro. Regardless of the WM or DE, 64 bit software is going to chew through that 1 GB fast.
I have been playing around with the Q4OS Trinity 32 bit and I had forgotten how much lighter 32 bit software is memory-wise. I have a full DE ( Trinity ), Firefox with a couple tabs, Thunar, LibreOffice Calc, GIMP, and Scribus all open and I am still only using 935 MB. Awesome.
It is certainly the lightest systemd based distro I have used.
There is definitely some software missing from the repos. I could not find dotnet or Visual Studio Code which I am sure are in 64 bit Debian. But Nala, Neovim, GCC, Clang, Rust, Go, and friends are all still there. Libmobiledevice connects to my iPhone just fine.
It even has Podman and Distrobox although none of the 64 bit images work of course.
Lxqt is in the Q4OS 32 bit distros. You could try that if you want but Trinity seems fine.
Quick follow-up for anybody curious. I did install Lxqt on 32 bit Q4OS. It uses about 60 MB more than Trinity.
As a desktop, I think I like Trinity better ( Trinity is essentially KDE 3 ). Some of the lxqt companion utilities were nicer though ( I liked lxqt-terminal more than Trinity Konsole for example ). Of course, you can install and use the tools with either desktop.
Are you conflating a claim that the system requires less than 256mb or ram with a claim that it can run on hardware with only 256mb of ram?
Maybe those two claims are not the same?
On their website, it states that the minimum requirements for the OS are 256 MB, that’s what I was going off of. I even mentioned in my post that even if it was installable on a computer with 256 MB of ram that it would be pretty much useless.
Also, I just tested the 32-bit version and, like what another user stated, it does use less than 256 MB of ram, which means that their claim is right.
In what situation would those two not be the same?
I use Bazzite, AFAIK Steam OS runs inside a container, the performance is amazing. I’ve read the same thing from people who do VFIO GPU passthrough to a Windows VM. If you use kernel based virtualization, there should be no difference.
Containers aren’t virtualization.
What do you mean?
Docker, e.g. containers, are actually a process isolation system similar but not exactly the same as a chroot if you are familiar with that. It’s an isolation of resources, but not so hardware isolated like a full fat VM. For example, adding a GPU to a VM requires handing over the full PCIe hardware interface, with one interface per VM. Where as containers can just bind mount the device files in /dev and multiple containers can share the same GPU hardware. Containers aren’t virtualizating anything, just isolating processes from each other in a standardized way.
A container is just an environment where it appears to any program running within it that it has full access to the computer, while in reality it’s “jailed” and isolated from the rest of the system. The OS resources are shared with the container, instead of the hardware resources as in a virtual machine. There’s no hardware being emulated. It’s a beefed up version of a chroot.
SteamOS doesn’t run inside a container, it’s just an immutable image based system.