So far this post is a very unorganized collection of notes taken while experimenting with different operating systems, window managers and desktop environments on OffGRiD Iteration Zero. The objective is to find a configuration which makes the most out of the hardware for its intended applications without requiring an obscene amount of configuration and tweaking.
O/S Testing Summary
|Ubuntu||16.04.6||Everything works and works well|
|Ubuntu||xxx||Everything works, but slow|
|Hauku||xxx||Locks up at boot screen|
|ElemantaryOS||5.0-stable||won’t boot||64-bit only|
|Debian||9.8.0||WiFi not recognized even using “nonfree”?||live, nonfree, Cinnamon desktop|
Given the amount of pixels avaliable on the display, I think a full-screen-oriented “desktop” is more suitable than one which is oriented around a number of small windows. To this end I’ve found a handful of Linux GUI’s which might make a good choice. Of course any “desktop” can be configured to work this way, but an environment designed intentionally to run things full-screen is likely to do it better and with less up-front effort.
Another key consideration for the software is minimizing resource consumption that may relate to battery usage. Given the “Off” in OffGRiD, anything I can do to reduce power consumption extends the machine’s usefulness, and makes it easier to power the machine from off-grid sources like solar. The extreme approach to this would be to hand-assemble the entire software “stack”, optimizing everything from the kernel-up to use only as much power as necissary to run the intended applications. At the other end of the spectrum is using something that “just works” like Ubuntu, and settle for the energy efficiency that comes out-of-the-box. After a lot of consideration I’ve decided to pick something in-between these two extremes for OI0 and use an existing Linux distro but customize the installation to reduce the amount of unecissary resource consumption.
Something else I’d like to explore along the way is how I might leverage spare resources (such as extra RAM) to further reduce power consumption. For example, could RAM be configured as additional disk cache to reduce SSD power consumption (and if so, would this be worthwhile)? Or perhaps the use of precomputation when the machine is connected to a power source to reduce off-grid computational electrical consumption?
Based on the above I though the right fit for this stage of the project was Arch Linux 32. However after spending a solid hour fighting chicken-and-egg problems trying to get the WiFi to work, I started to rethink my priorities…