diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-07-12 16:32:46 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-07-12 16:32:46 +0100 |
commit | d0e460d711ba47fcff5bf5cd57355d0853795dc5 (patch) | |
tree | 2e53c3c67e31304c8a141a8cfa9f157d1b139947 /app-emulation | |
parent | eb3ae345f026de053870dfa589779989d300ebef (diff) |
gentoo auto-resync : 12:07:2023 - 16:32:45
Diffstat (limited to 'app-emulation')
-rw-r--r-- | app-emulation/Manifest.gz | bin | 15336 -> 15338 bytes | |||
-rw-r--r-- | app-emulation/libvirt/Manifest | 6 | ||||
-rw-r--r-- | app-emulation/libvirt/files/libvirt-9.6.0-fix-paths-for-apparmor.patch | 97 | ||||
-rw-r--r-- | app-emulation/libvirt/libvirt-9.5.0.ebuild | 363 | ||||
-rw-r--r-- | app-emulation/libvirt/libvirt-9999.ebuild | 3 |
5 files changed, 467 insertions, 2 deletions
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz Binary files differindex 23629f2e8341..01832ac47d88 100644 --- a/app-emulation/Manifest.gz +++ b/app-emulation/Manifest.gz diff --git a/app-emulation/libvirt/Manifest b/app-emulation/libvirt/Manifest index f72c6a2a4f93..e721aba7e1eb 100644 --- a/app-emulation/libvirt/Manifest +++ b/app-emulation/libvirt/Manifest @@ -5,6 +5,7 @@ AUX libvirt-8.2.0-fix-paths-for-apparmor.patch 2785 BLAKE2B 2b1daa96385ce09a078e AUX libvirt-9.4.0-do-not-use-sysconfig.patch 8195 BLAKE2B b731d57dc86fe725d3cbd47b6e691a414107d3594377bd1c73e19735368937a0983e407ec05700213d2ec5802e90f429fd5c7354cd03fb25d3acced952ab6f38 SHA512 2a2e08a6034ed37cafebde3b0fd27913d972d1e9f8816e10a9af951e99f10bd3b9bc7ada1ac50c5085e3fdd3d02301365d031eb6ce3b71102e4b3072d609f21b AUX libvirt-9.4.0-fix-paths-for-apparmor.patch 3891 BLAKE2B 2af9198b4dbf1a05fb3d187920f3f47f773f94679bb94cdf318f092ea2ad4e6e6f88c7e2d3432e90510c6cb685de3c91721b8aa77809372dfd0c3b5d4f42ed70 SHA512 d785e5be0042072eeb4cccaf7cdf0cbe4fc195837f7736eae2da7c9d54a3f2538c2a6aac917d6f9621f66b5c05666ef8800bf30869a777bfb033a73b78129880 AUX libvirt-9.4.0-fix_paths_in_libvirt-guests_sh.patch 988 BLAKE2B 5936eafa5c300edad7ed368ec13063d31aea59e3daefeac59cf515ea44667f61aa63b0e2c2a5c88ace24c48cc132789cc5fa1a7c6c04c17e9ac61b114778e46d SHA512 5b80a5ec2898c1c821d0d49b9de67a256f82cb60879215ddde07c2a51f2e8a8b6893fec65617c27edec50cd51a362fb1fcdd21827e8de954f26879adcfa12418 +AUX libvirt-9.6.0-fix-paths-for-apparmor.patch 4250 BLAKE2B bf7cc5250575a3b377539aabae316b91a4ff4bc1490f894859e7c066285909b26904fc020cf1c25bed6bae0670db52b2064b55e12a9a8161e2eb4dd0e4bd987e SHA512 abd6472a2a2bd23c0d7232ee807e4c57a799afab13c7bf11538f9b20da584677830691f84816d2cdcec0b7986817c8d469ca169073c2cb0e4b32e8b0ffa05003 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 @@ -16,7 +17,10 @@ DIST libvirt-9.3.0.tar.xz 9246292 BLAKE2B 6e47a70ec247b37c1958e324d5bf7ebcbff6ac DIST libvirt-9.3.0.tar.xz.asc 833 BLAKE2B 25810919210bd489ecfd85f172c472d52e911e90d651fac2c7fa4f73220890bd2448317448f0469e8abfe8ad5ea6f3eb6b321e6d989e64f6ad4b676a5a38312c SHA512 0b51a621cef616ac55ac40c9bf9da56d3e1d59b5e87bcd04deaac7f775faab8f30861e53112be2242d9c8c6be41f1ed1c29d345d96e39be0ac33ef0b01494c45 DIST libvirt-9.4.0.tar.xz 9250724 BLAKE2B 837a6eef509a43a0cd25a2ecaac9de95f21e903b553d5e56b404a689495e66bb0053866c9aea672cbe69130286d5a2ff2eb38ff447c77100e92bcb56cd244ee3 SHA512 8a8e3983c47c5ed5f4b50d90cb04e435717afddd27e16112ceeddda458d45c693daf65575f5d50274cfffcd1c83cbdd290819d8ece63f3bf9441b6bdaa309852 DIST libvirt-9.4.0.tar.xz.asc 833 BLAKE2B 3a31f4097d8684a3a5e4b696c9bb49316a07c611a0cf1703e18653536af93d018ec44cbe5d0ce031e6f2c23a7c72691ded4c219faafa4bc770ad0dd7b616d0ce SHA512 710861b6b1c866be452e2da18a631076ad3ca3fbeb1728e561de08b34d16d2b49a0c390e7fa36eb35d0dc58fa35d5866ea6c573c84e9312b02880cdb969f7342 +DIST libvirt-9.5.0.tar.xz 9261176 BLAKE2B 9c270f782bb74194f209251d6397537182949e97877238bd96b36256b14000998d7b8ad2d4bccad5b44c54a69a21b0be6f60665b3f3bab5cd129e4cfce39a264 SHA512 d8c40281856a60ba2a22a7a64721c4baee1803235227a973a22465aacfb26f674dc65045b87d0dcd183be324cb65408f253b4d72c2ed494fb809e98772eea2e3 +DIST libvirt-9.5.0.tar.xz.asc 833 BLAKE2B 48e935f3509b05403a742119657983f4708a26637af1ec6b622ff82ae5d2507ff935cdf113ade37b643b2bca49ad56bfd1eba7809349a17634e4779d25edbd96 SHA512 794e7be683e61da963b96ac6185e4abb65a44578e00fa14073a0d6c7d98973c4fa5038a0a905f822a6d2f8fd1b201145714b0137adf936c6d56df79523a08b9e EBUILD libvirt-9.3.0.ebuild 9338 BLAKE2B 199fe95d127cff893f2134bcf6cb5bc6226b505e576959f7495ffa6781cc4732128448f77d90356ad6de2527a2d94e2a0d32ae9ca6ecf394604980c7d982bf34 SHA512 0557c857c21bdd7237ce6dc6b13f229aa3528061bde1756ac401e3f2fb296c79d7570aaec8572b1b6e61e2aaa0134a0f823437dd05d5de0cb9f34649865f0e09 EBUILD libvirt-9.4.0-r3.ebuild 9400 BLAKE2B 27447d18b321a9d69a4a8d4d9baf827ac5544866a10420720d26da870c3751e522fecc0e065280b41b8633db0fc9797e9a137fe5dab90cc5af5f2ff130a3ef71 SHA512 51f89121a3757f3c38ab8538c19186de9e204a37e2554d196d0bb32f8d03b7e4d987a52e2bedb78d80b5f132022e81d6e7572e173da1946bd79435de18ef3007 -EBUILD libvirt-9999.ebuild 9382 BLAKE2B a3a1fc5991bb5a6ddd993f7287198b1abd45e22261809a7c44f66921bfe9db5d24c6175c38c1bf2aaf76445785cdf06bfd3a6f1ecc40bbefb1b16e453064ded7 SHA512 4a02df0467c64de5eae61ec4f176f714356ea8a827c1ab7813183a2f218292c62ff99fdefac6a1cb709c7cb748a59585bb9d80b89365086681713dd812c261dd +EBUILD libvirt-9.5.0.ebuild 9400 BLAKE2B 27447d18b321a9d69a4a8d4d9baf827ac5544866a10420720d26da870c3751e522fecc0e065280b41b8633db0fc9797e9a137fe5dab90cc5af5f2ff130a3ef71 SHA512 51f89121a3757f3c38ab8538c19186de9e204a37e2554d196d0bb32f8d03b7e4d987a52e2bedb78d80b5f132022e81d6e7572e173da1946bd79435de18ef3007 +EBUILD libvirt-9999.ebuild 9400 BLAKE2B 9b0ed520dd0ece1a4643c7bd21299544efb7e36e20939150abc674e45968e0402f270bcf5cbd001ae4cd77523fda000939bc536ab5b68768452b22bfa05e4039 SHA512 2aa1a8383d8a88bfc6496478c585069994cf82635f6d164bc8ce72012db26f91b4f9bb855212ab3a03ddde92419fbbb7e9b7814179876d544351dcb0bb6d07ae MISC metadata.xml 3729 BLAKE2B 2e68676afb3820c7b8cd3d76b0a5c42886e246fc6b440ce49c71cbe60c124cdccd4ed8fb97f7153529b758d56dfba98b6a98a31b2fbff7e738f52bce796a3476 SHA512 0dfe519af8b740de9d41b1e2c40133026718a782b654a261c54cbe22b5f694cda8b73036c59411317757b73c40acaea77f70d7ab86ae8325e78d61151e6c64f1 diff --git a/app-emulation/libvirt/files/libvirt-9.6.0-fix-paths-for-apparmor.patch b/app-emulation/libvirt/files/libvirt-9.6.0-fix-paths-for-apparmor.patch new file mode 100644 index 000000000000..2ffe279e74b0 --- /dev/null +++ b/app-emulation/libvirt/files/libvirt-9.6.0-fix-paths-for-apparmor.patch @@ -0,0 +1,97 @@ +From 4927c28a30fe469b512b49346f321661ca865769 Mon Sep 17 00:00:00 2001 +Message-ID: <4927c28a30fe469b512b49346f321661ca865769.1689058931.git.mprivozn@redhat.com> +From: Michal Privoznik <mprivozn@redhat.com> +Date: Tue, 15 Mar 2022 05:23:29 +0100 +Subject: [PATCH] libvirt-9.5.0-fix-paths-for-apparmor.patch + +Signed-off-by: Michal Privoznik <mprivozn@redhat.com> +--- + src/security/apparmor/libvirt-qemu.in | 1 + + src/security/apparmor/meson.build | 6 +++--- + src/security/apparmor/usr.lib.libvirt.virt-aa-helper.local | 1 - + ...t-aa-helper.in => usr.libexec.libvirt.virt-aa-helper.in} | 6 +++--- + .../apparmor/usr.libexec.libvirt.virt-aa-helper.local | 1 + + 5 files changed, 8 insertions(+), 7 deletions(-) + delete mode 100644 src/security/apparmor/usr.lib.libvirt.virt-aa-helper.local + rename src/security/apparmor/{usr.lib.libvirt.virt-aa-helper.in => usr.libexec.libvirt.virt-aa-helper.in} (92%) + create mode 100644 src/security/apparmor/usr.libexec.libvirt.virt-aa-helper.local + +diff --git a/src/security/apparmor/libvirt-qemu.in b/src/security/apparmor/libvirt-qemu.in +index 53f45c3a28..7882e811fc 100644 +--- a/src/security/apparmor/libvirt-qemu.in ++++ b/src/security/apparmor/libvirt-qemu.in +@@ -96,6 +96,7 @@ + /usr/share/sgabios/** r, + /usr/share/slof/** r, + /usr/share/vgabios/** r, ++ /usr/share/seavgabios/** r, + + # pki for libvirt-vnc and libvirt-spice (LP: #901272, #1690140) + /etc/pki/CA/ r, +diff --git a/src/security/apparmor/meson.build b/src/security/apparmor/meson.build +index b9257c816d..c1b79fef27 100644 +--- a/src/security/apparmor/meson.build ++++ b/src/security/apparmor/meson.build +@@ -1,5 +1,5 @@ + apparmor_gen_profiles = [ +- 'usr.lib.libvirt.virt-aa-helper', ++ 'usr.libexec.libvirt.virt-aa-helper', + 'usr.sbin.libvirtd', + 'usr.sbin.virtqemud', + 'usr.sbin.virtxend', +@@ -82,8 +82,8 @@ if not conf.has('WITH_APPARMOR_3') + # AppArmor 3.x, upstream's preference is to avoid creating these + # files in order to limit the amount of filesystem clutter. + install_data( +- 'usr.lib.libvirt.virt-aa-helper.local', ++ 'usr.libexec.libvirt.virt-aa-helper.local', + install_dir: apparmor_dir / 'local', +- rename: 'usr.lib.libvirt.virt-aa-helper', ++ rename: 'usr.libexec.libvirt.virt-aa-helper', + ) + endif +diff --git a/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.local b/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.local +deleted file mode 100644 +index c0990e51d0..0000000000 +--- a/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.local ++++ /dev/null +@@ -1 +0,0 @@ +-# Site-specific additions and overrides for 'usr.lib.libvirt.virt-aa-helper' +diff --git a/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in b/src/security/apparmor/usr.libexec.libvirt.virt-aa-helper.in +similarity index 92% +rename from src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in +rename to src/security/apparmor/usr.libexec.libvirt.virt-aa-helper.in +index 26ee20a17d..38fd3bfb88 100644 +--- a/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in ++++ b/src/security/apparmor/usr.libexec.libvirt.virt-aa-helper.in +@@ -41,7 +41,7 @@ profile virt-aa-helper @libexecdir@/virt-aa-helper { + deny /dev/mapper/* r, + + @libexecdir@/virt-aa-helper mr, +- /{usr/,}sbin/apparmor_parser Ux, ++ /{usr/,}{s,}bin/apparmor_parser Ux, + + @sysconfdir@/apparmor.d/libvirt/* r, + @sysconfdir@/apparmor.d/libvirt/libvirt-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]* rw, +@@ -72,9 +72,9 @@ profile virt-aa-helper @libexecdir@/virt-aa-helper { + /**/disk{,.*} r, + + @BEGIN_APPARMOR_3@ +- include if exists <local/usr.lib.libvirt.virt-aa-helper> ++ include if exists <local/usr.libexec.libvirt.virt-aa-helper> + @END_APPARMOR_3@ + @BEGIN_APPARMOR_2@ +- #include <local/usr.lib.libvirt.virt-aa-helper> ++ #include <local/usr.libexec.libvirt.virt-aa-helper> + @END_APPARMOR_2@ + } +diff --git a/src/security/apparmor/usr.libexec.libvirt.virt-aa-helper.local b/src/security/apparmor/usr.libexec.libvirt.virt-aa-helper.local +new file mode 100644 +index 0000000000..974653d797 +--- /dev/null ++++ b/src/security/apparmor/usr.libexec.libvirt.virt-aa-helper.local +@@ -0,0 +1 @@ ++# Site-specific additions and overrides for 'usr.libexec.libvirt.virt-aa-helper' +-- +2.41.0 + diff --git a/app-emulation/libvirt/libvirt-9.5.0.ebuild b/app-emulation/libvirt/libvirt-9.5.0.ebuild new file mode 100644 index 000000000000..0a0255e18fcf --- /dev/null +++ b/app-emulation/libvirt/libvirt-9.5.0.ebuild @@ -0,0 +1,363 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Packages which get releases together: +# app-emacs/nxml-libvirt-schemas +# dev-python/libvirt-python +# dev-perl/Sys-Virt +# app-emulation/libvirt +# Please bump them together! + +PYTHON_COMPAT=( python3_{9..11} ) +VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/libvirt.org.asc +inherit meson linux-info python-any-r1 readme.gentoo-r1 tmpfiles verify-sig + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.com/libvirt/libvirt.git" + EGIT_BRANCH="master" +else + SRC_URI="https://libvirt.org/sources/${P}.tar.xz + verify-sig? ( https://libvirt.org/sources/${P}.tar.xz.asc )" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" +fi + +DESCRIPTION="C toolkit to manipulate virtual machines" +HOMEPAGE="https://www.libvirt.org/ https://gitlab.com/libvirt/libvirt/" +LICENSE="LGPL-2.1" +SLOT="0/${PV}" +IUSE=" + apparmor audit bash-completion +caps dtrace firewalld fuse glusterfs + iscsi iscsi-direct +libvirtd lvm libssh libssh2 lxc nfs nls numa openvz + parted pcap policykit +qemu rbd sasl selinux test +udev + virtualbox +virt-network wireshark-plugins xen zfs +" +RESTRICT="!test? ( test )" + +REQUIRED_USE=" + firewalld? ( virt-network ) + libvirtd? ( || ( lxc openvz qemu virtualbox xen ) ) + lxc? ( caps libvirtd ) + openvz? ( libvirtd ) + qemu? ( libvirtd ) + virt-network? ( libvirtd ) + virtualbox? ( libvirtd ) + xen? ( libvirtd )" + +BDEPEND=" + app-text/xhtml1 + dev-lang/perl + dev-libs/libxslt + dev-perl/XML-XPath + dev-python/docutils + virtual/pkgconfig + net-libs/rpcsvc-proto + bash-completion? ( >=app-shells/bash-completion-2.0 ) + verify-sig? ( sec-keys/openpgp-keys-libvirt )" + +# gettext.sh command is used by the libvirt command wrappers, and it's +# non-optional, so put it into RDEPEND. +# We can use both libnl:1.1 and libnl:3, but if you have both installed, the +# 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.56.0 + dev-libs/libgcrypt + dev-libs/libnl:3 + >=dev-libs/libxml2-2.9.1 + >=net-analyzer/openbsd-netcat-1.105-r1 + >=net-libs/gnutls-3.2.0:= + net-libs/libtirpc:= + >=net-misc/curl-7.18.0 + sys-apps/dbus + sys-apps/dmidecode + sys-devel/gettext + >=sys-libs/readline-7.0:= + virtual/acl + apparmor? ( sys-libs/libapparmor ) + audit? ( sys-process/audit ) + caps? ( sys-libs/libcap-ng ) + dtrace? ( dev-util/systemtap ) + firewalld? ( >=net-firewall/firewalld-0.6.3 ) + fuse? ( sys-fs/fuse:= ) + glusterfs? ( >=sys-cluster/glusterfs-3.4.1 ) + iscsi? ( >=sys-block/open-iscsi-1.18.0 ) + iscsi-direct? ( >=net-libs/libiscsi-1.18.0 ) + libssh? ( >=net-libs/libssh-0.8.1:= ) + libssh2? ( >=net-libs/libssh2-1.3 ) + lvm? ( >=sys-fs/lvm2-2.02.48-r2[lvm] ) + lxc? ( !sys-apps/systemd[cgroup-hybrid(-)] ) + nfs? ( net-fs/nfs-utils ) + numa? ( + >sys-process/numactl-2.0.2 + sys-process/numad + ) + parted? ( + >=sys-block/parted-1.8[device-mapper] + sys-fs/lvm2[lvm] + ) + pcap? ( >=net-libs/libpcap-1.8.0 ) + policykit? ( + acct-group/libvirt + >=sys-auth/polkit-0.9 + ) + qemu? ( + >=app-emulation/qemu-4.2 + app-crypt/swtpm + >=dev-libs/yajl-2.0.3:= + ) + rbd? ( sys-cluster/ceph ) + sasl? ( >=dev-libs/cyrus-sasl-2.1.26 ) + selinux? ( >=sys-libs/libselinux-2.0.85 ) + virt-network? ( + net-dns/dnsmasq[dhcp,ipv6(+),script] + net-firewall/ebtables + >=net-firewall/iptables-1.4.10[ipv6(+)] + net-misc/radvd + sys-apps/iproute2[-minimal] + ) + wireshark-plugins? ( >=net-analyzer/wireshark-2.6.0:= ) + xen? ( + >=app-emulation/xen-4.9.0 + app-emulation/xen-tools:= + ) + udev? ( + virtual/libudev:= + >=x11-libs/libpciaccess-0.10.9 + ) + zfs? ( sys-fs/zfs ) + kernel_linux? ( sys-apps/util-linux )" +DEPEND=" + ${BDEPEND} + ${RDEPEND} + ${PYTHON_DEPS} +" +# The 'circular' dependency on dev-python/libvirt-python is because of +# virt-qemu-qmp-proxy. +PDEPEND=" + qemu? ( dev-python/libvirt-python ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-9.4.0-fix_paths_in_libvirt-guests_sh.patch + "${FILESDIR}"/${PN}-9.4.0-do-not-use-sysconfig.patch + "${FILESDIR}"/${PN}-9.4.0-fix-paths-for-apparmor.patch +) + +pkg_setup() { + # Check kernel configuration: + CONFIG_CHECK="" + use fuse && CONFIG_CHECK+=" + ~FUSE_FS" + + use lvm && CONFIG_CHECK+=" + ~BLK_DEV_DM + ~DM_MULTIPATH + ~DM_SNAPSHOT" + + use lxc && CONFIG_CHECK+=" + ~BLK_CGROUP + ~CGROUP_CPUACCT + ~CGROUP_DEVICE + ~CGROUP_FREEZER + ~CGROUP_NET_PRIO + ~CGROUP_PERF + ~CGROUPS + ~CGROUP_SCHED + ~CPUSETS + ~IPC_NS + ~MACVLAN + ~NAMESPACES + ~NET_CLS_CGROUP + ~NET_NS + ~PID_NS + ~POSIX_MQUEUE + ~SECURITYFS + ~USER_NS + ~UTS_NS + ~VETH + ~!GRKERNSEC_CHROOT_MOUNT + ~!GRKERNSEC_CHROOT_DOUBLE + ~!GRKERNSEC_CHROOT_PIVOT + ~!GRKERNSEC_CHROOT_CHMOD + ~!GRKERNSEC_CHROOT_CAPS" + + kernel_is lt 4 7 && use lxc && CONFIG_CHECK+=" + ~DEVPTS_MULTIPLE_INSTANCES" + + use virt-network && CONFIG_CHECK+=" + ~BRIDGE_EBT_MARK_T + ~BRIDGE_NF_EBTABLES + ~NETFILTER_ADVANCED + ~NETFILTER_XT_CONNMARK + ~NETFILTER_XT_MARK + ~NETFILTER_XT_TARGET_CHECKSUM + ~IP_NF_FILTER + ~IP_NF_MANGLE + ~IP_NF_NAT + ~IP6_NF_FILTER + ~IP6_NF_MANGLE + ~IP6_NF_NAT" + + # This was renamed in kernel commit v5.2-rc1~133^2~174^2~6 + if use virt-network ; then + if kernel_is -lt 5 2 ; then + CONFIG_CHECK+=" + ~IP_NF_TARGET_MASQUERADE" + else + CONFIG_CHECK+=" + ~NETFILTER_XT_TARGET_MASQUERADE" + fi + fi + + # Bandwidth Limiting Support + use virt-network && CONFIG_CHECK+=" + ~BRIDGE_EBT_T_NAT + ~IP_NF_TARGET_REJECT + ~NET_ACT_POLICE + ~NET_CLS_FW + ~NET_CLS_U32 + ~NET_SCH_HTB + ~NET_SCH_INGRESS + ~NET_SCH_SFQ" + + 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 . + + # Skip fragile tests which relies on pristine environment + # (Breaks because of sandbox environment variables) + # bug #802876 + sed -i -e "/commandtest/d" tests/meson.build || die + + # Tweak the init script: + cp "${FILESDIR}/libvirtd.init-r19" "${S}/libvirtd.init" || die + sed -e "s/USE_FLAG_FIREWALLD/$(usex firewalld 'need firewalld' '')/" \ + -i "${S}/libvirtd.init" || die "sed failed" +} + +src_configure() { + local emesonargs=( + $(meson_feature apparmor) + $(meson_feature apparmor apparmor_profiles) + $(meson_feature audit) + $(meson_feature caps capng) + $(meson_feature dtrace) + $(meson_feature firewalld) + $(meson_feature fuse) + $(meson_feature glusterfs) + $(meson_feature glusterfs storage_gluster) + $(meson_feature iscsi storage_iscsi) + $(meson_feature iscsi-direct storage_iscsi_direct) + $(meson_feature libvirtd driver_libvirtd) + $(meson_feature libssh) + $(meson_feature libssh2) + $(meson_feature lvm storage_lvm) + $(meson_feature lvm storage_mpath) + $(meson_feature lxc driver_lxc) + $(meson_feature nls) + $(meson_feature numa numactl) + $(meson_feature numa numad) + $(meson_feature openvz driver_openvz) + $(meson_feature parted storage_disk) + $(meson_feature pcap libpcap) + $(meson_feature policykit polkit) + $(meson_feature qemu driver_qemu) + $(meson_feature qemu yajl) + $(meson_feature rbd storage_rbd) + $(meson_feature sasl) + $(meson_feature selinux) + $(meson_feature test tests) + $(meson_feature udev) + $(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) + + -Dnetcf=disabled + -Dsanlock=disabled + -Dopenwsman=disabled + + -Ddriver_esx=enabled + -Dinit_script=systemd + -Dqemu_user=$(usex caps qemu root) + -Dqemu_group=$(usex caps qemu root) + -Ddriver_remote=enabled + -Dstorage_fs=enabled + -Ddriver_vmware=enabled + + --localstatedir="${EPREFIX}/var" + -Dinitconfdir="${EPREFIX}/etc/systemd" + -Drunstatedir="${EPREFIX}/run" + -Ddocdir="${EPREFIX}/usr/share/doc/${PF}" + ) + + meson_src_configure +} + +src_test() { + export VIR_TEST_DEBUG=1 + # Don't run the syntax check tests, they're fragile and not relevant + # to us downstream anyway. + # We also crank up the timeout (as Fedora does) just to preempt failures + # on slower arches. + meson_src_test --no-suite syntax-check --timeout-multiplier 10 +} + +src_install() { + meson_src_install + + # 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 + + use libvirtd || return 0 + # From here, only libvirtd-related instructions, be warned! + + newtmpfiles "${FILESDIR}"/libvirtd.tmpfiles.conf libvirtd.conf + + newinitd "${S}/libvirtd.init" libvirtd + newinitd "${FILESDIR}/libvirt-guests.init-r4" libvirt-guests + newinitd "${FILESDIR}/virtlockd.init-r2" virtlockd + newinitd "${FILESDIR}/virtlogd.init-r2" virtlogd + + newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd + newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests + + DOC_CONTENTS=$(<"${FILESDIR}/README.gentoo-r3") + DISABLE_AUTOFORMATTING=true + readme.gentoo_create_doc +} + +pkg_postinst() { + if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then + touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml || die + fi + + use libvirtd || return 0 + # From here, only libvirtd-related instructions, be warned! + tmpfiles_process libvirtd.conf + readme.gentoo_print_elog +} diff --git a/app-emulation/libvirt/libvirt-9999.ebuild b/app-emulation/libvirt/libvirt-9999.ebuild index cc80f16e8bc8..4adcd0b92658 100644 --- a/app-emulation/libvirt/libvirt-9999.ebuild +++ b/app-emulation/libvirt/libvirt-9999.ebuild @@ -107,6 +107,7 @@ RDEPEND=" ) qemu? ( >=app-emulation/qemu-4.2 + app-crypt/swtpm >=dev-libs/yajl-2.0.3:= ) rbd? ( sys-cluster/ceph ) @@ -144,7 +145,7 @@ PDEPEND=" PATCHES=( "${FILESDIR}"/${PN}-9.4.0-fix_paths_in_libvirt-guests_sh.patch "${FILESDIR}"/${PN}-9.4.0-do-not-use-sysconfig.patch - "${FILESDIR}"/${PN}-9.5.0-fix-paths-for-apparmor.patch + "${FILESDIR}"/${PN}-9.6.0-fix-paths-for-apparmor.patch ) pkg_setup() { |