Hi guys, I have a standalone Arch VM which was created a while ago but was happily running in Qubes 4.2.4.
I decided to restore this in 4.3RC2 and set the Arch repos to 4.3, then upgrade all packages.
This largely went well except I suddenly started getting a failure of the qrexec service. Needless to say this was fatal when shutting down and restarting the VM.
Oct 19 12:01:34 test-dev-arch systemd[1]: Starting Qubes remote exec agent…
Oct 19 12:01:34 test-dev-arch qrexec-agent[2171]: /usr/lib/qubes/qrexec-agent: error while loading shared libraries: libxenvchan.so.4.17 not found
Oct 19 12:01:34 test-dev-arch systemd[1]: qubes-qrexec-agent.service: Main process exited, code=exited, status=127/n/a
Oct 19 12:01:34 test-dev-arch systemd[1]: qubes-qrexec-agent.service: Failed with result ‘exit-code’.
Oct 19 12:01:34 test-dev-arch systemd[1]: Failed to start Qubes remote exec agent.
Despite repeated reinstalls of the 4.3 qubes packages including qubes-libvchan-xen, I could not get rid of the error. There was a reference to libxenvchan.so.4.17 somewhere which qrexec demanded.
In the end I manually created a symlink for libxenvchan.so.4.17 in /usr/lib/ which points to the later 4.19 version.
This now works and qrexec is happy.
Questions remain though:
Where is the requirement for libxenvchan.so.4.17 specified?
How does one actually get rid of it so qrexec will use the 4.19 version?