PHD2 Update Stellarmate OS

StellarMate OS keeps showing a notification that a new PHD2 version is available – but what’s actually behind it? I dug in, worked through terminal output and apt packages, and finally dissected the package itself. The result is surprising.

Updating PHD2 on StellarMate OS – and What I Found Out

For a while now, StellarMate OS has been showing me a notification that a new version of PHD2 is available. At some point I actually wanted to take care of it. What I found out was sobering – but at least instructive.


Starting point

Installed: StellarMate OS 1.x (Raspberry Pi, not version 2.0). PHD2 version according to “About PHD2”: 2.6.13dev8.


First attempt: add-apt-repository

I start with the obvious approach – the PHD2 PPA by Patrick Chevalley:

sudo add-apt-repository ppa:pch/phd2

Result: Command not found.

Reason: software-properties-common is not installed. After installing the package the command works, but yields nothing useful – because StellarMate OS is not based on Ubuntu, it’s based on Raspberry Pi OS (Debian Bookworm). PPAs are Ubuntu-specific and don’t work reliably on Debian.


Second attempt: apt directly

sudo apt install --only-upgrade phd2

Output:

phd2 is already the newest version (2.6.14+20260405095221~stable~bookworm).

So the system claims 2.6.14 is already installed. But PHD2 itself reports 2.6.13dev8 both in the terminal and in the GUI. Contradiction.


Root cause analysis

I take a closer look at the actual binary being executed:

which phd2
# → /usr/bin/phd2

ls -la /usr/bin/phd2
# → 105 bytes – that's not a program, that's a shell script

cat /usr/bin/phd2
#!/bin/sh
export LD_LIBRARY_PATH="/usr/lib/phd2${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
exec "$0.bin" "$@"

/usr/bin/phd2 is just a wrapper. The actual binary is /usr/bin/phd2.bin:

/usr/bin/phd2.bin --version
# → 2.6.13dev8

Forced reinstall:

sudo apt install --reinstall phd2

The package is unpacked and configured again – version according to dpkg: 2.6.14. Version reported by the binary afterwards: still 2.6.13dev8.


Direct look inside the package

I manually extract the cached .deb package:

dpkg -x /var/cache/apt/archives/phd2_2.6.14+20260405095221~stable~bookworm_arm64.deb /tmp/phd2test
/tmp/phd2test/usr/bin/phd2.bin --version
# → 2.6.13dev8

The package labelled 2.6.14 contains a binary that identifies itself as 2.6.13dev8.


Conclusion – and an open question

This is a mistake on StellarMate’s side: the package version was bumped to 2.6.14, but the actual PHD2 binary inside is still the dev8 build of 2.6.13.

What I cannot answer: whether the new features of 2.6.14 – updated camera SDKs for ZWO ASI and Altair, updated INDI client 2.1.6 – are actually built in or not. The binary could internally be newer than the version string suggests, if the --version output simply wasn’t updated. That could only be verified by testing with the relevant hardware directly.

What I can say: the update notification in the StellarMate interface is misleading – there is no further upgrade available to install via apt. Anyone who absolutely wants the real 2.6.14 binary would need to compile PHD2 from source. For normal guiding use, that’s not worth the effort.


Tested on: StellarMate OS 1.8.x, Raspberry Pi 5, Debian Bookworm (arm64)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

  1. astrocampEU on MASTODON ... loading