Early on I wrote a script for my user account to run df and save the output to a file, then a second script to read that file and if the drive was full send me an email.
First, it failed because it couldn’t send the email because the email service failed under full disk conditions.
Second, it failed because it couldn’t write the file to disk because the disk was full.
Third, it failed because outbound SMTP was blocked by my ISP.
I learned a lot about how well you can fail if you really put your mind to it. Now I have Home Assistant grabbing the disk stats for my machines and flagging anything over 90%.







Linux runs on a CPU which has an architecture, an internal set of rules and design guidelines. If you have a Linux kernel for an x86_64 processor it will work on any x86_64 processor, and the same goes for Arm. SteamOS can have two separate builds which target a different processor architecture but still have the same selection of tools and configuration to make a workable desktop experience. That is what they have done here.
Arm and x86_64 can both use WINE to run Windows applications on Linux, but on Arm systems we also need something similar to handle interpreting the x86_64 instructions to run correctly. That is something present in the Arm build that isn’t in the x86_64 build. Also if you want to run Android apps on the Arm build you would need fewer layers for compatibility as the underlying instruction set matches, so you just need the operating system level things to make the app run properly.
Overall it is really simple conceptually but more complex practically. I am glad they are doing it, Arm is a much more power efficient architecture and is quite performant, so I am keen to see the results from here.