summaryrefslogtreecommitdiff
path: root/app-emulation/libvirt
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/libvirt')
-rw-r--r--app-emulation/libvirt/Manifest18
-rw-r--r--app-emulation/libvirt/files/libvirt-6.8.0-fix-libvirt-lxc-dbus.patch24
-rw-r--r--app-emulation/libvirt/files/libvirt-6.8.0-meson-properly-handle-libpcap-if-it-s-explicitly-dis.patch56
-rw-r--r--app-emulation/libvirt/files/libvirt-7.3.0-vircgroup-Fix-virCgroupKillRecursive-wrt-nested-cont.patch189
-rw-r--r--app-emulation/libvirt/libvirt-7.0.0-r2.ebuild (renamed from app-emulation/libvirt/libvirt-7.0.0-r1.ebuild)18
-rw-r--r--app-emulation/libvirt/libvirt-7.1.0-r1.ebuild (renamed from app-emulation/libvirt/libvirt-6.8.0-r2.ebuild)89
-rw-r--r--app-emulation/libvirt/libvirt-7.2.0-r1.ebuild (renamed from app-emulation/libvirt/libvirt-7.1.0.ebuild)18
-rw-r--r--app-emulation/libvirt/libvirt-9999.ebuild39
-rw-r--r--app-emulation/libvirt/metadata.xml6
9 files changed, 272 insertions, 185 deletions
diff --git a/app-emulation/libvirt/Manifest b/app-emulation/libvirt/Manifest
index 105a06dcef1e..da1047a1281b 100644
--- a/app-emulation/libvirt/Manifest
+++ b/app-emulation/libvirt/Manifest
@@ -3,8 +3,7 @@ AUX libvirt-6.0.0-fix_paths_in_libvirt-guests_sh.patch 1281 BLAKE2B 631f813ad29d
AUX libvirt-6.7.0-do-not-use-sysconfig.patch 5001 BLAKE2B 65e6dfacc598ba771fccc1c45c504aadcc83d0d8df211e70721dd0d7e3653c2c4d44a892ece19ee7e22d95552950e21f9d9e0a4ff960d66ebd2f9999c4cd52d1 SHA512 7dd3e4cf03dd8351a644a1669be70fcc6397b27983c0ec7b716dde61c92cf7dc9c46fc841cead5ae616897d9ed60209b03d5d78a4247215f4e79d11282da91ad
AUX libvirt-6.7.0-doc-path.patch 468 BLAKE2B 2438dcccd20faa9bf32734b7a043ca7a9981d37f32d7c867c5ab31a0904f6d57f5bdb4817296506e65e40b3013eef6a978b1d22e3a204b2989f6b766a4f18877 SHA512 401ae495e8aaef1fdea02fc0e05562f3d2f29e286ea493a2eab0f874d1d89053580ff15110ab484a2f39b0546bdc82135e6e1561545ceff6fa7341b875dd54ad
AUX libvirt-6.7.0-fix-paths-for-apparmor.patch 1974 BLAKE2B b5e9a151aa6bfbccf76ef0d6638b00cfbc3f8c4d5a722ba83699d29a32ef2f9a7d9eb678c1f61a128b0fee958a3349a4b843be08cec940f7d1e22757bc66bb95 SHA512 f81627e9c3d6c117e76a7a30af162a8ff8fafa191313155ceecf39bae2c457417152a0380d06cd3a4958b52a6ba410730cf66cd912072f7ec951b507c0a83f96
-AUX libvirt-6.8.0-fix-libvirt-lxc-dbus.patch 1035 BLAKE2B 33beb95638fb97322ec811a887f45c27316e228a08359d4d9f0fae1f8224d6aa8a4c31fbe92b08076c6dd9dd413f7d2dd2058dd78aff3531363348096e10d591 SHA512 b8945a448c201121a791a08d8a7b17b8db27156e5ba568e2b2349cdb504521a5dde1d1425bfd280b7b344eb58bc8b40321e26932474caddfc4cf035804c1d40a
-AUX libvirt-6.8.0-meson-properly-handle-libpcap-if-it-s-explicitly-dis.patch 2059 BLAKE2B f9613928e3c59df0401da9574865e2c44770c62257ea39b354312a4dc8b05d7b4eb7d7501b212ea80089bd64396fa7f79d5e22ec4857d79cad2656c574a6c573 SHA512 c6769fa48ab684666d9c9df58d348c31b78520764cb0135ef0f635c04e986507d400beb961b18dd35ded2eb865307bbd9a34af711e790c36f08721c9bc239000
+AUX libvirt-7.3.0-vircgroup-Fix-virCgroupKillRecursive-wrt-nested-cont.patch 6683 BLAKE2B a346c9584ba85d85bf5c6173f2ea244d141f2697959e68692698086e614b87e76f925f35f14c84d1da8a82c07a66218afd289b66fe1c572d549aa635ec8a4a49 SHA512 615314bbfdd7cef2f440ab0651162c7d70f491ccd4b21c44501b0fb6e46a9066b846992040717e7b6787659d142f24388f2e07076ada92582bdabaa1cce2df54
AUX libvirt-guests.confd 2430 BLAKE2B 9d56477c9377e02503782e6d653579c6d149b292c43f37926f4646374e8aae05ca812b6a3a561811482861f8fe67dfdbe63851963326ddbbf2f4644c85411120 SHA512 78f419a89de7aabaad860903c24f1c070786fc1296d987e61dd537705b0e7f71a46c315888028f3826c3417e42861ca8471788be4ec5695e98427c5f18ae63fc
AUX libvirt-guests.init-r4 5591 BLAKE2B e745692a7ea706c8367cdb7ee2114565770bda5be5675ba3a541555659d17875f7996ff7028bf415224d095b49b71205a3d77f420464d5579ccc189def5e434d SHA512 ec2bc46d72afa61513983b777e2d49da618a35a4687bc75674b3a49ababd4e2e387661010d342fee86c7a73d259644985a263a6c2976e29a436d88921bb040b0
AUX libvirtd.confd-r5 740 BLAKE2B 74a069f4902dd1352f06029c886200615a35870ff88496c91956d23a3172db0789086622422f545498e92b7f8de41225022185fe291dd580cbacdeb783163f4b SHA512 98f935589dbc5f2a99329f77fdf84c563fa0dc99404b7476603679478d68ce8dbea2c88645251d3c28f59e7bcae124ae632972146e8a8c3e0e9fcbfb27296f91
@@ -12,11 +11,14 @@ AUX libvirtd.init-r19 1114 BLAKE2B a69f5a07e0b946a3167ac4509611d08a8b848e7337677
AUX libvirtd.tmpfiles.conf 36 BLAKE2B fa0e1dac4117dcb2a2e826c82c4c63e20156db47abf4088167484f1f3149a4998840cf1aba745621851d7e2653df5c7f7268d8d61be3a3731ea053a88f35c13b SHA512 2b1c3c64dd6fa03d8c2ae24e7ce4aa7d754913214542a68a4e99f10fbc251fd23ee26e297a957d7b4b70eec8ef028c41fc915da3a85fbbd16143bb92d1de3aed
AUX virtlockd.init-r2 573 BLAKE2B 83bbd228bd59fa29f1d974bc5eec8af0b701328a0a64bbb9e2d9cb918d5d0b3c0d5e791afa18f47ffa2c429082083912fda3f2401c3c5b3d8d85ea8b7cacf440 SHA512 11bf7208e8da8cf7b907049100d095f4d6b5d215a0955fa620e50d6d541d3ecd9d779a7903c64feb25d17545c45491d52441e14a04f2c793f3b03dee7784c482
AUX virtlogd.init-r2 572 BLAKE2B e6a86e34eda78fc032df17e1bd94095e357770f4036e19fff895266b58df7e31774f6004fec56fad9e69bf7d1afa5d898bdebe018013877f8844d05b3a46d509 SHA512 d5d83edee8a4bdf0dac79abc129ff7ec11573aa580e32963d7c7d47133e276a4427d8653683fc8b0a6c1c2aba631e5875c73454d6fef3bcac6dcaca542e69f34
-DIST libvirt-6.8.0.tar.xz 8412092 BLAKE2B c118ca6b263054bb6941c62f3d1415f7ed1a3f29a35294272d04bc726643247ee5691e0310a1bf013faeba856d7aadd00a90fe8dbdca6ff4c7eb480e94d92fa2 SHA512 9b69f3dcceb5e40470a78908654faf51b643f6793e556f3115daa4bfe08743af290882dd51f15eb27c38d589eb210d495de7c44a40b363420ab4f4d3a6393cc9
DIST libvirt-7.0.0.tar.xz 8567648 BLAKE2B 0c0b360c371a14b6d82dc6bef4b228bf7a4a17db1a8425d1354128b0705365a04440217ed0862761b2a8eaf81d81494177d777e734a9045bbc87fc613b56eb05 SHA512 dd6db5ec4971cf4c6059795fd81d5a3a889b10740e34c3c92271eda1c683c99df2c8f923398065d8a7c4f987a20eb1da617d5297ba8ea5a31f154412af50c343
+DIST libvirt-7.0.0.tar.xz.asc 833 BLAKE2B 7cc16442f39de660caa38801b12994ca312b250d6c3e5bbef38613702a03cd31cb9b7eaa792af4f8c1b737d67e62f18baa02b481e7fa4d6ec8fc9a07a44db4de SHA512 fb0b6240dbb4e827456f6c573bb3466f19282383bcee5bae8ece923260eca6d252f64b1adfac9a26fdac2a57bb9390aa4c0071e54d16d3e294230b3562764f18
DIST libvirt-7.1.0.tar.xz 8645944 BLAKE2B 97a76091616b427fc64a6a3caf5d9b04d7b9aed7ff7a6d70536ca2eb95d902f0f5ed4b5e56fbdfc6c40f443fb68f4850cff0545256826e575e78fea97158e8f7 SHA512 475b212e920bf8587db4a551126d9eb417d4e18a72550f94feb1aec94821fbac8c84d67ffd59cfe4f8289b6b10ae5f6b579ee170c0d72cb0493ec7ec52183cd6
-EBUILD libvirt-6.8.0-r2.ebuild 8761 BLAKE2B dad229775b97a350f98e2aa20b99abf8032c89c61f464cc40f4470f89889365cab242befe4d5283f3788400b31176e444d52957d638e4e6a3ce0e9003b6b08f5 SHA512 d4d8d79508871a4ba632d134d71e49e15c069d1f249abc695ac398b0bed46331cd0253c41910773904c5d0ea854505c47bd1733a11fde15516776cf0e2757886
-EBUILD libvirt-7.0.0-r1.ebuild 8445 BLAKE2B 9ac249908c83fcfb03b370999afa4c95f83188cf759bf53f55ae7232930348d7174fd93af3ea957426ba44c59b93131c1a3e9f710e69b14473ea6fcc4994fdc5 SHA512 54ffce4674c9a22db3be9878073ba3695ff99cb3c6a9f68540832c9d1f2df2a81ee3e8c89a1805f79cc58b317c8c1496a91ab9f2875bd280967135ec0b131d88
-EBUILD libvirt-7.1.0.ebuild 8197 BLAKE2B a97c4c71f59730b6c145cae14bf546278d988b8b8b13dd130cebd3c0ec64f80c1247a6caa7e80bf4366f703febc2400fffda0e5593478cd83dc2f4a806407377 SHA512 a8bdb21b844f34450e96c2eaeedcb6c87ded9d43f7cceab623dfc64b747e2c74778e6a4ee3cfe8b62cf8f5fefd90384e0746a4a8384791b4b001a94fe9b0b6a7
-EBUILD libvirt-9999.ebuild 8262 BLAKE2B 9069a015ca49de444ddc06384c16834115488f6cbb40edb591dbcc7fbc63e30b101d9579a54616dd570f0d44e2b93702fef3b56f8382eff5dba84aa4b2753e4a SHA512 a06affe00355c1bdd0db8f7506636c927654817d622ed51196f253ab155bf3a29f6983accdd6f8654201b1f708e116308758765469ecec8097759bdf419c420f
-MISC metadata.xml 3568 BLAKE2B ea4e03121fbc3aca8af2d8e12b42fefc9954e8e38fd83b1014353dd83bceeae4e1ba65329b42fb19fc0d6a9aae7c9d16cf88817d4ea7cfe767c7ef5734b291f6 SHA512 4d691fecee1ddd161a67e3b18a6071d1f0f6e1dcc6ae8deb1a63d73ca9c6d86f5a879d8ab9e43397b7988d66a7df9be6f556a52ebfe8d886b1f03e89614cf073
+DIST libvirt-7.1.0.tar.xz.asc 833 BLAKE2B 2610cff98967260a5005840e1b03cff16790da82d9a51f14d6b34453db3ba89aa34915bba69d57b333f50d17e2492c77e85ee4e6282b8fe5f4cd0f7ace638334 SHA512 6c92c91bc7f23b32deee3442008b44d6469a9cabf2ed39459afcbfce9b3f2b1b655514a068c4bcdc8909ba02a0a4762e8f845ae4dba8da18719acf45614ca6da
+DIST libvirt-7.2.0.tar.xz 8661052 BLAKE2B eae6b4e7422690dd780e1647e2a39dfdff0562f3e63bce9ca5ee34540dec3755269efaad459d1b516b56fdeb1503cc966ffa60378aaa18210b972b739716fe34 SHA512 f6bb26ca7cb5a8d342f1f39afd051ed76b71414e1b934557cf50784da17e4f2fb3301c2ace3b593fcdeb6a18ad559a007ad594111c2c348b9157d3a59d475928
+DIST libvirt-7.2.0.tar.xz.asc 833 BLAKE2B c389d80ef4f7627230b88446ef77daab1bf34e49e20cfb5c5418500fdf388af23aeb2458551548cb732c868f87f35a5c28acff8c01faebe985a6953953a69149 SHA512 526955a9f9d294635e63a4ed20c3e478fb4b5f3a63150a59ff30d84ad16a286ddb4c6508d0317c56df63a0d22a099085697df344fe2b15bce07acf9f05cda331
+EBUILD libvirt-7.0.0-r2.ebuild 8728 BLAKE2B 69047ed88abf8ec34d90c77ab7ebb92513985477d816da1ad9ddcd42c33b1a47d70c574a7605a685919e42d33d1af835327ae63761f36bb325bf8a7195e8b6f2 SHA512 1a5216a9b524f77e5099bff5e791866a1432cfedf193afb45dc1a1b1d8720ebb102acf70b148dd0a071ad3d65412768838ea8d3a40765aa9238c77e158133bcf
+EBUILD libvirt-7.1.0-r1.ebuild 8479 BLAKE2B 2b16121f4b0930eae86e7866ca7ad5859cc5009cca4d3b2d3e08566a40dbe94f54e324435fdaa8ac8c6b8eff269fc02421c503b52ffd7e5ab31577bc40b03873 SHA512 75a840582349c8c9373e6f15645818a0f5ba6c8aa4510ab62a16499c9dc7d06f23d1caf488ada35d6d51b24fb62cb96d9c362c0cef592b75adaee8516739c4c9
+EBUILD libvirt-7.2.0-r1.ebuild 8285 BLAKE2B 7d5c0c746e44714177a6192250992e190d57deb8ee342e7fe5f457b2bb6a905bff860544f7fd6267624d46b95b0e75caf905dc6c29ea273f8c72cb5edbaadd45 SHA512 a578a69498e3bbe5b5d9df0509c9cfc6294d49f351bdf4ab20df8392152d655777897c8d15e58c2ff344251c444b981f3f7e58c49b09d952816733dd73f0ab9d
+EBUILD libvirt-9999.ebuild 8121 BLAKE2B afe23c5c267f86131782b7fe043368d2e26a67ca7b20d7f0014078ab1f69a3e7734ca8823beadadf29ad09d5617c5432a832895c0b441a024256425ee8a2e2e6 SHA512 24ca3d948f69ff72513ec5baf14da7905c35a0fcb90fb49b3fae3e43b19a83bc18cba353dd9bba52b94f80b8c7a710e74eb5f7623518d2b6e1b4c10985740a13
+MISC metadata.xml 3326 BLAKE2B 70997d3eee5387a0735faad11a891927ad7c96b5fed632c3774611a7c35159eacfd6b0e9561c09dd08d64112c6bd66ff011fd58ed23520bc4f4f531c0d5f4693 SHA512 651bf4d8eec1af7b08c8b1050f2a4d57fa8e205205c59f231d3f84be643a71633b1426e9df1c83c838636245503bfefeef66696ddb9dc9e8da6b1aadee741856
diff --git a/app-emulation/libvirt/files/libvirt-6.8.0-fix-libvirt-lxc-dbus.patch b/app-emulation/libvirt/files/libvirt-6.8.0-fix-libvirt-lxc-dbus.patch
deleted file mode 100644
index ea1a23795330..000000000000
--- a/app-emulation/libvirt/files/libvirt-6.8.0-fix-libvirt-lxc-dbus.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-https://bugs.gentoo.org/753761
-
-diff --git a/src/util/virgdbus.c b/src/util/virgdbus.c
-index 4360a6a..4ad1a5c 100644
---- a/src/util/virgdbus.c
-+++ b/src/util/virgdbus.c
-@@ -54,11 +54,15 @@ virGDBusBusInit(GBusType type, GError **error)
- if (sharedBus) {
- return g_bus_get_sync(type, NULL, error);
- } else {
-+ GDBusConnectionFlags dbusFlags =
-+ G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT |
-+ G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION;
-+
- address = g_dbus_address_get_for_bus_sync(type, NULL, error);
-- if (error)
-+ if (*error)
- return NULL;
- return g_dbus_connection_new_for_address_sync(address,
-- G_DBUS_CONNECTION_FLAGS_NONE,
-+ dbusFlags,
- NULL,
- NULL,
- error);
diff --git a/app-emulation/libvirt/files/libvirt-6.8.0-meson-properly-handle-libpcap-if-it-s-explicitly-dis.patch b/app-emulation/libvirt/files/libvirt-6.8.0-meson-properly-handle-libpcap-if-it-s-explicitly-dis.patch
deleted file mode 100644
index 46da07afdf00..000000000000
--- a/app-emulation/libvirt/files/libvirt-6.8.0-meson-properly-handle-libpcap-if-it-s-explicitly-dis.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From c8be9ccc36a32cc756d05b2c0838c43a57be15f7 Mon Sep 17 00:00:00 2001
-Message-Id: <c8be9ccc36a32cc756d05b2c0838c43a57be15f7.1607284606.git.mprivozn@redhat.com>
-From: Pavel Hrdina <phrdina@redhat.com>
-Date: Thu, 8 Oct 2020 13:09:45 +0200
-Subject: [PATCH] meson: properly handle libpcap if it's explicitly disabled
-
-If libpcap is detected using pkg-config it would ignore the libpcap
-option.
-
-Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
-Reviewed-by: Andrea Bolognani <abologna@redhat.com>
-Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
----
- meson.build | 25 +++++++++++++++----------
- 1 file changed, 15 insertions(+), 10 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index e5a8316668..ec252ddf39 100644
---- a/meson.build
-+++ b/meson.build
-@@ -1101,17 +1101,22 @@ if libparted_dep.found()
- endif
-
- libpcap_version = '1.5.0'
--libpcap_dep = dependency('libpcap', version: '>=' + libpcap_version, required: false)
--if not libpcap_dep.found()
-- pcap_config_prog = find_program('pcap-config', required: get_option('libpcap'))
-- if pcap_config_prog.found()
-- pcap_args = run_command(pcap_config_prog, '--cflags').stdout().strip().split()
-- pcap_libs = run_command(pcap_config_prog, '--libs').stdout().strip().split()
-- libpcap_dep = declare_dependency(
-- compile_args: pcap_args,
-- link_args: pcap_libs,
-- )
-+if not get_option('libpcap').disabled()
-+ libpcap_dep = dependency('libpcap', version: '>=' + libpcap_version, required: false)
-+
-+ if not libpcap_dep.found()
-+ pcap_config_prog = find_program('pcap-config', required: get_option('libpcap'))
-+ if pcap_config_prog.found()
-+ pcap_args = run_command(pcap_config_prog, '--cflags').stdout().strip().split()
-+ pcap_libs = run_command(pcap_config_prog, '--libs').stdout().strip().split()
-+ libpcap_dep = declare_dependency(
-+ compile_args: pcap_args,
-+ link_args: pcap_libs,
-+ )
-+ endif
- endif
-+else
-+ libpcap_dep = dependency('', required: false)
- endif
- if libpcap_dep.found()
- conf.set('WITH_LIBPCAP', 1)
---
-2.26.2
-
diff --git a/app-emulation/libvirt/files/libvirt-7.3.0-vircgroup-Fix-virCgroupKillRecursive-wrt-nested-cont.patch b/app-emulation/libvirt/files/libvirt-7.3.0-vircgroup-Fix-virCgroupKillRecursive-wrt-nested-cont.patch
new file mode 100644
index 000000000000..69572b321cfb
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirt-7.3.0-vircgroup-Fix-virCgroupKillRecursive-wrt-nested-cont.patch
@@ -0,0 +1,189 @@
+From ea7d0ca37cce76e1327945c4864b996d7fd6d2e6 Mon Sep 17 00:00:00 2001
+Message-Id: <ea7d0ca37cce76e1327945c4864b996d7fd6d2e6.1618903455.git.mprivozn@redhat.com>
+From: Michal Privoznik <mprivozn@redhat.com>
+Date: Fri, 16 Apr 2021 16:39:14 +0200
+Subject: [PATCH] vircgroup: Fix virCgroupKillRecursive() wrt nested
+ controllers
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+I've encountered the following bug, but only on Gentoo with
+systemd and CGroupsV2. I've started an LXC container successfully
+but destroying it reported the following error:
+
+ error: Failed to destroy domain 'amd64'
+ error: internal error: failed to get cgroup backend for 'pathOfController'
+
+Debugging showed, that CGroup hierarchy is full of surprises:
+
+/sys/fs/cgroup/machine.slice/machine-lxc\x2d861\x2damd64.scope/
+└── libvirt
+ ├── dev-hugepages.mount
+ ├── dev-mqueue.mount
+ ├── init.scope
+ ├── sys-fs-fuse-connections.mount
+ ├── sys-kernel-config.mount
+ ├── sys-kernel-debug.mount
+ ├── sys-kernel-tracing.mount
+ ├── system.slice
+ │   ├── console-getty.service
+ │   ├── dbus.service
+ │   ├── system-getty.slice
+ │   ├── system-modprobe.slice
+ │   ├── systemd-journald.service
+ │   ├── systemd-logind.service
+ │   └── tmp.mount
+ └── user.slice
+
+For comparison, here's the same container on recent Rawhide:
+
+/sys/fs/cgroup/machine.slice/machine-lxc\x2d13550\x2damd64.scope/
+└── libvirt
+
+Anyway, those nested directories should not be a problem, because
+virCgroupKillRecursiveInternal() removes them recursively, right?
+Sort of. The function really does remove nested directories, but
+it assumes that every directory has the same controller as the
+rest. Just take a look at virCgroupV2KillRecursive() - it gets
+'Any' controller (the first one it found in ".scope") and then
+passes it to virCgroupKillRecursiveInternal().
+
+This assumption is not true though. The controllers found in
+".scope" are the following:
+
+ cpuset cpu io memory pids
+
+while "libvirt" has fewer:
+
+ cpuset cpu io memory
+
+Up until now it's not problem, because of how we order
+controllers internally - "cpu" is the first and thus picking
+"Any" controller returns just that. But the rest of directories
+has no controllers, their "cgroup.controllers" is just empty.
+
+What fixes the bug is dropping @controller argument from
+virCgroupKillRecursiveInternal() and letting each iteration work
+pick its own controller.
+
+Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
+Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
+---
+ src/util/vircgroup.c | 25 +++++++++++++++++++++++--
+ src/util/vircgrouppriv.h | 1 -
+ src/util/vircgroupv1.c | 7 +------
+ src/util/vircgroupv2.c | 7 +------
+ 4 files changed, 25 insertions(+), 15 deletions(-)
+
+diff --git a/src/util/vircgroup.c b/src/util/vircgroup.c
+index 96280a0a4e..37dde2a5ed 100644
+--- a/src/util/vircgroup.c
++++ b/src/util/vircgroup.c
+@@ -1477,6 +1477,24 @@ virCgroupHasController(virCgroup *cgroup, int controller)
+ }
+
+
++static int
++virCgroupGetAnyController(virCgroup *cgroup)
++{
++ size_t i;
++
++ for (i = 0; i < VIR_CGROUP_BACKEND_TYPE_LAST; i++) {
++ if (!cgroup->backends[i])
++ continue;
++
++ return cgroup->backends[i]->getAnyController(cgroup);
++ }
++
++ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
++ _("Unable to get any controller"));
++ return -1;
++}
++
++
+ int
+ virCgroupPathOfController(virCgroup *group,
+ unsigned int controller,
+@@ -2715,11 +2733,11 @@ int
+ virCgroupKillRecursiveInternal(virCgroup *group,
+ int signum,
+ GHashTable *pids,
+- int controller,
+ const char *taskFile,
+ bool dormdir)
+ {
+ int rc;
++ int controller;
+ bool killedAny = false;
+ g_autofree char *keypath = NULL;
+ g_autoptr(DIR) dp = NULL;
+@@ -2728,6 +2746,9 @@ virCgroupKillRecursiveInternal(virCgroup *group,
+ VIR_DEBUG("group=%p signum=%d pids=%p taskFile=%s dormdir=%d",
+ group, signum, pids, taskFile, dormdir);
+
++ if ((controller = virCgroupGetAnyController(group)) < 0)
++ return -1;
++
+ if (virCgroupPathOfController(group, controller, "", &keypath) < 0)
+ return -1;
+
+@@ -2760,7 +2781,7 @@ virCgroupKillRecursiveInternal(virCgroup *group,
+ return -1;
+
+ if ((rc = virCgroupKillRecursiveInternal(subgroup, signum, pids,
+- controller, taskFile, true)) < 0)
++ taskFile, true)) < 0)
+ return -1;
+ if (rc == 1)
+ killedAny = true;
+diff --git a/src/util/vircgrouppriv.h b/src/util/vircgrouppriv.h
+index 00193fb101..caf7ed84db 100644
+--- a/src/util/vircgrouppriv.h
++++ b/src/util/vircgrouppriv.h
+@@ -135,6 +135,5 @@ int virCgroupRemoveRecursively(char *grppath);
+ int virCgroupKillRecursiveInternal(virCgroup *group,
+ int signum,
+ GHashTable *pids,
+- int controller,
+ const char *taskFile,
+ bool dormdir);
+diff --git a/src/util/vircgroupv1.c b/src/util/vircgroupv1.c
+index 2cc7dd386a..8a04bb2e4a 100644
+--- a/src/util/vircgroupv1.c
++++ b/src/util/vircgroupv1.c
+@@ -812,12 +812,7 @@ virCgroupV1KillRecursive(virCgroup *group,
+ int signum,
+ GHashTable *pids)
+ {
+- int controller = virCgroupV1GetAnyController(group);
+-
+- if (controller < 0)
+- return -1;
+-
+- return virCgroupKillRecursiveInternal(group, signum, pids, controller,
++ return virCgroupKillRecursiveInternal(group, signum, pids,
+ "tasks", false);
+ }
+
+diff --git a/src/util/vircgroupv2.c b/src/util/vircgroupv2.c
+index e555217355..8881d3a88a 100644
+--- a/src/util/vircgroupv2.c
++++ b/src/util/vircgroupv2.c
+@@ -577,12 +577,7 @@ virCgroupV2KillRecursive(virCgroup *group,
+ int signum,
+ GHashTable *pids)
+ {
+- int controller = virCgroupV2GetAnyController(group);
+-
+- if (controller < 0)
+- return -1;
+-
+- return virCgroupKillRecursiveInternal(group, signum, pids, controller,
++ return virCgroupKillRecursiveInternal(group, signum, pids,
+ "cgroup.threads", false);
+ }
+
+--
+2.26.3
+
diff --git a/app-emulation/libvirt/libvirt-7.0.0-r1.ebuild b/app-emulation/libvirt/libvirt-7.0.0-r2.ebuild
index 1f1c28bdb1a9..745429541ce0 100644
--- a/app-emulation/libvirt/libvirt-7.0.0-r1.ebuild
+++ b/app-emulation/libvirt/libvirt-7.0.0-r2.ebuild
@@ -5,7 +5,7 @@ EAPI=7
PYTHON_COMPAT=( python3_{7,8,9} )
-inherit meson bash-completion-r1 eutils linux-info python-any-r1 readme.gentoo-r1 tmpfiles
+inherit meson bash-completion-r1 eutils linux-info python-any-r1 readme.gentoo-r1 tmpfiles verify-sig
if [[ ${PV} = *9999* ]]; then
inherit git-r3
@@ -13,7 +13,8 @@ if [[ ${PV} = *9999* ]]; then
SRC_URI=""
SLOT="0"
else
- SRC_URI="https://libvirt.org/sources/${P}.tar.xz"
+ SRC_URI="https://libvirt.org/sources/${P}.tar.xz
+ verify-sig? ( https://libvirt.org/sources/${P}.tar.xz.asc )"
KEYWORDS="amd64 ~arm64 ~ppc64 x86"
SLOT="0/${PV}"
fi
@@ -21,6 +22,7 @@ fi
DESCRIPTION="C toolkit to manipulate virtual machines"
HOMEPAGE="https://www.libvirt.org/"
LICENSE="LGPL-2.1"
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libvirt.org.asc
IUSE="
apparmor audit +caps dtrace firewalld fuse glusterfs iscsi
iscsi-direct +libvirtd lvm libssh lxc nfs nls numa openvz
@@ -44,7 +46,8 @@ BDEPEND="
dev-libs/libxslt
dev-perl/XML-XPath
dev-python/docutils
- virtual/pkgconfig"
+ virtual/pkgconfig
+ verify-sig? ( app-crypt/openpgp-keys-libvirt )"
# gettext.sh command is used by the libvirt command wrappers, and it's
# non-optional, so put it into RDEPEND.
@@ -130,6 +133,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-6.7.0-do-not-use-sysconfig.patch
"${FILESDIR}"/${PN}-6.7.0-doc-path.patch
"${FILESDIR}"/${PN}-6.7.0-fix-paths-for-apparmor.patch
+ "${FILESDIR}"/${PN}-7.3.0-vircgroup-Fix-virCgroupKillRecursive-wrt-nested-cont.patch
)
pkg_setup() {
@@ -296,9 +300,9 @@ src_install() {
rm -rf "${D}"/run || die
# Fix up doc paths for revisions
- if [ $PV != $PVR ]; then
- mv "${D}"/usr/share/doc/${PN}-${PV}/* "${D}"/usr/share/doc/${PF} || die
- rmdir "${D}"/usr/share/doc/${PN}-${PV} || die
+ if [ ${PV} != ${PVR} ]; then
+ mv "${ED}"/usr/share/doc/${PN}-${PV}/* "${ED}"/usr/share/doc/${PF} || die
+ rmdir "${ED}"/usr/share/doc/${PN}-${PV} || die
fi
newbashcomp "${S}/tools/bash-completion/vsh" virsh
@@ -325,7 +329,7 @@ src_install() {
pkg_preinst() {
# we only ever want to generate this once
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
- rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml || die
+ rm -rf "${ED}"/etc/libvirt/qemu/networks/default.xml || die
fi
}
diff --git a/app-emulation/libvirt/libvirt-6.8.0-r2.ebuild b/app-emulation/libvirt/libvirt-7.1.0-r1.ebuild
index c7a144ac4dd8..985e610ef46e 100644
--- a/app-emulation/libvirt/libvirt-6.8.0-r2.ebuild
+++ b/app-emulation/libvirt/libvirt-7.1.0-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=7
PYTHON_COMPAT=( python3_{7,8,9} )
-inherit meson bash-completion-r1 eutils linux-info python-any-r1 readme.gentoo-r1 tmpfiles
+inherit meson bash-completion-r1 linux-info python-any-r1 readme.gentoo-r1 tmpfiles verify-sig
if [[ ${PV} = *9999* ]]; then
inherit git-r3
@@ -13,18 +13,20 @@ if [[ ${PV} = *9999* ]]; then
SRC_URI=""
SLOT="0"
else
- SRC_URI="https://libvirt.org/sources/${P}.tar.xz"
- KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+ SRC_URI="https://libvirt.org/sources/${P}.tar.xz
+ verify-sig? ( https://libvirt.org/sources/${P}.tar.xz.asc )"
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
SLOT="0/${PV}"
fi
DESCRIPTION="C toolkit to manipulate virtual machines"
-HOMEPAGE="https://www.libvirt.org/"
+HOMEPAGE="https://www.libvirt.org/ https://gitlab.com/libvirt/libvirt/"
LICENSE="LGPL-2.1"
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libvirt.org.asc
IUSE="
- apparmor audit +caps +dbus dtrace firewalld fuse glusterfs iscsi
- iscsi-direct +libvirtd lvm libssh lxc +macvtap nfs nls numa openvz
- parted pcap policykit +qemu rbd sasl selinux +udev +vepa
+ apparmor audit +caps dtrace firewalld fuse glusterfs iscsi
+ iscsi-direct +libvirtd lvm libssh lxc nfs nls numa openvz
+ parted pcap policykit +qemu rbd sasl selinux +udev
virtualbox +virt-network wireshark-plugins xen zfs
"
@@ -33,22 +35,19 @@ REQUIRED_USE="
libvirtd? ( || ( lxc openvz qemu virtualbox xen ) )
lxc? ( caps libvirtd )
openvz? ( libvirtd )
- policykit? ( dbus )
qemu? ( libvirtd )
- vepa? ( macvtap )
virt-network? ( libvirtd )
virtualbox? ( libvirtd )
xen? ( libvirtd )"
BDEPEND="
- acct-user/qemu
- policykit? ( acct-group/libvirt )
app-text/xhtml1
dev-lang/perl
dev-libs/libxslt
dev-perl/XML-XPath
dev-python/docutils
- virtual/pkgconfig"
+ virtual/pkgconfig
+ verify-sig? ( app-crypt/openpgp-keys-libvirt )"
# gettext.sh command is used by the libvirt command wrappers, and it's
# non-optional, so put it into RDEPEND.
@@ -56,6 +55,7 @@ BDEPEND="
# package will use 3 by default. Since we don't have slot pinning in an API,
# we must go with the most recent
RDEPEND="
+ acct-user/qemu
app-misc/scrub
>=dev-libs/glib-2.48.0
dev-libs/libgcrypt:0
@@ -67,14 +67,15 @@ RDEPEND="
net-libs/libtirpc
net-libs/rpcsvc-proto
>=net-misc/curl-7.18.0
+ sys-apps/dbus
sys-apps/dmidecode
sys-devel/gettext
sys-libs/ncurses:0=
sys-libs/readline:=
+ virtual/acl
apparmor? ( sys-libs/libapparmor )
audit? ( sys-process/audit )
caps? ( sys-libs/libcap-ng )
- dbus? ( sys-apps/dbus )
dtrace? ( dev-util/systemtap )
firewalld? ( >=net-firewall/firewalld-0.6.3 )
fuse? ( sys-fs/fuse:0= )
@@ -83,6 +84,7 @@ RDEPEND="
iscsi-direct? ( >=net-libs/libiscsi-1.18.0 )
libssh? ( net-libs/libssh )
lvm? ( >=sys-fs/lvm2-2.02.48-r2[-device-mapper-only(-)] )
+ lxc? ( !sys-apps/systemd[cgroup-hybrid(-)] )
nfs? ( net-fs/nfs-utils )
numa? (
>sys-process/numactl-2.0.2
@@ -93,7 +95,10 @@ RDEPEND="
sys-fs/lvm2[-device-mapper-only(-)]
)
pcap? ( >=net-libs/libpcap-1.0.0 )
- policykit? ( >=sys-auth/polkit-0.9 )
+ policykit? (
+ acct-group/libvirt
+ >=sys-auth/polkit-0.9
+ )
qemu? (
>=app-emulation/qemu-1.5.0
dev-libs/yajl
@@ -102,7 +107,7 @@ RDEPEND="
sasl? ( dev-libs/cyrus-sasl )
selinux? ( >=sys-libs/libselinux-2.0.85 )
virt-network? (
- net-dns/dnsmasq[script]
+ net-dns/dnsmasq[dhcp,ipv6,script]
net-firewall/ebtables
>=net-firewall/iptables-1.4.10[ipv6]
net-misc/radvd
@@ -128,8 +133,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-6.7.0-do-not-use-sysconfig.patch
"${FILESDIR}"/${PN}-6.7.0-doc-path.patch
"${FILESDIR}"/${PN}-6.7.0-fix-paths-for-apparmor.patch
- "${FILESDIR}"/${PN}-6.8.0-fix-libvirt-lxc-dbus.patch
- "${FILESDIR}"/${PN}-6.8.0-meson-properly-handle-libpcap-if-it-s-explicitly-dis.patch
+ "${FILESDIR}"/${PN}-7.3.0-vircgroup-Fix-virCgroupKillRecursive-wrt-nested-cont.patch
)
pkg_setup() {
@@ -173,9 +177,6 @@ pkg_setup() {
kernel_is lt 4 7 && use lxc && CONFIG_CHECK+="
~DEVPTS_MULTIPLE_INSTANCES"
- use macvtap && CONFIG_CHECK+="
- ~MACVTAP"
-
use virt-network && CONFIG_CHECK+="
~BRIDGE_EBT_MARK_T
~BRIDGE_NF_EBTABLES
@@ -201,24 +202,20 @@ pkg_setup() {
~NET_SCH_INGRESS
~NET_SCH_SFQ"
- # Handle specific kernel versions for different features
- kernel_is lt 3 6 && CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
- if kernel_is ge 3 6; then
- CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP "
- kernel_is lt 4 5 && CONFIG_CHECK+=" ~MEMCG_KMEM "
- fi
-
ERROR_USER_NS="Optional depending on LXC configuration."
if [[ -n ${CONFIG_CHECK} ]]; then
linux-info_pkg_setup
fi
+
+ python-any-r1_pkg_setup
}
src_prepare() {
touch "${S}/.mailmap" || die
default
+ python_fix_shebang .
# Tweak the init script:
cp "${FILESDIR}/libvirtd.init-r19" "${S}/libvirtd.init" || die
@@ -232,7 +229,6 @@ src_configure() {
$(meson_use apparmor apparmor_profiles)
$(meson_feature audit)
$(meson_feature caps capng)
- $(meson_feature dbus)
$(meson_feature dtrace)
$(meson_feature firewalld)
$(meson_feature fuse)
@@ -245,7 +241,6 @@ src_configure() {
$(meson_feature lvm storage_lvm)
$(meson_feature lvm storage_mpath)
$(meson_feature lxc driver_lxc)
- $(meson_feature macvtap)
$(meson_feature nls)
$(meson_feature numa numactl)
$(meson_feature numa numad)
@@ -259,14 +254,12 @@ src_configure() {
$(meson_feature sasl)
$(meson_feature selinux)
$(meson_feature udev)
- $(meson_feature vepa virtualport)
$(meson_feature virt-network driver_network)
$(meson_feature virtualbox driver_vbox)
$(meson_feature wireshark-plugins wireshark_dissector)
$(meson_feature xen driver_libxl)
$(meson_feature zfs storage_zfs)
- -Dhal=disabled
-Dnetcf=disabled
-Dsanlock=disabled
@@ -286,13 +279,6 @@ src_configure() {
}
src_test() {
- # remove problematic tests, bug #591416, bug #591418
- sed -i -e 's#commandtest$(EXEEXT) # #' \
- -e 's#virfirewalltest$(EXEEXT) # #' \
- -e 's#nwfilterebiptablestest$(EXEEXT) # #' \
- -e 's#nwfilterxml2firewalltest$(EXEEXT)$##' \
- tests/Makefile
-
export VIR_TEST_DEBUG=1
meson_src_test
}
@@ -300,11 +286,21 @@ src_test() {
src_install() {
meson_src_install
- # Remove bogus, empty directories. They are either not used, or
- # libvirtd is able to create them on demand
- rm -rf "${D}"/etc/sysconfig || die
- rm -rf "${D}"/var || die
- rm -rf "${D}"/run || die
+ # Depending on configuration option, libvirt will create some bogus
+ # directoreis. They are either not used, or libvirtd is able to create
+ # them on demand, so let's remove them.
+ #
+ # Note, we are using -f here so that rm does not fail or warn if the
+ # directory is nonexistent.
+ rm -rf "${D}"/etc/sysconfig
+ rm -rf "${D}"/var
+ rm -rf "${D}"/run
+
+ # Fix up doc paths for revisions
+ if [[ ${PV} != ${PVR} ]]; then
+ mv "${ED}"/usr/share/doc/${PN}-${PV}/* "${ED}"/usr/share/doc/${PF} || die
+ rmdir "${ED}"/usr/share/doc/${PN}-${PV} || die
+ fi
newbashcomp "${S}/tools/bash-completion/vsh" virsh
bashcomp_alias virsh virt-admin
@@ -327,13 +323,6 @@ src_install() {
readme.gentoo_create_doc
}
-pkg_preinst() {
- # we only ever want to generate this once
- if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
- rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml || die
- fi
-}
-
pkg_postinst() {
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml || die
diff --git a/app-emulation/libvirt/libvirt-7.1.0.ebuild b/app-emulation/libvirt/libvirt-7.2.0-r1.ebuild
index 16755a56b8ac..408b30efa060 100644
--- a/app-emulation/libvirt/libvirt-7.1.0.ebuild
+++ b/app-emulation/libvirt/libvirt-7.2.0-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=7
PYTHON_COMPAT=( python3_{7,8,9} )
-inherit meson bash-completion-r1 linux-info python-any-r1 readme.gentoo-r1 tmpfiles
+inherit meson bash-completion-r1 linux-info python-any-r1 readme.gentoo-r1 tmpfiles verify-sig
if [[ ${PV} = *9999* ]]; then
inherit git-r3
@@ -13,7 +13,8 @@ if [[ ${PV} = *9999* ]]; then
SRC_URI=""
SLOT="0"
else
- SRC_URI="https://libvirt.org/sources/${P}.tar.xz"
+ SRC_URI="https://libvirt.org/sources/${P}.tar.xz
+ verify-sig? ( https://libvirt.org/sources/${P}.tar.xz.asc )"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
SLOT="0/${PV}"
fi
@@ -21,6 +22,7 @@ fi
DESCRIPTION="C toolkit to manipulate virtual machines"
HOMEPAGE="https://www.libvirt.org/ https://gitlab.com/libvirt/libvirt/"
LICENSE="LGPL-2.1"
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libvirt.org.asc
IUSE="
apparmor audit +caps dtrace firewalld fuse glusterfs iscsi
iscsi-direct +libvirtd lvm libssh lxc nfs nls numa openvz
@@ -44,7 +46,8 @@ BDEPEND="
dev-libs/libxslt
dev-perl/XML-XPath
dev-python/docutils
- virtual/pkgconfig"
+ virtual/pkgconfig
+ verify-sig? ( app-crypt/openpgp-keys-libvirt )"
# gettext.sh command is used by the libvirt command wrappers, and it's
# non-optional, so put it into RDEPEND.
@@ -128,8 +131,8 @@ DEPEND="${BDEPEND}
PATCHES=(
"${FILESDIR}"/${PN}-6.0.0-fix_paths_in_libvirt-guests_sh.patch
"${FILESDIR}"/${PN}-6.7.0-do-not-use-sysconfig.patch
- "${FILESDIR}"/${PN}-6.7.0-doc-path.patch
"${FILESDIR}"/${PN}-6.7.0-fix-paths-for-apparmor.patch
+ "${FILESDIR}"/${PN}-7.3.0-vircgroup-Fix-virCgroupKillRecursive-wrt-nested-cont.patch
)
pkg_setup() {
@@ -269,6 +272,7 @@ src_configure() {
--localstatedir="${EPREFIX}/var"
-Drunstatedir="${EPREFIX}/run"
+ -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
)
meson_src_configure
@@ -292,12 +296,6 @@ src_install() {
rm -rf "${D}"/var
rm -rf "${D}"/run
- # Fix up doc paths for revisions
- if [[ $PV != $PVR ]]; then
- mv "${D}"/usr/share/doc/${PN}-${PV}/* "${D}"/usr/share/doc/${PF} || die
- rmdir "${D}"/usr/share/doc/${PN}-${PV} || die
- fi
-
newbashcomp "${S}/tools/bash-completion/vsh" virsh
bashcomp_alias virsh virt-admin
diff --git a/app-emulation/libvirt/libvirt-9999.ebuild b/app-emulation/libvirt/libvirt-9999.ebuild
index 767580ad5f76..769f02106434 100644
--- a/app-emulation/libvirt/libvirt-9999.ebuild
+++ b/app-emulation/libvirt/libvirt-9999.ebuild
@@ -5,7 +5,7 @@ EAPI=7
PYTHON_COMPAT=( python3_{7,8,9} )
-inherit meson bash-completion-r1 eutils linux-info python-any-r1 readme.gentoo-r1 tmpfiles
+inherit meson bash-completion-r1 linux-info python-any-r1 readme.gentoo-r1 tmpfiles
if [[ ${PV} = *9999* ]]; then
inherit git-r3
@@ -13,13 +13,14 @@ if [[ ${PV} = *9999* ]]; then
SRC_URI=""
SLOT="0"
else
- SRC_URI="https://libvirt.org/sources/${P}.tar.xz"
+ SRC_URI="https://libvirt.org/sources/${P}.tar.xz
+ verify-sig? ( https://libvirt.org/sources/${P}.tar.xz.asc )"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
SLOT="0/${PV}"
fi
DESCRIPTION="C toolkit to manipulate virtual machines"
-HOMEPAGE="https://www.libvirt.org/"
+HOMEPAGE="https://www.libvirt.org/ https://gitlab.com/libvirt/libvirt/"
LICENSE="LGPL-2.1"
IUSE="
apparmor audit +caps dtrace firewalld fuse glusterfs iscsi
@@ -197,13 +198,6 @@ pkg_setup() {
~NET_SCH_INGRESS
~NET_SCH_SFQ"
- # Handle specific kernel versions for different features
- kernel_is lt 3 6 && CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
- if kernel_is ge 3 6; then
- CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP "
- kernel_is lt 4 5 && CONFIG_CHECK+=" ~MEMCG_KMEM "
- fi
-
ERROR_USER_NS="Optional depending on LXC configuration."
if [[ -n ${CONFIG_CHECK} ]]; then
@@ -289,14 +283,18 @@ src_test() {
src_install() {
meson_src_install
- # Remove bogus, empty directories. They are either not used, or
- # libvirtd is able to create them on demand
- rm -rf "${D}"/etc/sysconfig || die
- rm -rf "${D}"/var || die
- rm -rf "${D}"/run || die
+ # Depending on configuration option, libvirt will create some bogus
+ # directoreis. They are either not used, or libvirtd is able to create
+ # them on demand, so let's remove them.
+ #
+ # Note, we are using -f here so that rm does not fail or warn if the
+ # directory is nonexistent.
+ rm -rf "${D}"/etc/sysconfig
+ rm -rf "${D}"/var
+ rm -rf "${D}"/run
- newbashcomp "${S}/tools/bash-completion/vsh" virsh
- bashcomp_alias virsh virt-admin
+ newbashcomp "${BUILD_DIR}/tools/bash-completion/virsh" virsh
+ newbashcomp "${BUILD_DIR}/tools/bash-completion/virt-admin" virt-admin
use libvirtd || return 0
# From here, only libvirtd-related instructions, be warned!
@@ -316,13 +314,6 @@ src_install() {
readme.gentoo_create_doc
}
-pkg_preinst() {
- # we only ever want to generate this once
- if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
- rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml || die
- fi
-}
-
pkg_postinst() {
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml || die
diff --git a/app-emulation/libvirt/metadata.xml b/app-emulation/libvirt/metadata.xml
index 5151b9df4986..54914eb3f864 100644
--- a/app-emulation/libvirt/metadata.xml
+++ b/app-emulation/libvirt/metadata.xml
@@ -67,12 +67,6 @@
<flag name="pcap">
Support auto learning IP addreses for routing
</flag>
- <flag name="macvtap">
- Support for MAC-based TAP (macvlan/macvtap). For networking instead
- of the normal TUN/TAP.
- </flag>
- <flag name="vepa">Virtual Ethernet Port Aggregator (VEPA) / 802.1Qbg
- support. Relies on macvtap support.</flag>
<flag name="virt-network">
Enable virtual networking (NAT) support for guests. Includes all
the dependencies for NATed network mode. Effectively any network