The Palm V was designed by IDEO, the same firm who designed the Apple Lisa. Long before the Silicon Valley poaching scandals, Palm angered Apple by poaching its employees. Palm devices contain a lot of 90s Apple in their DNA. However, post-iPhone, 20s Apple isn't the Apple of yesteryear: what started out as the strong design opinions of one of technology's most celebrated visionaries has been subverted by the world's most valuable company into the monopolistic rationalisations of walled gardens. With the philosophies of Tim Cook Thought come the hallmarks of corporate control, planned obsolescence and user friction explained away as security features, all of which the Palm hasn't been around for. If you try to run Palm Desktop for Mac today, you can't. Thankfully, we have David Desrosiers and the 20+ year old pilot-link, which is lightly maintained, but doesn't support macOS builds and has very, very out-of-date documentation for Darwin.
After patching with fixes from pilot-link-git, a knife fight with autoconf and some manual tweaks to its output, this branch, with this manually-modified ./configure, will build basic pilot-link conduits on macOS / Apple Silicon (without libpng support). Unfortunately, I'm not too skilled with autoconf/automake to fully debug why the ./configure output on Darwin is malformed - in one case it generates a bad case
when it thinks it may be cross-compiling, and then in a second case it generates an errant )
which break the script. If I am ever bored or talented enough to come back and figure it out for real, I'll push the changes upstream.
Use this repository to successfully build desrod/pilot-link on Apple Silicon / macOS 12.4. It contains a hand-modified ./configure
that will work, and then you can sync your ancient Palm OS device with a modern Mac. You can also steal the binaries I made from the Releases page and put them all into /opt
.
- Get dependencies from Homebrew:
brew autoconf automake pkg-config libusb libtool
- Run
./autogen.sh --prefix=/opt --enable-conduits --enable-libusb
- Run
make -$(sysctl -n hw.physicalcpu)
- Add
/opt/bin
to yourPATH
:export PATH=/opt/bin:$PATH
, probably in$HOME/.profile
- Run
sudo make install
- Run
pilot-xfer
and it should work.
I have only tested pilot-install-user
and pilot-xfer
. I used a USB cradle with -p usb:
.