Jenny’s Daily Drivers: Raspberry Pi Desktop

One of the more exciting prospects upon receiving one of the earliest Raspberry Pi boards back in 2012 was that it was a fully-functional desktop computer in the palm of your hand. In those far-off days, the Debian OS distro for the board wasn’t even yet called Raspbian, but it would run a full-on desktop on your TV and you could use it after a fashion to browse the web or do wordprocessing. It wasn’t in any way fast, but it was usable enough to be more than a novelty. I’ve said before on these pages that the Raspberry Pi folks’ key product is their OS rather than their computers. While they rarely have the fastest or highest spec hardware, you can depend on Raspberry Pi OS being updated and supported through the life of the board unlike many of their competitors. I can download their latest OS image and still run it on that 2012 board, which to me ranks as a very laudable achievement.

The OS They Don’t Really Tell You About

Screenshot of the first i386 Pi desktop
The background image may have changed since the first release back in 2016, but the UI hasn’t.

Raspberry Pi OS doesn’t run on any other ARM single board computers but their own, but it’s not quite accurate to say that it only runs on Raspberry Pi hardware. Since 2016 when it was launched as PIXEL, the folks in Cambridge have also maintained a PC version for 32-bit i386 computers, now called Raspberry Pi Desktop. It may be the Pi product they don’t talk about much, but  you can still find it on their downloads page.

Like the ARM version, it’s based on Debian and presents as close as possible to the environment you’d find on your Pi. I’m interested to see whether it still lives up to the claim of being usable on older hardware, so I’ve downloaded a copy and installed it on my trusty 2007 Dell Inspiron 640. It rocks a 1.6 GHz Core Duo with 4 GB of memory and a SATA SSD so it’s not the lowest spec hardware on the block, but by 2023’s standard it represents a giveaway-spec old laptop. Can I use it as a daily driver? Let’s find out! Continue reading “Jenny’s Daily Drivers: Raspberry Pi Desktop”

Open-Source Cell Phone Based On ESP32

Over the past decade or so, smartphones have exploded in popularity and seamlessly integrated themselves into nearly every aspect of most people’s lives. Although that comes with a few downsides as well, with plenty of people feeling that the smart phone makes it a little too easy to waste time and looking to switch to something simpler, like an older-style flip phone. If this style of phone is more your speed, take a look at this DIY cell phone which takes care of everything a phone really needs to do. (Google Translate from French)

The phone uses an ESP32 at its core, with a SIM800L GSM modem to interact with the cell network, including retrieving the system time. A small battery is included as well as all of the support circuitry for charging it as well as a USB interface that can communicate to a PC. The operating system for the phone is built from the ground up as well, with a touch screen interface allowing the user to make phone calls, send text messages, store contacts, and a few other basic features. There’s also a GPS application though, allowing the phone to know basic location information.

Another perk of this device is that its creator, [Gabriel], made the design schematics, print files for the case, and the operating system software completely open source for anyone to build this phone on their own. Everything is available on the project’s GitHub page. It’s a fairly remarkable achievement, especially considering [Gabriel] is only 16. And, if you’re not one to eschew modern smart phone technology there are some DIY smart phones available to build as well.

Thanks to [come2] for the tip!

Jenny’s Daily Drivers: FreeBSD 13.2

Last month I started a series in which I try out different operating systems with the aim of using them for my everyday work, and my pick was Slackware 15, the latest version of the first Linux distro I tried back in the mid 1990s. I’ll be back with more Linux-based operating systems in due course, but the whole point of this series is to roam as far and wide as possible and try every reasonable OS I can. Thus today I’m making the obvious first sideways step and trying a BSD-based operating system. These are uncharted waters for me and there was a substantial choice to be made as to which one, so after reading around the subject I settled on FreeBSD as it seemed the most accessible.

First, A Bit Of Context

A PC with the FreeBSD boot screen
Success! My first sight of a working FreeBSD installation.

Most readers will be aware that the BSD operating systems trace their heritage in a direct line back to the original AT&T UNIX, while GNU/Linux is a pretty good UNIX clone originating with Linus Torvalds in the early 1990s and Richard Stallman’s GNU project from the 1980s onwards. This means that for Linux users there’s a difference in language to get used to.

Where Linux is a kernel around which distributions are built with different implementations of the userland components, the various BSD operating systems are different operating systems in their own right. Thus we talk about for example Slackware and Debian as different Linux distributions, but by contrast NetBSD and FreeBSD are different operating systems even if they have a shared history. There are BSD distributions such as GhostBSD which use FreeBSD as its core, but it’s a far less common word in this context. So I snagged the FreeBSD 13.2 USB stick file from the torrent, and wrote it to a USB Flash drive. Out with the Hackaday test PC, and on with the show. Continue reading “Jenny’s Daily Drivers: FreeBSD 13.2”

Jenny’s Daily Drivers: Slackware 15

As a recent emigre from the Ubuntu Linux distribution to Manjaro, I’ve had the chance to survey the field as I chose a new distro, and I realised that there’s a whole world of operating systems out there that we all know about, but which few of us really know. Hence this is the start of what I hope will be a long-running series, in which I try different operating systems in my everyday life as a Hackaday writer, to find out about them and then to see whether they can deliver on the promise of giving me a stable platform on which to earn a living.

