Subject: Re: [bug#28718] [PATCH] gnu: qemu: Add sysconfdir to configure-flags.

From: Oleg Pykhalov <[email-masked]>
Date: Mon, 09 Oct 2017 14:24:42 +0300

Hello Ludovic,

[email-masked] (Ludovic Courtès) writes:

[...]

>>>> I've used this patch to run a QEMU VM with bridge interface.
>>>>
>>>> $ mkdir -p /tmp/etc/qemu
>>>> $ echo 'allow bridge0' | tee -a /tmp/etc/qemu/bridge.conf
>>>> # ip link add bridge0 type bridge
>>>> # ip link set dev enp6s0 master bridge0
>>>> # ip link up bridge0
>>>> # dhclient bridge0
>>>> # qemu-system-x86_64 -net nic -net bridge,br=bridge0 # …
>>>
>>> It feels wrong to me to default to /tmp/etc instead of /etc.
>>>
>>> Setting up a bridge requires root privileges anyway, so why not stick to
>>> /etc instead of /tmp/etc?
>>
>> It's inspired by libvirt package recipe :-)
>
> Looking at commit a4b9392151 for libvirt, I think it’s a trick here: we
> do pass --sysconfdir=/etc, and sysconfdir=/tmp/etc is passed only during
> the install phase, which I think is a trick to avoid errors while
> creating $(sysconfdir).  But /etc is the actual sysconfdir AIUI.
>
> So, WDYT?  :-)

Thank you for investigation.  I saw no reason not to use file-system
convention at the beginning of discussion.  Here is an another patch.
Build finished successfully for me.

>From fcff3b4b2c53af7974786f7f4dd1633c9b634130 Mon Sep 17 00:00:00 2001
From: Oleg Pykhalov <[email-masked]>
Date: Fri, 6 Oct 2017 06:24:58 +0300
Subject: [PATCH] gnu: qemu: Add sysconfdir to configure-flags.

* gnu/packages/virtualization.scm (qemu): Add sysconfdir to configure-flags.
---
 gnu/packages/virtualization.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index a8e54d684..4e384e79a 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -111,6 +111,7 @@
                          "--disable-debug-info" ; save build space
                          "--enable-virtfs"      ; just to be sure
                          ,(string-append "--prefix=" out)
+                         ,(string-append "--sysconfdir=/etc")
                          ,@configure-flags))))))
          (add-after 'install 'install-info
            (lambda* (#:key inputs outputs #:allow-other-keys)
-- 
2.14.2