A Collection of Raspberry Pi Projects: Volume 3: PiCore

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am finishing off the year with another entry into my Raspberry Pi operating system collection. Let’s get started!

I have a number of Pi projects going around now, and not enough Pi’s equipment for everything. My Pi 4 is mainly serving as the family’s entertainment system (I happened to find a Steam Controller driver for it), and my Pi 400 –which I originally intended for that job– is running my Raspian reverse Wi-Fi router card because it’s not supported yet by LibreELEC outside beta releases. I’m tossing these microSD cards around like playthings, and my family has expressed mild concern.

But today, I am taking notes as I build a side project to help with my Photo Trunk project. I have no idea if it’s going to work well, but I’m hoping! Worst case is I learn a few things and move to something more appropriate.

PiCore Installation

I’ve covered Tiny/Micro Core Linux before. I know it’s very much a build-your-own experience type of distro without being totally unapproachable for beginners intent on learning. I am installing it using BlinkiePie (Pi 3B+) with the intention of moving it to a Pi 4 unit later.

The two documents on the download page, IMPORTANT and README, explain how to install the operating system to an SD card and expand the second partition. I followed along more or less blindly.

At one point, fdisk is opened, and I was instructed to “write down the starting and ending sectors of the second partition.” [source] When I listed them, fdisk reported StartCHS, EndCHS, StartLBA, and EndLBA. I looked, but I wasn’t able to find any other examples of fdisk reporting in this way. I only learned about “Cylinder Head Sector” and “Logical Block Addressing” by separating the acronyms. I proceeded to make a new partition, and fdisk was nice enough to mention the largest size I could go.

Construction Pains

I was expecting to start with something resembling the larger “Tiny” Core variant with a desktop environment, but PiCore only has a “Micro” Core image available. GIMP is very much a textbook GUI program, but the tce package manager was more than happy to install it and I estimate fifty dependencies.

I browsed over to the TinyCore forums, and was actually able to activate my account. The connection still isn’t secure, so don’t go using any personal standardized passwords. 50-99 alphanumeric characters with symbols say that’s not an attack vector against me though.

As I was getting ready to look for help in the dedicated Raspberry Pi section, I noticed a thread here where someone was looking to install a desktop. I went ahead and installed xorg, a name I know has something to do with Linux GUI’s, but like the original poster in the thread, I found myself unable to do anything after booting to a simple black screen.

Further experimentation discovered that by holding CTRL+C during startup, I could interrupt xorg from trapping me away from the command line. The results were a bit unpredictable, though. The first time, I somehow ended up as root. Other times, I found myself as tc, the default username, and other times, no login transpired.

I installed the remaining recommended packages, but neglected the window manager. Results were interesting. There was a dock at the bottom of the screen I could interact with, but no visible pointer. I toyed with the setup before rebooting again. GIMP was no trouble to get running with a window manager on board.

Takeaway

In many ways, MicroCore feels like it’s a model operating system. All the parts are exposed but there aren’t so many the mind can’t grasp the overall system. Additional work will need to be done if I want things like automatic connection to GoldenOakLibry or even Wi-Fi for that matter. I still have much to learn.

Final Question

I don’t like the window manager I found. Which one might you recommend?

Leave a Reply