A Collection of Raspberry Pi Projects: Volume 2

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am giving my day one review of LibreELEC running on the Raspberry Pi 4. Let’s get started!

Installation

Depending on how I divide this up, LibreELEC was one of the most painless distros to install, or one that’s taken me the longest to date. I believe my first attempt months ago failed because the download from their website was actually a small program to help download and install an image and I tried flashing it directly.

As per my custom for flashing SD cards, I made the download and tried installing on an actual Pi because it minimizes the chance for accidentally overwriting the wrong drive. This installer though, refused to work. I figure it was only compiled for desktop-style computers. It was a case of my own experience getting in my way.

Once I used their downloader to select the correct image and flash the chip, it worked. I did the usual new install setup procedures: establishing language, keyboard layout, time zone, etc. and spent a few hours poking around.

Kodi

The whole point of LibreELEC is to run one program and run it well: Kodi. I’ve never used it before, so I couldn’t tell you where the OS stops and the media program begins. Functionally, it feels like any media player sold in stores since DVD players were computerized for streaming content off the web, only it comes with a bunch of interface options.

I did have one problem after installation that stumped me enough to research. I had something all ready to play for the family, but the sound came up a no-go. A brief search quickly landed me in a community forum, where someone stated that for some reason, by default, LibreELEC on the Pi 4 only gives HDMI sound to the jack beside the micro USB C power plug. Otherwise, I was looking at possibly getting in there and messing around with things at the command line level over SSH; I have not yet found how to access a local terminal.

Future Work

There are a precious few keyboards in the home, and even fewer wired keyboards. Also of note is that my Pi 4 has been tied up for a while now, plugged into the TV. My endgame goal was never to leave this one tied up forever.

The Raspberry Pi 400 is largely equivalent to a Pi 4 (4 GB RAM) rearranged to fit inside a keyboard a la the Commodore 64. We put one on order, though suppliers are any combination of backordered, out of stock, or limiting how many each person can buy.

My plan has always been to make the SD card and put it in an appropriately specced host machine. Phase 2 of this project can proceed when I have an IR sensor to experiment with. When the keyboard is rendered unnecessary, I can think about moving the card over to a low end Pi 4 and see if it runs on 1 GB RAM.

Takeaway

No Linux experience is required to use LibreELEC. It is aimed at people who want more control over their home entertainment experience than is afforded by a commercial media player. It walks you through the scariest parts of installation, and the one problem I needed to research externally was trivial to find the answer for. Everything I can think of that someone might want in a basic home entertainment center is laid out plainly, but more advanced options exist for expert users.

Final Question

Have you ever been in a situation where your own experience got in the way of solving a relatively simple problem?

When To Use LTS

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I’m moving Derpy over to yet another installation of PopOS. Let’s get started!

PopOS is an Ubuntu-derived Linux distro. It’s website has install images for both the LTS or latest versions, each with options for NVIDIA or other graphics cards. Not knowing anything about which one to pick, I installed the NVIDIA and later the generic latest release images.

To date, I’ve found PopOS to be the easiest Linux distro to install. I don’t find it perfect: their GNOME 3 based desktop environment isn’t aimed at a Windows-like workflow, as I’m used to, but their website has step-by-step instructions to install a number of well-known alternate desktop environments. The GUI package manager has a few issues, but I’m convinced that’s normal in the Debian family and the proper command isn’t all that hard to learn. My biggest complaint, though, is that I’m having random Discord/Internet blinks. They’re common enough to be annoying, but too rare to readily diagnose.

The Structure of Maintenance

In one vision of a perfect world, people would only ever download raw source code to compile locally, a process Manjaro has streamlined. The Debian family’s apt repository nicely emulates another “perfect” vision where software is curated – the correct precompiled package is downloaded and installed automatically.

Neither format has an infinite capacity for continued support. Where Arch family distros simply run whatever is newest, Debian-family distros tend to accumulate changes until they produce a new, discrete version. For added stability, LTS versions are maintained so users have an option to go several years without having to go through the hassle of a major update.

Popularity of Ubuntu

