The 2025 edition of Halloween is here. Halloween means pumpkins, a subject that I have covered extensively here in these pages. For this Halloween, I decided to tackle a pumpkin that is both inorganic and non-decorative, specifically PumpkinOS. PumpkinOS is a free and open source implementation of PalmOS which can run as a program on both Linux and Windows. I had a specific reason for testing it out which turned out to not bear fruit in the first instance, but I did successfully install PumpkinOS and give it a brief test-drive. While I had to squash the expectations of readers, this article focuses on compiling and running PumpkinOS on Linux, but not much on using it or exploring eve…
The 2025 edition of Halloween is here. Halloween means pumpkins, a subject that I have covered extensively here in these pages. For this Halloween, I decided to tackle a pumpkin that is both inorganic and non-decorative, specifically PumpkinOS. PumpkinOS is a free and open source implementation of PalmOS which can run as a program on both Linux and Windows. I had a specific reason for testing it out which turned out to not bear fruit in the first instance, but I did successfully install PumpkinOS and give it a brief test-drive. While I had to squash the expectations of readers, this article focuses on compiling and running PumpkinOS on Linux, but not much on using it or exploring everything it is capable of. This post focuses on compiling and running PumpkinOS, surveying its default applications, and
You can consider it an introductory post which may lay the groundwork for future engourding content on the neat project.
The “About” window for the PumpkinOS Memo Pad (and proof this story has a mostly happy ending).
(Note: As a threshold matter, I note that my PalmOS knowledge is very limited. I never had a Palm Pilot or PalmOS-powered device.)
What is PumpkinOS?
PumpkinOS is a free and open source project maintained by developer migueletto. The developer maintains a blog on PumpkinOS and other projects. The PumpkinOS source code is maintained on GitHub, where the project is developed. PumpkinOS is available under the GNU General Public License v3.0, but some of its default applications have different open source or proprietary licenses.
The PumpkinOS readme in its GitHub repository describes the project as follows:
PumpkinOS is a re-implementation of PalmOS that runs on modern architectures (x86, ARM, etc). It is not your average PalmOS emulator (it does NOT require a PalmOS ROM), but it can run m68K PalmOS applications.
The brief project introduction does succinctly help us distinguish PumpkinOS from other PalmOS legacy projects. From my limited reading, most projects which allow one to run PalmOS applications without a PalmOS device emulate the PalmOS operating system. Conversely, PumpkinOS is a re-implementation rather than an emulator. Most (if not all, but I am not sure) PalmOS emulators require a PalmOS ROM, but PumpkinOS does not depend on having a PalmOS ROM.
As of when I tried PumpkinOS for the first time, it comes with four applications by default: AddressBook, MemoPad, ToDoList, and DateBook. It also comes with a command shell and preferences menu. The developer notes that “records created by AddressBook and MemoPad should be compatible with their PalmOS counterparts,” but the same cannot be said of “records created by ToDoList and DateBook.” Moreover, the developer notes that PumpkinOS is still very much in progress: “The goal here is just to offer a view of what to expect from PumpkinOS in the future.”
Compiling and Installing Pumpkin OS
Just about every application I have discussed or reviewed is available in a binary format. However, the PumpkinOS readme as of the publication date of the instant article makes clear that “You have to build PumpkinOS from source.” While building something from source is certainly a barrier to entry for many people, I can confirm that the PumpkinOS docs are good and the process was straight-forward. Note that I built PumpkinOS on EndeavourOS, which is an Arch-based Linux distribution, but there are docs for both Linux and using Windows Subsystem for Linux version 2 on Windows, as well as specific prefatory instructions for Arch- and Debian/Ubuntu-based Linux distributions (note I have no idea whether it is possible to run PumpkinOS on a modern Mac computer).
I will not re-print the instructions here since (A) people interested in building PumpkinOS should read the official readme; and (B) the instructions could change in the future as the project undergoes further development. Instead, I present screenshots from my building PumpkinOS to give you an idea of how the process works.
After confirming that I had the requisite packages installed on my system (I had to install binutils but I already had gcc, make, and git), I cloned the PumpkinOS repository onto my computer.
Cloning the PumpkinOS GitHub repository onto my local disk.
Next, I changed into the PumpkinOS/src directory and ran make.
We have successfully built PumpkinOS!
“pumpkin.sh” is the Linux executable. The Windows executable is also built but not pictured.
(Note that there are also docs for building PumpkinOS with Emscriptten. I never heard of Emscripten and did not try it, but the documentation is there for anyone who is interested.)
Running PumpkinOS
Although the docs specify that one must build PumpkinOS on Linux (note I am not sure whether it is possible to build in different environments), building PumpkinOS produces executables for both 64-bit Windows and Linux.
On 64-bits Windows, run pumpkin.bat. On Linux or WSL2, run pumpkin.sh. PumpkinOS will open on a new window.
Having noted that I am on Linux, I executed pumpkin.sh from the command line.
PumpkinOS launched as expected. I tested out the default slate of applications and found that everything worked as expected. See screenshots below:
PumpkinOS first-launch home screen showing the default apps and programs.
Adding myself to the Address Book.
Address Book with entry.
This is the Command app. I did not try running any commands in my initial review.
This is the Date Book app.
PumpkinOS Memo Pad.
Adding an entry to the PumpkinOS To Do List.
Unfortunately my To Do plan did not go as planned, as you will see further down.
The Preferences are very time-focused.
I had to scroll up for my time zone.
PumpkinOS is rather minimal to start, but it is possible to install new (or more often than not, old) PalmOS applications, which have the .prc extension. There are two ways to accomplish this:
PumpkinOS supports Drag & Drop functionality. You can drag a PalmOS PRC file over its window and it will be installed and show up in the Launcher. You can also manually copy PRCs to the vfs/app_install directory and restart PumpkinOS.
One reason I was interested in trying PumpkinOS is because I came across a PalmOS visual novel that I wanted to review. I decided to try installing it via drag & drop.
Nothing happened when I dropped the application into PumpkinOS, but when I closed out of Pumpkin and re-opened it, the application was present.
Cell Crack has been installed!
Installing applications can also be done through your local file manager on Linux or Windows. Simply drop the .prc application into the vfs/app_install directory and then launch PumpkinOS.
Cell Crack in PumpkinOS’s app_install directory, as seen in Thunar file manager. It will be “installed” the next time I launch PumpkinOS.
The application will appear as installed in PumpkinOS. It appears that on launch the application is moved from vfs/app_install to XYZ. I confirmed that uninstalling an application can be done by deleting it from XYZ in the file manager (of course make sure that you are deleting the correct application).
This is the app_storage directory with data for installed apps. Everything except Cell Crack, which I have highlighted, is “default.” Cell Crack can be uninstalled by deleting its directory.
Unfortunately, the visual novel I wanted to run crashed PumpkinOS, creating a fairly detailed error log (you can find the logs in XYZ).
it may be because it is for PalmOS 5.x, but I could be mistaken (I did not find an immediate solution to the error). I was able to run the visual novel in a PalmOS 5x emulator, which suggests it was some issue of how it interacted with PumpkinOS. (Note I have not had time to look too deeply into the issue, so take my very limited and uninformed analysis with a grain of salt.)
I was able to successfully install and launch a few other applications from PalmDB, a repository for old PalmOS apps, but I have not dug into testing yet. The developer’s blog includes some examples of applications running on PumpkinOS for readers who may be interested in some ideas to start.
Speaking of Applications
The developer maintains a repository of applications that have been ported to PumpkinOS (see PumpkinApplications). I look forward to going through the applications and testing them in the future.
Android?
The developer has a separate repository titled AndroidPumpkinOS, which, as the name suggests, is a project designed to bring PumpkinOS to Android. However, the developer notes that PumpkinOS for Android “is a work in progress and not ready for deployment” and that it may not build on new versions of Android Studio. PumpkinOS would be a neat app on Android (I dare say more so than on a desktop computer, at least), so I hope that the developer will have time to bring PumpkinOS for Android to a working state in the future (granting that some recent moves by Google may render such a project practically moot).
Conclusion
I was impressed with my very brief initial look at PumpkinOS and look forward to playing around with it and some old and new PalmOS applications in the future. I may try to find a use-case of sorts for it on one of my computers. Besides my general hope that the project continues to be developed so that it can support more applications and use-cases, I also hope that it is possible to run without building from source at some point. While I demonstrated that it is very easy to build PumpkinOS on Linux by following the instructions in the readme, having to build anything, much less needing a Linux environment, is likely a barrier to entry for some people who may be interested in trying PumpkinOS and rekindling some PalmOS memories.