Pyabr OSPyabr OS was one of the latest distributions to be added to the DistroWatch waiting list. The project refers to itself as a "Python Cloud Operating System", a Linux distribution mostly written in Python. The project, which declares it is developed in Iran with multilingual support, runs on x86_64 computers and 64-bit Raspberry Pi machines.
The project's website mentions that Pyabr is a platform written in Python which offers a desktop and applications which can be run on any Linux distribution while Pyabr OS is a Debian-based operating system that runs the Pyabr software. The operating system can reportedly be installed locally or run from live media like a thumb drive. The desktop environment resembles KDE Plasma but is a custom environment called Baran which the project says is written in Python using the Qt framework.
I was unsure going into this trial how all of this related to cloud computing or services. The term "cloud" gets thrown around on the project's website, but without a clear indication of how this affects the end user. I decided to give the project a test drive and see if I could find out.
The Pyabr OS ISO file is a small download of just 447MB. The live system always stalled early in the boot process for 90 seconds while waiting for systemd to sort out its infamous "A start job is running..." warning. After that, the distribution booted quickly and displayed the Baran desktop which does look a lot like KDE Plasma at first glance due to its shared Qt framework and theme.
The desktop environment uses a two-panel layout. A thin panel is placed at the top of the screen. It contains an application menu and a system menu to the left and a system tray to the right. The bottom panel is thicker and also includes an application menu to the left. Icons for launching applications are arrayed along the bottom panel.
One of the first things I noticed about Pyabr is that it consumes all available CPU, even when sitting idle at the desktop. I intended to find out why and so opened a terminal and tried to run commands like top, ps, and free which I hoped would shine light on what was running in the background. None of these commands exist on Pyabr OS. The man command and many other common command line programs are also missing. The ls command works, but does not recognize any command line flags ("ls" works, but "ls -l" does not). In other words there are virtually no useful Unix-like command line programs available to help do work or troubleshoot issues.
Pyabr OS -- Trying to run common command line programs (full image size: 109kB, resolution: 1320x691 pixels)
Next I opened the distribution's process monitor. This tool lists desktop applications which are currently open and which have been opened in the past. I'm not sure if this indicates process information is not cleared periodically or if closed application windows are not truly terminated when they disappear. No CPU or memory usage is displayed in the process monitor, making it difficult to determine what was consuming all available CPU resources.
When the live desktop session first loads, a welcome window appears. This window offers to start the install process. The installer is graphical and started off well enough with clear invitations to make up a username and password. We are asked to pick our preferred language with options being English or (I believe) Farsi. We are given the chance to toggle a guest account on/off. The installer asked if we'd like to provide a name, e-mail address, and phone number. This last step is unusual and the reason for asking for this information is not given.
Pyabr OS -- Being greeted by the system installer (full image size: 172kB, resolution: 1320x691 pixels)
The installer has a few inconvenient quirks. For example, pressing the Tab key usually moves focus back to the previous field on a screen rather than the next. Other times it seems to select a random location. This makes navigating the interface more awkward. A bigger issue is that when the installer closes, it immediately shuts down the operating system. This means if we close the window or click the Cancel button at any point, the system powers off. To make matters worse, completing all the install steps causes the installer to immediately terminate which, in turn, shuts off the computer. I ran through the installer's steps four times and, each time, upon reaching the final screen the installer shut down and took the rest of the system down with it.
In short, I was only able to use Pyabr OS when it was running from live media and the system installer window always had to be open in the background or the system would immediately power off.
Pyabr OS ships with a small collection of applications, though most of them appear to be custom, trimmed down versions of popular programs. We are given tools like a calculator, calendar, and file browser, but the tools are quite simple. The file browser just lists present folders and files and seems to be view-only in its capabilities. The calendar likewise shows dates, but doesn't seem to be able to set appointments or sync with on-line services. There is a custom web browser that does a few things differently. The main buttons and address bar are placed at the bottom of the browser window. Entering an address in the bar, such as linux.com or distrowatch.com, triggers a search and shows us web search results rather than the site we asked for. This makes it impossible to directly visit a specific URL by typing or pasting an address into the browser.
Pyabr OS -- The settings panel (full image size: 111kB, resolution: 1320x691 pixels)
The distribution has a settings panel which presents us with a handful of custom configuration modules. There tools to help us manage user accounts, connect to local wireless networks, change the system's screen resolution, and adjust the theme of the desktop. Adjusting either the desktop resolution or theme requires restarting the system for the changes to take effect.
There is a package manager included with Pyabr. This program shows all installed desktop applications in one tab and a list of available programs in a second tab. There are just two applications in the list of available applications: Bale and Shad. Both of these programs are described simply as being messaging applications. There doesn't appear to be any way to get software updates for the base system or desktop applications.
Pyabr OS -- The software manager (full image size: 122kB, resolution: 1320x691 pixels)
When I started my trial I was running Pyabr OS in a VirtualBox machine. The system, despite consuming all available CPU resources, was snappy and pleasantly quick to respond. New programs opened quickly enough I suspect the entire Pyabr software suite runs from RAM. The desktop was able to automatically resize to match the VirtualBox window, which was appreciated.
I was unable to check how much memory the distribution was using or what its underlying core software was, given the limited tools provided. However, having seen the systemd warning message at each boot and knowing the distribution is based on Debian 10, I think it's a fair guess to say systemd init and Linux 4.19 are probably being used.
Later in the week I tried to run Pyabr OS on my laptop, but was unable to get the operating system to boot in either Legacy BIOS or UEFI modes. This limited my trial to running Pyabr OS in a virtual machine.
When I first began exploring Pyabr OS the project made me think of snakeware, but with a stronger focus on desktop and web applications. Both projects rely heavily on Python to replace the userland programs and seem to seek to remake existing popular programs with Python code.
Replacing popular programs and desktop environments with Python is certainly an interesting concept and one which I'm sure presents some interesting challenges. It may even offer us some interesting solutions too, in the long run.
The trouble though with crafting an operating system where all the popular applications, command line programs, and desktop elements are replaced by new, experimental ones is that almost all the expected functionality is missing. Most modern Linux distributions have solved (or mostly solved) many of the complex problems of computing - booting on a range of hardware, installing the operating system, packaging a web browser, providing useful command line tools, shipping full featured desktop environments, office suites, and web browsers. Projects like Pyabr OS are throwing away all of those working tools, familiarity, and a supported ecosystem of software for alternatives that often don't work, or don't work well.
They have an installer that not only doesn't work, but cannot be closed, most command line tools are missing, hardware support is lacking, the system crashed about 10% of the time while I was exploring settings or the package manager. Many of the included tools certainly worked (and my hat is off to the people who built them), but the tools usually didn't offer the same functionality as corresponding utilities included with other desktop environments.
In short, Pyabr OS is an interesting concept - a desktop operating system running almost exclusively Python code, but I'm not sure it has any useful purpose. It doesn't do anything out of the grasp of other Linux distributions and frequently lacks functionality and stability offered by other Debian-based projects.
* * * * *
Hardware used in this review
My physical test equipment for this review was a de-branded HP laptop with the followingspecifications:
Processor: Intel i3 2.5GHz CPU
Display: Intel integrated video
Storage: Western Digital 700GB hard drive
Memory: 6GB of RAM
Wired network device: Realtek RTL8101E/RTL8102E PCI Express Fast