Anyone who knows anything more than the name Linux almost certainly has also heard the name Ubuntu. For some, the name Linux only popped up after looking into that Ubuntu machine in the library that somehow isn’t a Windows or a Mac. Its popularity is in part due to its wide software base, drawing from both Debian’s and its own official repositories, as well as any number of PPA’s people have set up. This popularity snowball extends to software available only by downloaded from trusted websites.

Derpy’s Final? Form

One of my primary reasons for installing PopOS on Derpy Chips is having an Ubuntu-compatible research desktop that can access this software base. Unfortunately, while investigating software I want to use in worldbuilding, I found my version of PopOS simply lacked prerequisite packages. Backports were hard to find and compilation was taking too long.

What I didn’t realize my first time installing PopOS was that downloadable 3rd party software isn’t always compiled for the latest and greatest versions of Ubuntu. It could also be a question of maintenance. If you only have the resources to upkeep a few versions of your software, it makes the most sense to focus on LTS releases. This is why I downgraded to the LTS version of PopOS. I didn’t have much to back up, and I was most of the way back in a single evening.

Takeaway

If you are ever faced with the option of installing an LTS release, you really need to consider the application. If you have a dependence on 3rd party software, you may find yourself more readily at home using an LTS version. If you don’t care about any special software and want the latest and greatest without giving up too much stability, a major release may be for you.

Final Question

Have you ever taken measures to make a correct decision, only for another factor to muddle things up anyway?

I Have a Laptop Again

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am putting my laptop back in it its own case and providing my thoughts on my first week of using PopOS on a desktop. Let’s get started!

Laptop History

I’ve said it before: my laptop is now nine years old, and it has no business still running, yet here it is. Trouble started when the power port broke, and I replaced it with a cheap knockoff. The BIOS refused to charge any batteries from it. I resigned to operating from the power cord on a permanent basis.

As I became more interested in using Linux as my daily driver, I saw no harm in installing to a large, external USB 3 SSD. It actually performed better than the internal hard disk. The only downside was one more cable, and that seemed like nothing with the power cord, and I even opted for a second monitor and a separate keyboard/mouse.

Things started turning around when I got a hold of a genuine power port. Installation was a success, but shortly afterward, I accidentally nuked my Windows drive during an unrelated project. Much later, I swapped out the wiped hard disk for a more modern SSD during an emergency teardown in preparation for this week’s simple, but monumental project.

dd if=/dev/sdd of=/dev/sda –status=progress

The dd command is easily the single most inherently dangerous command I know. As such, I insisted on backing up my home directory in case I had another “nuclear accident.” I developed a series of prerequisites, such as getting an NFS share working as I expected with login credentials of one sort or another. I researched that for a while, but made not quite enough progress in that department to justify continued intense focus.

The typical go-to terminal program for do-it-yourself automatic backups is rsync. I would have used cp, as I’m more familiar with it, but rsync has a number of improvements. It’s supposed to be faster, and it intelligently ignores files already in the target directory. It also has an overwhelming number of additional options I couldn’t begin to cover.

Once I had a copy safely stored on network storage, I had rsync double check it, and I loaded up my PopOS install media –also on a USB 3– to prepare for the final copy action. The BIOS kept loading back to my main install, but instead of arguing with the BIOS, I just unplugged the wrong drive until it was strictly needed.

Both my target and my receiving drive are 1 terabyte a piece, but there’s a little room for variation in the specs. As a final check, I used lsblk –bytes to examine the exact size, and I had a relatively tiny difference in size leaning in my favor. As is becoming my custom for dangerous commands with elevated permissions, I only prefixed it with sudo after checking and double checking the command after entering it. I REALLY don’t like commands where a single character off could be a valid command I do not want to run, especially when I have hard drive designations /dev/sdd and /dev/sdb at the same time.

I only triple checked before executing the critical command. I should have quadruple checked, but everything was in place. I had dd report its progress so I could estimate its time til completion, and it turned out to about 6 hours. I was not there for when it finished, but it booted up just fine first try. My laptop is now a normal laptop again.

PopOS Meltdown and Recovery

