Bill Sideris' Ljinux Puts "a Linux Written in Python" Onto Your Raspberry Pi Pico's RP2040
"Do not take this project seriously," its creator warns. "This is not a real OS/Linux distribution, but here we are."
Developer Bill Sideris has put together a basic operating system, described as "a 'Linux' written in Python," for the Raspberry Pi Pico and other RP2040-based development boards: Ljinux.
"Important note," Sideris writes of his creation, brought to our attention by Adafruit, as a means of tempering expectations for those who were expecting to run the Linux kernel and a userspace on a microcontroller with 264kB of RAM. "Do not take this project seriously. This is not a real OS/Linux distribution, but here we are."
Ljinux, though, is at least functional. Written in CircuitPython, the "operating system" is designed to mimic the core functionality of a Linux PC: There's a shell, based, equivalent to GNU Bash; support for an SSD1306-based display; the ability to read the date and time from an optional real-time clock; and networking support via a WIZnet W5500 breakout board.
Other features of the "operating system" include support for scripting, the ability to run Python commands, a root account accessible via "su," an integrated web server, logging, file storage to flash or an SD Card, basic drawing functionalities - "[the] budget didn't allow porting Wayland," Sideris jokes, "so I made Farland" - and a NeoFetch equivalent dubbed PicoFetch.
As you might expect from software designed to run atop a microcontroller development board, there's also support for reading sensors — though Sideris hasn't gone into details on precisely which sensors are currently supported.
The software's source code is available on Sideris' GitHub repository under the reciprocal GNU General Public License 3, with "more stuff [to] be added later," its creator promises, "as the project spirals into chaos."
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.