For that they need an internet connection and a web browser up-to-date enough to author Hackaday stories, as well as a decent graphics package. In addition to using the OS every day though, I’ll also be taking a look at what makes it different from all the others, what its direction and history is, and how user-friendly it is as an experience. Historical systems such as CP/M are probably out of the question as are extremely esoteric ones such as the famous TempleOS, but this still leaves plenty of choice for an operating system tourist. Join me then, as I try all the operating systems.

A Distro From The 1990s, Today

A desktop mini tower PC with monitor showing the Slackware boot screen
The Hackaday test PC gets its first outing.

When deciding where to start on this road, there was an obvious choice. Slackware was the first Linux-based distribution I tried back in 1995, I’m not sure which version it was , but it came to me via a magazine coverdisk. It was by no means the first OS that captured my attention as I’d been an Amiga user for quite a few years at that point, but at the moment I can’t start with AmigaOS as I don’t have nay up-to-date Amiga-compatible hardware.

July 2023 also marks the 30th anniversary for the distro making it the oldest one still in active development, so this seems the perfect month to start this series with the descendant of my first Linux distro. Slackware 15 comes as a 3.8 GB ISO file download for 64-bit computers, and my target for the distro was an old desktop PC with an AMD processor and a big-enough spinning rust hard disk which had been a high-end gaming system a little over ten years ago. Not the powerhouse it once was, but it cost me nothing and it’s adequate for my needs. Installed on a USB Flash drive the Slackware installer booted, and I was ready to go. Continue reading “Jenny’s Daily Drivers: Slackware 15”

Is MINIX Dead? And Does It Matter?

Is MINIX dead? OSnews is sounding its death-knell, citing evidence from the operating system’s git log that its last updates happened as long ago as 2018. Given that the last news story on the MINIX website is from 2016 and the last release version, 3.3, came out in 2014, it appears they they may have a point. But perhaps it’s more appropriate to ask not whether or not MINIX is dead, but whether indeed it matters that the venerable OS appears no longer in development. It started as an example to teach OS theory before becoming popular in an era when there were no other inexpensive UNIX-like operating systems for 16-bit microcomputers, but given that its successors such as Linux-based operating systems have taken its torch and raced ahead, perhaps its day has passed.

No doubt many of you will now be about to point out that MINIX lives on unexpectedly baked into the management engine core on Intel microprocessors, and while there’s some debate as to whether that’s still the case, you may have a point. But the more important thing for us isn’t whether MINIX is still with us or even whether it’s a contender, but what it influenced and thus what it was responsible for. This is being written on a GNU/Linux operating system, which has its roots in [Linus Torvalds]’ desire to improve on… MINIX.

Read more about the tangled web of UNIX-like operating systems here.

Can Hobbyists Bring SGI’s IRIX OS Back To Life?

Irix was the operating system developed by Silicon Graphics from 1988 to 1998. The OS supported the company’s high-end workstations and served in many serious roles. The company cut off support for the UNIX-based OS in 2006, but now a diehard community is looking to bring the ancient codebase back to life.

SGI workstations used to cost big money before the company collapsed. It failed to make the leap to a new era when x86 architecture began to dominate the wider computing industry. Credit: Bruno Cordioli, CC-BY-2.0

While SGI’s workstations once sold for five or six figures, surviving examples can now often be had for just a few hundred dollars on eBay. The MIPS-based hardware was potent for its time, often used for 3D rendering work for video games, films, or for scientific purposes. IRIX was SGI’s own OS built specifically to support these use cases.

The IRIX Network is a hobbyist community that loves these old machines and their software. The group hopes to raise $6,500 through crowdfunding to reverse-engineer IRIX. The hope is to use those learnings to create an open-source derivative version named IRIX-32, based on IRIX 5.3, the last 32-bit version of the OS.

It’s a monumental task, but admirable nonetheless. Whether we one day see IRIX reborn, akin to what happened to AmigaOS, remains to be seen.

An Entire RISC-V Operating System In 2000 Lines

While Microsoft and Apple don’t release the source code for their operating systems, a good estimate is that it takes around 50 million lines of code to run these software behemoths. The Linux kernel alone holds around 30 million lines, with systemd containing over one million lines on its own, which doesn’t include estimates for the desktop environment or other parts of a standard installation. But millions of lines of code, or even hundreds of thousands, aren’t necessary for building a fully functioning operating system. This one sets up a complete OS in exactly 2000 lines of code.

Called egos-2000, short for Earth and Grass Operating System, the diminutive operating system is written for RISC-V computers and while it does contain most of the tools we would recognize in an OS, it was built specifically for computer science students by PhD candidate Yunhao Zhang. The slimmed-down operating system makes it possible for students to easily read and understand every feature of an operating system without it becoming too overwhelming, and can be easily used and modified to experiment with. The name itself comes from its design principles, where parts of the operating system that interact with hardware directly are part of the “Earth” layer and parts that don’t depend on hardware being placed in the “Grass” layer, with applications taking up a third layer.

The OS is available on this GitHub page under an MIT license and works on real RISC-V hardware as well as within various emulators. Building a complete operating system in so few lines of code is an impressive feat, and making it comprehensive enough to teach students with goes well beyond that accomplishment as well. Often when concepts in computer science are reduced to their bare minimum components, we end up with completely illegible (but interesting) experiments like this programming language instead.