Subject: bug#47541: libvirt does not work

From: qblade <[email-masked]>
Date: Thu, 01 Apr 2021 13:38:41 +0000

after this commit, the `virsh` does not work corrent:

```
commit 383b02a370252c08eb1d43ac94d659c1d3993a35
Author: Pierre Langlois <[email-masked]>
Date:   Sat Mar 20 21:31:22 2021 +0000

    gnu: libvirt: Update to 7.1.0.

    * gnu/packages/virtualization.scm (libvirt): Update to 7.1.0.
    [source]: Remove libvirt-create-machine-cgroup.patch, add
    libvirt-do-not-create-var-dirs.patch.
    [build-system]: Switch to meson-build-system.
    [arguments]: Use meson-0.55.  Adapt #:configure-flags for meson, there is no
    need for --docdir anymore.  Remove fix-BOURNE_SHELL-definition phase.  Add
    fix-sysconfdir-and-localstatedir phase.  Adapt disable-broken-tests to meson.
    [native-inputs]: Add python-docutils and rpcsvc-proto.
    * gnu/packages/patches/libvirt-create-machine-cgroup.patch: Delete.
    * gnu/packages/patches/libvirt-do-not-create-var-dirs.patch: New patch.
    * gnu/local.mk (dist_patch_DATA): Add new patch, remove the other.

    Signed-off-by: Ludovic Courtès <[email-masked]>

```

Command to reproduce wrong:
```
# This is wrong:
# After commit
luhux@thinkpad-x230 ~ [date: Thu 01 Apr 2021 09:16:37 PM HKT]
$ GUIX_BUILD_OPTIONS="" guix time-machine --commit=383b02a370252c08eb1d43ac94d659c1d3993a35 -c 8 -M 8 -- environment --ad-hoc libvirt -- virsh connect
 qemu:///system
error: failed to connect to the hypervisor
error: Failed to connect socket to 'var/run/libvirt/libvirt-sock': No such file or directory

```

It uses the wrong path to connect to libvirtd of the current system.

Command to reproduce corrent:
```
# This is corrent:
# Before commit

luhux@thinkpad-x230 ~ [date: Thu 01 Apr 2021 09:16:32 PM HKT]
$ GUIX_BUILD_OPTIONS="" guix time-machine --commit=c536f0b217714917988d2f412999d978c2f2f495 -c 8 -M 8 -- environment --ad-hoc libvirt -- virsh connect qemu:///system
error: failed to connect to the hypervisor
error: Failed to connect socket to '/var/run/libvirt/libvirt-sock': No such file or directory
```

I use strace to create verbose log:

```
luhux@thinkpad-x230 ~ [date: Thu 01 Apr 2021 09:22:18 PM HKT]
$ GUIX_BUILD_OPTIONS="" guix time-machine --commit=383b02a370252c08eb1d43ac94d659c1d3993a35 -c 8 -M 8 -- environment --ad-hoc libvirt strace -- strace -o strace.log -- virsh connect qemu:///system
error: failed to connect to the hypervisor
error: Failed to connect socket to 'var/run/libvirt/libvirt-sock': No such file or directory

```

strace shows that it did use the wrong path:

```
  1056  access("var/run/libvirt/virtqemud-sock", F_OK) = -1 ENOENT (No such file or directory)
  1057  access("var/run/libvirt/libvirt-sock", F_OK) = -1 ENOENT (No such file or directory)
```

full strace log is in the attachment
 | | |
 V V V

My guess is that the patch in the commit caused this problem, but I have no ability to fix it.
Please fix it

thanks

qblade