PopOS gave me a bit of a scare this week. I customized it by installing KDE, but it started acting really weird when I was trying to play a game with my sister. The trouble started after an update. Discord and Firefox were going on the fritz, sometimes spazzing out two or three times a minute per use. Rebooting didn’t work. Loading up GNOME didn’t work. I had to put it away over Sabbath, and when I upgraded packages again, the issues stopped immediately. I am very thankful to the teams who provided a quick turn around time for whatever bug was making things unusable.

Final Question

I have been looking forward to finishing this milestone for a really long time. I feel like a soft chapter in my hobby here has come to an end. Which of my long-term projects should I return to next?

PopOS and X Drive Recovery

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am reviewing my first impressions of PopOS and compiling another short story I have about data recovery. Let’s get started!

Derpy’s Re-refurbishment

One thing I’ve learned while poking into Manjaro is that if sometimes a “Linux” program really just means it’s packaged for Debian or Ubuntu and other branches are expected to be tech savvy enough to bend compilers to their will. For that reason, I am re-refurbishing Derpy Chips with PopOS, an Ubuntu-based distro made with both privacy and Linux beginners in mind.

When the tale of Derpy Chips was last laid to rest, I had slated it for a new cooling system, as well as a new hard disk and RAM. The later two are trivial for anyone who isn’t afraid of the inside of a computer case. When the parts arrived, they basically went straight in.

The water cooling system, on the other hand, is a lot more involved. I waited until my father was available to do that with him, and I’m glad I did. We unmounted the radiator and the thing looked as if it had ten years worth of dust preventing any and all airflow! And the fans weren’t even blowing the correct direction. After applying a generous amount of vacuum cleaner and toothbrush, we put the radiator and fans back on correctly, but the old, gummed up case fan was on the brittle side. It’s now secured with a length of wire so it won’t spin off-balance.

The cooling system is now working fine. We figure that problem is solved now, but we have a spare just in case.

PopOS

I had a few bumps installing PopOS, but those were all on me. I have a new favorite USB drive to install Linux from, mainly because it’s USB 3. I forgot to umount everything before writing the install image to it, and things seemed to hang for an unreasonable amount of time. Otherwise, it was the smoothest Linux installation I’ve ever done.

I went into this knowing I’d probably be switching out the desktop environment. While the PopOS branding emphasizes the polish they’ve put into tweaking GNOME 3 to boost productivity, I am very particular about my desktop computers looking and feeling like desktop computers and not phones or tablets. Perhaps one day, I’ll get around to using it, but not at this time.

Minor complaint, but for seemingly no reason, CTRL+ALT+t doesn’t bring up the terminal. I have absolutely no idea why not, as that is the number one most important key combination in Linux — far more important than the Windows “Three Finger Salute” used in bringing up Task Manager.

X Drive

Well, It seems I just got a dinosaur of a network storage device working when it dies not two weeks later without fanfare. I spent a short while applying my knowledge from researching NFS to make it properly accessible. I went through and taught myself how to connect special to an SMB drive. I even made a link to it from the desktop. It worked. Now it won’t even acknowledge itself as an internal system.

Along the way, I was imagining a hidden clock in the drive. If the clock reaches zero, the drive stops working. The goal then is to get in, get the data, and hope there’s enough time. I posted for help, and Discord user Ghostrunner0808 walked me through the basics of single-use rsync. It uses the same syntax as cp, the copy program I was otherwise going to use. It can also start again where it left off, in case operations are interrupted.

I set up a little sandbox directory and experimented. While I wasn’t able to get all my root level hidden files to copy, I was able to get everything else. I also looked through all the help prompt and was settling on using the flags: -rtUv. r for recursive, t and U for times last accessed/updated, and v for verbose so I know it’s still doing something.

One of the network shares is meant for general access for all family members. Permissions were such that it made the perfect place to dump X Drive. I copied and modified an appropriate line from a working /etc/fstab to mount it on boot.

The whole reason I had conceived of this idea was because X Drive is little more than a regular hard disk in a plastic case and a special case to hold it on end. The plastic case was getting in the way of the SATA cable from connecting. We forcefully removed it, only to find someone showing how we could have done it without damaging the snaps.

DO NOT TRY THE FOLLOWING AT HOME. One trick I was thinking about trying was triple bagging the disk and sticking it in either the fridge or freezer. Some people have reported saving a failing drive this way, but further research found this is only effective when the read head is sticking to the platter; I could feel the platter spinning inside the case.

