In case someone else runs into this:
When using
export CYCLONEDDS_HOME=~/cyclone_dds
installation failed. Changing into absolute path fixed it.
Tracking down by printing dir in good_directory exposes the issue:
     dir = directory.resolve()
+    print("dir=",dir)
     if not dir.exists():
         return
showing
dir= /media/erwin/ubuntu_extra/dev/roger/cyclonedds-python/~/cyclonedds/install