This one is above me. I need some form of professional help.

Sad to end on a bum note, but two out of three isn’t bad, though I will add that PopOS has only two downloads: one for systems with NVIDIA cards, and one for all other systems. I downloaded the NVIDIA one, thinking Derpy’s card was such, but I was wrong. Good thing the installation process is super easy.

Final Question

What priorities do you value in an operating system?

Trust and Privacy in a Digital World

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am doing a one-off about digital privacy. Let’s get started!

In all reality, this subject is totally improvised. My projects for this week never reached a satisfying milestone, but my father kept insisting I may have something here. Point being: this is highly under developed, and my views will likely change in the upcoming months.

Most people I know appreciate at least a little privacy every now and again. Social norms vary depending on time and place, but in general, it’s as easy as shutting a door, closing the curtains, or hollering at violators when an honest mistake happens. Businesses partition off appropriate areas for customers to enact transactions. Doctor-patient confidentiality holds medical professionals accountable in case they disperse any of a treasure trove of possible gossip their jobs afford them. We’re good at intuitively carrying on reasonable privacy measures in the real world because our physical world has been engineered to suit our privacy needs.

But for all the privacy measures average Internet goers know, they may as well be jogging naked through the park wearing nothing but a fashionable belt advertised as guarding privacy when surfing the web (paraphrased from countless VPN ads).

The digital world is constantly being restructured and redesigned, and as such, so are the tools to compromise end-user privacy. Without naming any companies or products, more than a couple companies come out and outline their intrusions in that agreement hardly anybody has the attention span to digest, while others are caught committing outright espionage against their clients for foreign countries.

As I said at the beginning, this is still a rough rough draft, but I’d like to propose a number of categories to use when evaluating a piece of software:

Category 1. Malware

Nobody who even thinks he or she understands what is happening here will mistake it for anything else. Barring a user deliberately installing one of these programs to study its operation, these programs are unwelcome, and they’re out to get you.

Category 2. Trojans

This range describes software that performs a desired function, but only as a cover for spiriting in undesirable code. They rely on people either blindly installing it, either by lying about the payload or hiding the truth in ten pages of tiny type and calling it either an EULA or a privacy statement — either of which may as well be written in ancient Sumerian for all the typical user can digest.

Category 3. Trust

In the middle of this spectrum are programs that should be safe if they’re from a trustworthy party. Wise computer users evaluate how much trust a program needs vs how much it deserves.

The more access a program needs on the system or network, the more the user should trust it before letting it loose. The longer people have used it without someone sounding the alarm, the safer the program is. Transmission confirmation is also ab important factor.

Category 4. Open Source

Open source is your friend. By exposing the source code for all to vet, a developer can get tens of thousands more eyes looking for bugs that a relatively tiny professional team may have missed. Because once a piece of software is in circulation, bad people will start prying at it. And while open sourcing makes their job much easier, it also invites good people to do the same on an equal footing.

Category 5. Learning Tools

There is little more you can do to be worthy of trust in computing than to not only expose your well-documented code aside from using it to explain an example for students to learn. By stepping through the source line by line, a lesson explicitly aims to demystify the program in question.

Conclusion

While these categories are a general when applied to a spectrum, they have a lot of overlap. An open source virus is still a virus — but I have heard of an online museum displaying neutered malware that people spend artistic energy on, landing an otherwise category 1 program among category 4 or 5 programs. A technically savvy user can theoretically use some category 2 programs by controlling them with a fire wall.

Most people feel safe as long as they don’t have category 1 software infecting their computers. Ideally, I would like to see everyone going up to category 4, but 3 is more realistic. Unfortunately, digital landscaping companies these days pumps out category 2 software, putting profits above user safety. Without a working, up-to-date intuition on active threats, digital privacy is something that takes months or years of study to obtain.

As for me, I feel like the dim-sighted leading the blind in this matter. I’ve been upset for a while about certain companies with seemingly no accountability for the digital gossip they scoop up wholesale and sell to advertisers. I don’t like being sold.

Final Question:

How well dressed are you really when it comes to living in the digital world?