Sync with portage [Sun Sep 24 14:53:17 MSK 2023].

master
root 7 months ago
parent ac9b0a77f9
commit e5895b6f63

@ -1,23 +1,23 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
MANIFEST Manifest.files.gz 29265 BLAKE2B f6196e16a896f290ee7d436278826af9bbd49adfe9675af0c3b3690a352deba50318e940d3dac26d4c422094ea17ad343702e622ab7a00ff2d550552ccbd77a0 SHA512 b8403f3e8cf51b4f2623e4f118b189f8673f98aa124e0b3f8a032ea0ee7ce4ab51669e7d17b2ac215a79f980383b1a9a049d78bb2068d1ae71fa5a87b7d7ffad
TIMESTAMP 2023-09-21T14:40:19Z
MANIFEST Manifest.files.gz 29282 BLAKE2B 94af80384a2d3b66e7064f76a32cc6b4d7c0602d13160a1ae5485b8346953f5997bf48a29d6ad07936dcab2db79001e1b61fa0ba1422cc82505d340dbca1ef61 SHA512 411b5cb8c8b399e9a2c7ebf22ecb71011eec853fc6c6f7ba6b4df9a47f52f546cc7210e83381a5f0b7826b94220ea2639bb65b4ec1fffdb83739cef2b4e87e41
TIMESTAMP 2023-09-24T11:10:24Z
-----BEGIN PGP SIGNATURE-----
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmUMVdNfFIAAAAAALgAo
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmUQGSBfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
klABSA/9GHKPb2X/TqtD/NnVIjm9hKHDJ+bsv/BCwCL17cP41Geu7YAhOsSfZTq3
zX7IHQIPcgsN5AwNI6CyLil4OI8H4/FI0X6d67v+lulnNeTJMV3lDOFHtl7T3kmi
rk3y11NgUyc8urt+ENcXzsG7W66Q6uSfYASblVj1+EXcLolwX2fHSzniR00RBWdz
U8YPnVamjXmdOEvlev8kBdxLYQLpgvqtWNPHJX1K/7UF+h5uiu3S0pLkhUKoOvHd
CpGAsKb63DN4XTlPTb2W+2lIIxJk1rdgmxmEuxqMlw+DUJKFQmW2v/Q6EPwfqBCz
jDmGuQIhwcBREIQbJGxxLvKmApNIZxgmdd0kBg9dZVu/uJ8IN0Ux0E29iNJghJ9s
n2x1XSU787QgXMeSIoz+QxC70RZjvFT0HDEbnBRZTv/fMlJPpt8al3y1Gi4V+Mzh
wfH3ZQjQn5qEwIfvI+utc88p3TvVeLRGcM4aeEdFEectpFGXylR/jOvf9fbd3eyj
HYjufVs+CfUBy3SWnrk94a8NVOB1kXPA+tkgmwhueIDzM9BTOlfA1aQwt+GJ4P26
yHxEwdMh/T++Wr4laf2qDFrOxOVdF0Blac1AoHB5rNEE2J8JEZ05qkiE9HyJiv96
XAn04d4JM+xpORiZACZ0JN9O0PlYRAybVdWAMHfOYOnSCU6n2r8=
=3++f
klAQ6xAAjcZ2Xv2xN4D4XnUU2NluWBcNNRT+g6YUCsKAv0wyEg8QNr58FKoyAJp7
xapcY/Id7j0UM/XS1cGdq4YHqnN0QXQZj9zjoxfn/HCqcA+j7bcwj3aB5V2+mkeF
wozvGKdmlDNLYjq2Ow8t5mxtKo/jE04hbfFAZENTUjY3a+OwYqj2eqm5oCBOfL33
HIz1i0mfAgiHO2sp8mWRI3JtTnUCm8tINyCrJXEtK2g/kQskrB80GYo/6satF+UK
YyueawRlnq7qgI06F7OgKx1IUPhPjAb8zx9AOemVBdMCT4RBl4oQ26d8ALJTPU7J
R78DJ8H2BExYq4f59KaqoXxfZuXzLe+D4r4hhdfD8m8Vv3ytidebG3IOyJlctgyd
7254v6s/T9qyi5iCOafVkXVwmlWi4KJhBYb8tOaMU+U3eO32vECTLrvV8N7L8s2X
98FpVmd5ebokVq66DKEsXAiK/jHhFzOY/T7MslXVsVfrJbUUJE4eGkJMqLqheNXp
NPkTPikGa9MJmelc52FquF8efZ0WR4nsJTsyMrkXeFe10SAy09qDJkf9WMKAuCQl
JH5YFqoUWRxxnagAMBJjn3tHG2xjFSI77R4DQwbCGVBJXqd4nEyYj6g3fNYbMbA+
VRvP3EI6FadIp93BzHj7Ga4+j0G070OlyU9iy1XSqlDe8WIvsKU=
=AQ1K
-----END PGP SIGNATURE-----

Binary file not shown.

Binary file not shown.

@ -1,7 +1,5 @@
DIST at-spi2-core-2.48.3.tar.xz 554388 BLAKE2B 9692df8cc0bc8de82f6e339b9358be7ab1bc598afdb39503f5f05ca772109b962a513fe2ef79d8f094ea732457225409f3c765784a54cbabf27b8fc72c893eb9 SHA512 e79ef0eb0f23241d61ba2a62f4024a5df5ff7125bc085590f9038b3397d255b88b8266deec14f3fe53bee4072ab85695a47d27d8be0529b18a103ad792fa0e54
DIST at-spi2-core-2.48.4.tar.xz 554916 BLAKE2B 6329407e1e0d0a085189174ad31ac65d890e36a1b20179d68155fffa029b476a6b094765b6d3c300a8fa3cdeb01936a1b14cac34c530650287e711132c136ddc SHA512 fa85b680ad5254a8281197969f335c69b6c71d3ea4ec04efb8d70ba9feafd76330cd23a09169eef6f04abf0000e4823d2c2591999e8ed88bc035a26ed8bebdf0
DIST at-spi2-core-2.50.0.tar.xz 567664 BLAKE2B 18b9c84542bffc13e762e770da08f289358b5987b27c0159818c6f1f09981be029a8f15ce2b7dd6ed99b049ad7e4a4cbbf2bc4d5e97a81d9096b247df218328f SHA512 7de02efa7e3cb9db4a7da8bb2e9350dc00458e2ba9bf9dafb68d2cab8512b525fc7dcecb45f5912de7459b86d901ab3a188f0a07f5bdc068a51433c900de2308
EBUILD at-spi2-core-2.48.3.ebuild 2019 BLAKE2B 731470a156ebc12180cd3e7a5f31d54d0cefa14dcd12671ad8c17da4ff3ccc5ae091ff2bc1df768098cd483cf061d16f315de8c36bc1f44012a2187d056bc15f SHA512 08980d0705f714579f587eb8b550a24efd85e27aad0251e5b31f3b60aa4a411a8730d05819041bdf0dd7a0964f9d19c34f6681ec923a4f5cad974327764bc4c6
EBUILD at-spi2-core-2.48.4.ebuild 2027 BLAKE2B 50acb89b25fcbc7665e8a944e20cd7f872f75e9d802a0e139c7060e1b85bb97700ea3863a0d9299ea8ac06fb88ef177e389da6da7007fc48fc626544674b8cb8 SHA512 37398307a0e03bb0bef7ba41cf45a81ed5849f2d2ab8e108f1e839e553635b763a3950b4f2588e1174685ebe74086943e45bcba0728979ca2c8e44aabe4bd515
EBUILD at-spi2-core-2.50.0.ebuild 2053 BLAKE2B 48be7677577ee2be44d476fd885d3ccee00eab57d4fbc76bf42807d4ca9f00ab6a42147f2dd93dae412c0e426ad37420158c5376681e28c32bc4fe3d3a724eaa SHA512 4c2a54c59da534fb8913a254912ad71988f19535137313fe3c624aee47a2661f3baf41a4034a2569fe26ae3a6b33df3b7ae8059ac2063fa9f62a4167d5f6f7c5
MISC metadata.xml 468 BLAKE2B f6b51c8c4da2bdff93f41f92cbe94687250f28d9c42c5cdb7de9eef0d1a6e208dd911d443298eb08fc83f8765d0b2c09e30e932d97b3fc1d28861ceae9b1ee6b SHA512 908b6e8c5929143a45cd108fed5b3375dc6f8f98b637a230c0eb0da4a261a8d9655954e1f98dc9967bd79a8c3aece79e1827097a5785494692f7655bcd73f331

@ -1,75 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit gnome.org meson-multilib systemd virtualx xdg
DESCRIPTION="D-Bus accessibility specifications and registration daemon"
HOMEPAGE="https://wiki.gnome.org/Accessibility https://gitlab.gnome.org/GNOME/at-spi2-core"
LICENSE="LGPL-2.1+"
SLOT="2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE="X dbus-broker gtk-doc +introspection systemd"
REQUIRED_USE="
dbus-broker? ( systemd )
gtk-doc? ( X )
"
DEPEND="
>=sys-apps/dbus-1.5[${MULTILIB_USEDEP}]
>=dev-libs/glib-2.67.4:2[${MULTILIB_USEDEP}]
>=dev-libs/libxml2-2.9.1:2[${MULTILIB_USEDEP}]
introspection? ( >=dev-libs/gobject-introspection-1.54.0:= )
systemd? ( sys-apps/systemd[${MULTILIB_USEDEP}] )
X? (
x11-libs/libX11[${MULTILIB_USEDEP}]
x11-libs/libXtst[${MULTILIB_USEDEP}]
x11-libs/libXi[${MULTILIB_USEDEP}]
)
!<dev-libs/atk-2.46.0
!<app-accessibility/at-spi2-atk-2.46.0
"
RDEPEND="${DEPEND}
dbus-broker? ( sys-apps/dbus-broker )
"
BDEPEND="
dev-util/glib-utils
gtk-doc? (
dev-python/sphinx
dev-util/gdbus-codegen
>=dev-util/gi-docgen-2021.1
)
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
"
multilib_src_configure() {
local emesonargs=(
-Ddefault_bus=$(usex dbus-broker dbus-broker dbus-daemon)
$(meson_use systemd use_systemd)
-Dsystemd_user_dir="$(systemd_get_userunitdir)"
$(meson_native_use_bool gtk-doc docs)
$(meson_native_use_feature introspection)
$(meson_feature X x11)
-Ddisable_p2p=false
-Datk_only=false
)
meson_src_configure
}
multilib_src_test() {
virtx dbus-run-session meson test -C "${BUILD_DIR}" || die
}
multilib_src_install_all() {
einstalldocs
if use gtk-doc; then
mkdir -p "${ED}"/usr/share/gtk-doc/{libatspi,atk} || die
mv "${ED}"/usr/share/doc/libatspi "${ED}"/usr/share/gtk-doc/libatspi/html || die
mv "${ED}"/usr/share/doc/atk "${ED}"/usr/share/gtk-doc/atk/html || die
fi
}

@ -1,7 +1,5 @@
DIST orca-44.1.tar.xz 3760772 BLAKE2B 1e2825e9183b86563d85f106f80b7fa84d7d0cc06c818cb72c2a307c9c85a421cbbfc581df7829afde558ddf468bc048382d059ae995661a5163d390585961b4 SHA512 951a60b7efd9b61762404c20b62d476c1ebc3fc2662c0be1feef307fa1761feb5195c89ce725db1585dde4c39d96e1aa74c2b5c934115a3c2669880c3c7ac200
DIST orca-45.0.tar.xz 3949908 BLAKE2B 135dff79cda2a1a116256f2c1b68a40d29b17e5507fd3407d61dfc2478339aab1d7627c3aaac5f388a0140008e8a492820f0e56caac7ea83216c50f4f3fa32d8 SHA512 3213d5f0b8e0eacc5daad3df3e521548c5e6dd5ad8584e50d60a7fd054fee86793e956d3db3dcdc223d34d72bcfbfa0b436bc40f6e965528eafa2abf36259c83
DIST orca-45.rc.tar.xz 3923500 BLAKE2B e7f919e0badf804612d2c778abab598437dca812507b2d5e5ba6b7fc34897ed8baaa739d3f72a1e56db13badf725675d468a525ab663db6e1eaa08191abd3654 SHA512 897e667b7c9fd98d01eafb79f1fcd02da078fa5d023a22301ba7ea2a84cd18c05684c4c297a1edd22232c5f72d64fa5fb78b35037ea4d8cfd3fdfa350c3500a7
EBUILD orca-44.1.ebuild 1451 BLAKE2B 0c926436900096c9c07475c261432a9f48edf20e592f775a25e8bad00f8bfc35733c01b4a58baf72174319cf2129dfb3aa32486141befd97cbd70056726f7904 SHA512 415993a87a11b8d8da8dd0cfe4fdcd5187c2b19533b60d3db077582b5d4f01f63f36b883aa1c1ddc10eee7918f7edf14c3bb99f116518fdd48d66c73e14ecfe6
EBUILD orca-45.0.ebuild 1455 BLAKE2B f9b6c14731b1bcd009ae627f0a75c87487eaca5992ed12c17bdbb1ec8b14e669b25bad7401c0a1ecd967c8229c5a4cd87915639c121192a04f6ba253139160ce SHA512 32b5a284d664739d80dcfcc968727bef2e2e4568d00e752fba707003c55dff117f1164f33940d7d560f44ff97933915e05e1301058a1a116a4b9f14635b9c4ed
EBUILD orca-45_rc.ebuild 1455 BLAKE2B f9b6c14731b1bcd009ae627f0a75c87487eaca5992ed12c17bdbb1ec8b14e669b25bad7401c0a1ecd967c8229c5a4cd87915639c121192a04f6ba253139160ce SHA512 32b5a284d664739d80dcfcc968727bef2e2e4568d00e752fba707003c55dff117f1164f33940d7d560f44ff97933915e05e1301058a1a116a4b9f14635b9c4ed
EBUILD orca-45.0.ebuild 1455 BLAKE2B 47471f74744ccb88266adacfcdf549abfa3fcf0f5c79ec1e5bcfbe4ad72a131f17c403aabdff0f60dafe317e329746741cdfcabeeb1e28c2f02b8ade8fc8a5de SHA512 6f880e0a9f12b056f2d78313f7496e448733feaf34a7348d8feba6915feb1f3d9b1502a4fc5fd97d57a8529a7f7c1c18885843a420126a0087dc5e12327a27f5
MISC metadata.xml 762 BLAKE2B fca9ee6ac93d2e860f6791af78380e9d8d29ac10b254299946911a29b5893028e561a18320bc026dd7e9421f3c572e1c3ac63264276a1b292996db93e1cba4a3 SHA512 6bbe0cff5af52cb48adccbb61620fd75a0811cad313867b63cb09b5a7c259230019a54ad607ee46c986188ff11ac2f6878ef20381ef34965dfe918c88ec945d0

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
PYTHON_COMPAT=( python3_{10..11} )
inherit gnome2 python-single-r1

@ -1,59 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
inherit gnome2 python-single-r1
DESCRIPTION="Extensible screen reader that provides access to the desktop"
HOMEPAGE="https://wiki.gnome.org/Projects/Orca"
LICENSE="LGPL-2.1+ CC-BY-SA-3.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="+braille"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="${PYTHON_DEPS}
>=app-accessibility/at-spi2-core-2.48:2[introspection]
>=dev-libs/glib-2.28:2
media-libs/gstreamer:1.0[introspection]
>=x11-libs/gtk+-3.6.2:3[introspection]
$(python_gen_cond_dep '
dev-python/gst-python:1.0[${PYTHON_USEDEP}]
>=dev-python/pygobject-3.18:3[${PYTHON_USEDEP}]
')
braille? (
$(python_gen_cond_dep '
>=app-accessibility/brltty-5.0-r3[python,${PYTHON_USEDEP}]
dev-libs/liblouis[python,${PYTHON_USEDEP}]
')
)
"
RDEPEND="${DEPEND}
$(python_gen_cond_dep '
>=app-accessibility/speech-dispatcher-0.8[python,${PYTHON_USEDEP}]
>=dev-python/pyatspi-2.46[${PYTHON_USEDEP}]
dev-python/setproctitle[${PYTHON_USEDEP}]
')
x11-libs/libwnck:3[introspection]
x11-libs/pango[introspection]
"
BDEPEND="
dev-util/itstool
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
"
# app-text/yelp-tools
src_configure() {
gnome2_src_configure \
$(use_with braille liblouis)
}
src_install() {
gnome2_src_install
python_optimize
}

Binary file not shown.

@ -15,6 +15,7 @@ DIST aws-cli-1.29.49.gh.tar.gz 2533689 BLAKE2B 0ead02f739adc66eed988bedf41b9b508
DIST aws-cli-1.29.50.gh.tar.gz 2534012 BLAKE2B 1089a689851648125e0a04f4ec004bc141059201a8e885db3a88ac3912b47997af797e21ce8d759be5ba03a0a09d278c612068a8cd55eb4b9a971b11077d5175 SHA512 4dfd35be02641b77c3f4047645a7d6aaada62550ac725e1aefa154dbad15839b19fb222ea8194f919823d25b3a30c8275f3760dbf7d0828b1b1fa4537c2c26a4
DIST aws-cli-1.29.51.gh.tar.gz 2534506 BLAKE2B 79ff26738b1008b3b19de7d4838dab11711d540f147fb60eb13b1d820f50dcf0544375cc7e37a9a6571a0931593ad1de6416c4e54bbcd27ab9e89a8b702303d2 SHA512 537a395f99d6b7fd9d4597f719dbf151620fe9f3c747e4ebaf54f63e2943621faaefe4ce1f278b09047e381da865e27ad394a166035ecace742f3294d6cc58ef
DIST aws-cli-1.29.52.gh.tar.gz 2547970 BLAKE2B 49ae8ce6051907b13c7c4eb5d5431e652050617f469cfc32ef70cb6ce7db335bb0ddf9105909705c840c693b7857f9e7396d983c6cd0a13bfadb210421cb83d7 SHA512 ccfb02b66854f4fd288086f1f9bea7f6ff8aa67e20ff253e0483e2133204be4efd3b50e87398feb68fd7852fdb53d4ac31dd2d1548248608b6a5351a618b0458
DIST aws-cli-1.29.53.gh.tar.gz 2549518 BLAKE2B 4c9932ddbfb5f8619006589c0ed8f00b5d0230bc9d7fa811875cc4b16e9b5583a3abe4ccbb290524565dde2f78ae5696162863ea6e5224517c98414d7cb74344 SHA512 1150c20f5cc3da3a0ba2e25741441a7db8b6e399a927366902b30fd30a394634d015cc6b53bbfe7bcb759ce0aec6e0f9432a23e5b8d00cd9c2bb71afd5744627
EBUILD awscli-1.29.30.ebuild 2278 BLAKE2B a074ad11e996c7c4e5c0366e5e5d3856cb1bdd7984b8eaf9ac959108e0c5737b064be5d7a579f46669403efb0c3111e8814570f041106e920102cf2a6ddf3687 SHA512 060c06ae5d2295b74940bc86eabf279eeb7a81f7cafa4a9d89e9af8076feff5a23cc3f9bad5a631e75155af64b948abe4c0de7283883a53d4b1ee5791765176b
EBUILD awscli-1.29.35.ebuild 2285 BLAKE2B ab176af730bcb3713594ac424ab29325c2cb24b8136e12ac6e18cf1648c8fa81e256eab0c708077e2c5423d1592594bb842383614e9114e728703e8cc8964252 SHA512 423fc2ef82036643a93eebded5fde267beb70f6278f06faa7e4c5ea221351aefe5bdf7c6469e57c49caab603ae1aa58fb514339c65891995cef614e698e9d997
EBUILD awscli-1.29.38.ebuild 2285 BLAKE2B ab176af730bcb3713594ac424ab29325c2cb24b8136e12ac6e18cf1648c8fa81e256eab0c708077e2c5423d1592594bb842383614e9114e728703e8cc8964252 SHA512 423fc2ef82036643a93eebded5fde267beb70f6278f06faa7e4c5ea221351aefe5bdf7c6469e57c49caab603ae1aa58fb514339c65891995cef614e698e9d997
@ -32,4 +33,5 @@ EBUILD awscli-1.29.49.ebuild 2811 BLAKE2B 9023a2e9d234cff26111cf9302a312e369631f
EBUILD awscli-1.29.50.ebuild 2811 BLAKE2B 9023a2e9d234cff26111cf9302a312e369631fead3f1f064904d693e08e2c3aba14e70740cc9b41c3ebcc70671af79cd548788c8f945e758a5ac98263163c8cf SHA512 a1abe2aa8947aa77d6386114a1ba347bcf3d473c8cb2afef7ab815e7308beada9e6c38935801695a3d8fda58c0a1ecc71727dc5b1822ae3cde33bdd2d872f5e4
EBUILD awscli-1.29.51.ebuild 2811 BLAKE2B 9023a2e9d234cff26111cf9302a312e369631fead3f1f064904d693e08e2c3aba14e70740cc9b41c3ebcc70671af79cd548788c8f945e758a5ac98263163c8cf SHA512 a1abe2aa8947aa77d6386114a1ba347bcf3d473c8cb2afef7ab815e7308beada9e6c38935801695a3d8fda58c0a1ecc71727dc5b1822ae3cde33bdd2d872f5e4
EBUILD awscli-1.29.52.ebuild 2811 BLAKE2B 9023a2e9d234cff26111cf9302a312e369631fead3f1f064904d693e08e2c3aba14e70740cc9b41c3ebcc70671af79cd548788c8f945e758a5ac98263163c8cf SHA512 a1abe2aa8947aa77d6386114a1ba347bcf3d473c8cb2afef7ab815e7308beada9e6c38935801695a3d8fda58c0a1ecc71727dc5b1822ae3cde33bdd2d872f5e4
EBUILD awscli-1.29.53.ebuild 2811 BLAKE2B 9023a2e9d234cff26111cf9302a312e369631fead3f1f064904d693e08e2c3aba14e70740cc9b41c3ebcc70671af79cd548788c8f945e758a5ac98263163c8cf SHA512 a1abe2aa8947aa77d6386114a1ba347bcf3d473c8cb2afef7ab815e7308beada9e6c38935801695a3d8fda58c0a1ecc71727dc5b1822ae3cde33bdd2d872f5e4
MISC metadata.xml 385 BLAKE2B 5accfb180a91179cc6df539d42d1de06be3ebfec73f3edb719f5d59576103b9a8cb0c7c524c1042630e0cf99f068939a19f04c7b1b4a2acf9e072369df80d913 SHA512 ccb3d516326c5dbdf53068372ce25baecc137d21a04516374362212b969cc928dacbf743b4953da33f28482905798f069d09d19c88d9913f2b32648db25115ab

@ -0,0 +1,84 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit bash-completion-r1 distutils-r1 multiprocessing
MY_P=aws-cli-${PV}
DESCRIPTION="Universal Command Line Environment for AWS"
HOMEPAGE="
https://github.com/aws/aws-cli/
https://pypi.org/project/awscli/
"
SRC_URI="
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
# botocore is x.(y+2).z
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
RDEPEND="
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/rsa[${PYTHON_USEDEP}]
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
!app-admin/awscli-bin
"
BDEPEND="
test? (
dev-python/pytest-forked[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_prepare() {
# do not rely on bundled deps in botocore (sic!)
find -name '*.py' -exec sed -i \
-e 's:from botocore[.]vendored import:import:' \
-e 's:from botocore[.]vendored[.]:from :' \
{} + || die
# strip overzealous upper bounds on requirements
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
distutils-r1_src_prepare
}
python_test() {
local EPYTEST_DESELECT=(
# broken xdist (signal() works only in main thread)
tests/functional/ecs/test_execute_command.py::TestExecuteCommand::test_execute_command_success
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking_windows
tests/unit/customizations/codeartifact/test_adapter_login.py::TestNuGetLogin::test_login_nuget_sources_listed_with_backtracking
tests/unit/customizations/ecs/test_executecommand_startsession.py::TestExecuteCommand::test_execute_command_success
tests/unit/test_help.py::TestHelpPager::test_can_handle_ctrl_c
tests/unit/test_help.py::TestHelpPager::test_can_render_contents
tests/unit/test_utils.py::TestIgnoreCtrlC::test_ctrl_c_is_ignored
)
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit} -p xdist -n "$(makeopts_jobs)"
}
python_install_all() {
newbashcomp bin/aws_bash_completer aws
insinto /usr/share/zsh/site-functions
newins bin/aws_zsh_completer.sh _aws
distutils-r1_python_install_all
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
}

@ -24,11 +24,11 @@ AUX salt-syndic.service 169 BLAKE2B 0d00f20b4663804eaa4b6a1a1b32ed87b04d1f4df6a8
AUX syndic-confd-1 188 BLAKE2B 98f13eb627963d65df26140f348c04eb8c253d444d36ecd1f5ef344ad89901b0a5ed62c64364e90595c2d2ee2766f30802a4a86a2555bbea343ab410292359af SHA512 35fe9bf4732c8a53b47099ffe5f9468d884ec3e2671451a6d52821dde6c70c63176b29ade0d700b99aaf47557f58179f780422843346bd3aa6513d9465ec9f58
AUX syndic-initd-5 558 BLAKE2B 5e1ea25b57f56ad7bfb8be0c845e7da9f99af03c50c31ca2031e604267c680555d0d8a3ef6299ec588770f26dad19d262c8b9403391b60fb17c6811d7946107a SHA512 6e927925cf1e4d0f901bec10499a8ecf1193b99742cfda5f94f70d0ec743902b1b89728cb2e447b8b4879a9417d0d482b813161968dc9c2b2c7944b3af14df14
DIST salt-3005.1.tar.gz 17914349 BLAKE2B 697c2068bf119e4a19f92a86ce880fec9375c10ba549cdcdd2182cfeaacce31c7bc4c4c91e1a609906b4c5373bb5e3120e0db47ede5b45ee20942d7b2d201e64 SHA512 391f995f0129f3d7104a0eea4fd83b18aa6ecae0fd7a2c77c1154e24b0bcd52cef4b63db12597c85737bb33ddf605e0c23370cef3bf47f9ea85af5b77d74dc50
DIST salt-3005.2.tar.gz 17935313 BLAKE2B 550853b8245351b251438ac87d775e8b39d71ddc1eee0375f4bb29c04e2aacf5905ef9ac5373d9e7ff47a1cc8d6b9ce1a2a4c3d75b5647d4047bc06a5e526664 SHA512 07e7afc732a97006557d4556d60aa1854934893d0566bf8c295d4b1c01515988a1bf2798ce228f6b37e657de8fdfff51153ad2ea8d54baa6a5c377e30794f317
DIST salt-3005.3.tar.gz 17932868 BLAKE2B 18b1b3fe0708c2b425a410766df1545c093b43e69527b1213e1b043668b914016dc95b5c96c0619b1234b57fa404fdbe4fc245ac11d4f0b121edf4b0deacb3ee SHA512 4a40b21f0ee8ac31d3ca3d4d43706c3a484b9e19bd5797764475772af42fe682476b19f9097f003c838683529f15a757aab769eb0a15578cbc2fc449d8216604
DIST salt-3006.2.tar.gz 20411634 BLAKE2B dff474017918ef3ee0031856a2739282077205d8c2589809a91e5f1c3741cb26d2bd2458734ea4d3533118c881851dfd853f4ba4f1c631e7db28e95bc1b6f7f8 SHA512 2626cb5beb1b30fc63f554f5804f0d9b7e36b7c569c5f9049e5f5ac5a413e9d99a98b3d91089683338e3d3890ec973dff80782b4e41acb291872e45084fd2546
DIST salt-3006.3.tar.gz 20461738 BLAKE2B dfa4698dbc611c9c4954b4631d11b685e1efc978915918ce6d8f1890bb4a230d234b6a191166ffff9243058d44530bfc14b43386c8bc295c035c6609d6bf3fa0 SHA512 9cced766db2144de445ed53b52c1551c986ba43774c40512fd07973862d6d3a361e25f55fcfeeb0e03ba44eec1051909834e5d0a352ead5ec6f418b15c909628
EBUILD salt-3005.1-r1.ebuild 7234 BLAKE2B af8c85ad4abcd00244b52a73cc67fc31505395dc11282841bec155a4ae5c24694214f9e3a173f8ae09c25de2ae06f5eefdc3fd0aa27608908a78f664e18cf408 SHA512 1d790f172358abbac38351e1b5be50fa1e646fc7cb51179af428249e8dccd6452f51f25710ab73c91e0942df8098a9b97d6f579b8934a1f0e4d194cd7ec6961d
EBUILD salt-3005.2.ebuild 9382 BLAKE2B 068d7d5a8e15ebb387b9534616693c74dd89d2b8839c21a57c50bcbdf83427b44a49796805b84b45be823007c0c6ea3828a17ac47a20576286e340c4ccaf0775 SHA512 da78be3da31b32b079129bc05547890e17bb3c67d8e4ba33f84be796c83fbaf31aae838df0f8c51153bca51960dfdfa41ca6af92dc77ef32760b5dba3f901e81
EBUILD salt-3005.3.ebuild 9382 BLAKE2B 068d7d5a8e15ebb387b9534616693c74dd89d2b8839c21a57c50bcbdf83427b44a49796805b84b45be823007c0c6ea3828a17ac47a20576286e340c4ccaf0775 SHA512 da78be3da31b32b079129bc05547890e17bb3c67d8e4ba33f84be796c83fbaf31aae838df0f8c51153bca51960dfdfa41ca6af92dc77ef32760b5dba3f901e81
EBUILD salt-3006.2.ebuild 8539 BLAKE2B 335093f353da0d42abedf7b836c1516239390ec64fe4acf0f58d23f1d4b467446304aec086587fd9901b3007d50d86743aaf26157d7706b0b4b511f814d3e7ab SHA512 d8690757e65594d3bef93e852d61efb4c771fc3d2d441ef79dae0cd585cb93854a77ed641f9ba65bce13eaba7f46475c90dd03c591d2e0f580ef4a53bf7b1532
EBUILD salt-3006.3.ebuild 8903 BLAKE2B cbf034e5dec44f2b46cecf74dbc4d7b8df9782905024ff86ed3e5320172a1693027859036e79609e23aae00c50994a62aee8806928c46dd907411efcaaa2a0c7 SHA512 867092ef5873126ceee767ebf12df66acaade553df2d7d351441a7aff19fc90346c6805882b77be602e79e407ddf9f90e0885a746336b64e4ce3bb6422426f57
MISC metadata.xml 2304 BLAKE2B 8fac51fe1b0c0dae5fe71d88f1bf84df1de8cc8b3d836b59c3b2e82bfa085f57352e3aafd999766ae69104a8bd9798f2fffdb64e1df1e0a1ca8561dba1ef7d5e SHA512 7d3706c40c27dd67509bd638cd0550bb4822f0895fef929ecad21c218cdaa0512da443c901cc2b3a8d4afd9f5e9bc461622ac3bab2a332ccd9c64c4cbf99bf74

Binary file not shown.

@ -2,5 +2,5 @@ AUX engrampa-1.26.0-clang16.patch 700 BLAKE2B f737fb50695275afc0e0a148bbfcc72ff3
DIST engrampa-1.26.0.tar.xz 1761596 BLAKE2B c72def523f6589ab97351568e0562898d996e640ffefa66f32096e5a0ad97ad0b05b21ebdcc16ba1f75d9b75a444f8ed4ed492a412cc16c018e65135a88f3398 SHA512 8058627af19744d26f0997fca37a9a1d9902c63e4008e1af44b2a3b15ebc03e27f2018c60351ee503a28aa072836d201625074abb838e0a95071ce65c64a52bc
DIST engrampa-1.26.1.tar.xz 1792452 BLAKE2B ff87f21848919654a2392c02e6050ac0b4c80308361ec7c829a2acf3fb25b088e164a3722be0312b2c814022bf0e06c80ae0796add182e6ac8e5d696409c5afe SHA512 6e3e59503d3d55df3eddc63f5f8f67c80a84b2b602801f9bcbaf4e38b6e991fffaa879e1cd44c1173b5c11096587122438bda51401c2694654c99b87a52b9f5e
EBUILD engrampa-1.26.0-r1.ebuild 1821 BLAKE2B a7b2964900bdb27a319164580b95ff27ab3cb1450d57710f15932fd8f8e51729316474abb00b045c86db4b98fe6cd770fc712464b9929e2035b32fc2e0130bc5 SHA512 2228f66f0dca58ce06b5d53bca511cd4c912d39f5c55fd2e14a1edcaded3f94909a54e06eaa5a04608864dd89c27085bc69fd7d6f8432249b85666fbadf88058
EBUILD engrampa-1.26.1.ebuild 1823 BLAKE2B 5b3d32f2741013f09190032a8a28607e6d8992ec2113e4dfedb3eb132921656e6193b062660e7b4c0b6598b9e390cf1c7676b26b6be96af4d47640501083a257 SHA512 6ff6146f1b76e0e73a378da7f342b70f8ac2be7a351a6fce7cb9cb523e22d53ad43bc6f41b7765e7d2e68efc5dfa0550989e371e0701637dabbf9fe33c7321df
EBUILD engrampa-1.26.1.ebuild 1821 BLAKE2B 2e7f5f242927af3703dd9eb932b5b1339a595cba2bdf0aa13ee9c0f4d57edc561d2ce3942c78d82d38e61bccbc0996bd97cbf7ac991167baea0c79c3b70ace7f SHA512 b10e4068a7cd3e989f6d6f4a8c4615e7a337fe4eaebfcf3e91de5869100e04f28b5abd3d89d00877af2e0bcc5373ddcf828efee9c4213ce4e582aff082d378ff
MISC metadata.xml 404 BLAKE2B 19c458f05bf6607dce7651c02aa1c7e55c604630a2a43da0993e4029a14ffb1f99d22b72a8d7f4fe22dab6cd9ecc3584eb4210ff9809f30e54e566a6affac316 SHA512 57b7b2794fc081f83797dcb1aaa495a35083c00af3d99f164c821bcb762aaae627949893c77aff9df0d7aa948e6d28fd22703c8aa61fa7c183665b53ef860e15

@ -8,7 +8,7 @@ if [[ ${PV} == 9999* ]]; then
inherit git-r3
else
SRC_URI="https://github.com/mate-desktop/${PN}/archive/${P}.tar.xz"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
KEYWORDS="amd64 ~arm ~arm64 ~loong ~riscv x86"
fi
inherit mate optfeature

@ -1,4 +1,4 @@
AUX 3.36-packages.match 664 BLAKE2B dfe72c4eb0b44b8ab589fa81c0ceaa31bc3516dee78fabe2eb48f8131b25ed75a11630ae620e70646539ef42a7c4d7d283f71ffa0fa13f64ccf164d672acd95a SHA512 154438583492c571e4c8e1c926c3cb04972255cc4d1b74f186dfbe50c9756f25e11034fe64d893fdd8f2698c8eaaebba76682a818bb6523656c7c412f8e8b614
DIST file-roller-43.0.tar.xz 894308 BLAKE2B 85bf73947e153a3b40507e524c35f8be98a08a9ce5916e24ef44559400d7d44e4e0fbd94de8b5638fd1da967ff007894011624ccf9ad8c3481cac63aba3da6e5 SHA512 dff3d9ef5c96e5957fb4ca146072b5fdf0309299d0b1a4ab6db55e24a0652b52ba45915121db4d59d9b1ab60b4c3c64bbb56799a46a0eac5609236f4e1251837
EBUILD file-roller-43.0.ebuild 2519 BLAKE2B 235a21fc1771ac0fa2772c565382f51b5fb6b5642a87d35a6fe41df04d989c32b1cf2aeb134e600e52994f814e18c2ae148b9d1bacf659457caf95be0d4a1135 SHA512 f0d0d1cbe19e61814e627f89acf68155165d8f60cf648702d98b9860a09bf68aa900dece08c30a11ea2313bf4e18ecf9ed239b5886b401a735986a4d2876f245
EBUILD file-roller-43.0.ebuild 2506 BLAKE2B 97040806670732a3bdc8cd5e78ba66920c9e30e1b95c81215d6898217c600c729a996c312bd42e0b48ae73b63abe1801359f87d96ff514997f2761c2abff35f7 SHA512 7a9663eeb38c80f2eda6faabfb239817c3d3af7d5fec3bef40098b96a5ef16f3cfb019dedd31bbeae24215ed19797e968523d5b4ce66485bcd66975575d55348
MISC metadata.xml 544 BLAKE2B 395aff0ef64dd1ae52ecf07df0a723454f648ae54468c611a3d3c10c2930bf25413f892a02dca15dad5930ad24baa45adb2df41e740c4d2dbdce9104f8f89e0d SHA512 3639aa10a6e40e9ea901842e40b9e33857254a00f84aa61403fc663e8ef1f356850d77ffa9ee61c7fb05a1152a9cd1ab0adb972edd3d1020308da06680a64410

@ -10,7 +10,7 @@ HOMEPAGE="https://wiki.gnome.org/Apps/FileRoller"
LICENSE="GPL-2+ CC-BY-SA-3.0"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
IUSE="gtk-doc +introspection nautilus"
REQUIRED_USE="gtk-doc? ( introspection )"

@ -4,5 +4,5 @@ DIST gzip-1.12.tar.xz.sig 833 BLAKE2B ab7b4a759ef163d67f20773607ba0408ea9f1f7c7c
DIST gzip-1.13.tar.xz 838248 BLAKE2B f0e3b4c28bafcd3b59b65ac2d71218dc58d81b52c6921c1be038757c99e99184178c5d0e9674caa5099713b8b64e8c85cf061f4abfa20b73b478288f121fb05d SHA512 e3d4d4aa4b2e53fdad980620307257c91dfbbc40bcec9baa8d4e85e8327f55e2ece552c9baf209df7b66a07103ab92d4954ac53c86c57fbde5e1dd461143f94c
DIST gzip-1.13.tar.xz.sig 833 BLAKE2B 42e38fa7b3a6b6d21a18308cf662844ed84e1a142a945f3f3142db0a14212c0e642de514abb1307ec12ee7bb9644472cc3aed40582d9c266ab24808acbca0215 SHA512 f95e016f61f4a67cb4cec6cede2510af6bb5567d72bbd3d70210a6d5cf3ee5fea8f0cbf8f7b612fa52f2ecfd9dba050d9cd4494075ce5ac4abac7b74eaa7ccbc
EBUILD gzip-1.12-r4.ebuild 2087 BLAKE2B 0477a57de5136e871fc5a77e621b30e39ea6d8b915f9d43e141a6ba5fed822aa96af0e7dcd6ab9f59ea8aa53a683fd2296c58d60dce1a53c2655647f61ad9935 SHA512 eba891f8dd7463ecc3795dea84b15a1b80c60953111749215a6020dfdfb14c3f34cb63f6dccbd738958f873ff1be76d6fb0dfcac235240f4ad10a3f604c19abb
EBUILD gzip-1.13.ebuild 2444 BLAKE2B cdb5944b2dbe30c40585819c0730a3301a8a9bc7253420e4600fe1675a64f1c45d6d3e80e2d6b68fc42cd4728045e93400dfa1d807d98c2f36ddf0dd07e80427 SHA512 a6147fec17733d046a34cbe6602e9f6872bd238ff3fb3c1dd62246fa1993fb173c8c16e220a78cc3440fd50925edd0f8410d47cb74f669f1e241472090e79764
EBUILD gzip-1.13.ebuild 2440 BLAKE2B 60559b203500f3eb515151b432c18f248b4b510d8570b8a786c667364dee05bfcccdca775ef75d661b14620a30bbf230d4328a7855fe2997e03eed49b888f181 SHA512 47274bd7f37e682f82050c6c87c649962cedcadfc1240c225c53ca783b9e44b65883188cea7b82b017b2154430133907c63643394659b9ae4e1c584b4f85eb5e
MISC metadata.xml 433 BLAKE2B ec37d1a2da994967c16c5005c7267f5ea788dd5fea6e48e231c59313f8a779fac6241c790d292bb47b5586a734ad114774438785d6f394bad51d9f2818912e3d SHA512 98ed16e20a9c2c8210ca8a8261eecd0718b94fe8fcbf9a647b04b4912132b281b55e17f26ae41afa0429e2f2a9c3faa8b877da5f8f35a14f52a0a7482f6c1afb

@ -31,7 +31,7 @@ fi
LICENSE="GPL-3+"
SLOT="0"
if [[ ${PV} != *_p* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
IUSE="pic static"

@ -3,5 +3,5 @@ AUX rpm-4.8.1-db-path.patch 628 BLAKE2B 69ac0d4541c4d6e74fd716529c4cfd482432d400
DIST rpm-4.18.0.tar.bz2 6600013 BLAKE2B 127c3b1427884d04c3db4fc73eb73a978a58241bc740620e3e46c7557d99833092866b5d9c8b4fdf72cd106668d9e5f5cb8c4b918decf1513a82d10258975116 SHA512 c218b811c0c2db368a2919f60742904a4a5abf09dc20804d649eb42f1853d1c21d121086d6014cd210b2040643c37b5d86b53052958cf702ae2e54fe65f1c0ec
DIST rpm-4.18.1.tar.bz2 6396363 BLAKE2B 4bc582bdc34a89d83346a8e18133c4f1846f2e8741c85ae2d0fd3398166e5a5d81ed86869e34700d3ea414fbf8ccf6c918692e865b956b1e6b70830b64cd323e SHA512 0ede2138b9b4c3b50d7e914cf82655507fcc207ba67804c749ea17560002976cb26b95801e9138a51589b60459494a991213a1131dbef5af2eca9b5050a4f29c
EBUILD rpm-4.18.0.ebuild 4096 BLAKE2B 371c8d3817a9d9046dd62dd333a6d95f93378fb5ae43cdf1ec51705caf85a94444b580f07cd32bdf9eb4779681f281328d8a651464975563c0d2291f676bd669 SHA512 91e71e8f963100fbafe72aa4b3119db70112398ed728e425df59e13dcf530c8856a55ac6d6ca9273a08588479765b669711b70d342bd7880b142e3c0eb5aef4d
EBUILD rpm-4.18.1.ebuild 4086 BLAKE2B 22c280c3e628dab27b308b6d99f1e481043d1c978f69287e3608e6afeea34ab911c67f99774b479c0aeb3357647f5d369986f12ad29fd1e91dd1f2803774947c SHA512 5a5a4c42fd611c770a1d2b287e7d6d5048a0a62ef150f8bd7cb342737b662234f03d306b011b723eb2632b8596b7d0e55d7eb3385ee565ba8544fd388dabd4b0
EBUILD rpm-4.18.1.ebuild 4081 BLAKE2B 79ffa55733c6af63e58292add34e4c2696d1b9d707958f603d1f93d6039dcd0030cf34f45b4dd15027d1e33b9454d62910f63fad2c9510830a7ba810746335fd SHA512 970251dda38b1942461bf536adfe2fc25d730c6387da8745a43691047dede3c2a982245d9118c94fb46345751bd47a5f09bb8558129ddb2e8b3c97949af1b07a
MISC metadata.xml 260 BLAKE2B 00f83151d62c157bea18101b36007f01e6da9d16d438671c37b929b1e19cfc202f379816a1b0d9e3faea99c44a43f97a5d43100266c683487dabba09f1378eea SHA512 d6fc386bd5be91d5dff3d7aa514f4d72e7301a47f888db95573d72505ee86987ae6412fdd8aec82842c006abe831d99f6178b1ac78a04a7dbf9e5bce1d249cb7

@ -17,7 +17,7 @@ SRC_URI="
LICENSE="GPL-2 LGPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="acl audit caps +berkdb doc dbus nls openmp python readline selinux +sqlite test +zstd"
REQUIRED_USE="
${LUA_REQUIRED_USE}

@ -1,3 +1,5 @@
DIST tarlz-0.23.tar.lz 112276 BLAKE2B 87153b1e843ed74b5efd339d29e79ddef2bbd11ff951898383ae4c6c099f4e97ef58b8bd2f14ff5bff2cfd6baccb433ab55b9b9b78d0893caef5bd1f4d07a36e SHA512 623407142d03e0ddae3dbb057b8ef5f1aea850418dbb47c6278affa42c88bc1786cd3249d1e8c018643f41516787225cb2ed3aca2fc02ba8e65dfe4744f965d8
DIST tarlz-0.24.tar.lz 113503 BLAKE2B 5d9f3a65c29ba5131faacaf0b519494e4ba659182a7dd30c49aa3d0b0a507ce699ba0539684f36a65dd30bc2bf58b59ebedf7906cc210944c98bf3f6cb765608 SHA512 8aa617ce016675b24c3286ca44afef2801f37b8f617f89665aedd20266fdde1bc8a0ad6293a70b788fb36ad1f5c761d3141c26ab7b4615c8625d72f11c680d5c
EBUILD tarlz-0.23.ebuild 604 BLAKE2B 2c85673c45730ff37832e0543231ada768b747d9df453538f120f07c6d2ff7e3b3130a2b2691eb0dd64d2f5f1d6d96a5921620a4b2650f80bdb2504aac554166 SHA512 40f93fc0f73b51916d0718913150b09441644313eacab6389fba414badcb82cbe9ab6b4475724d51272f6f0af61f09c684535beacff872eac33300f3cd0ee0fe
EBUILD tarlz-0.24.ebuild 605 BLAKE2B 3a131fe385c7f36c8e70139e1ea54c1c3980b6350bc20c13f7cdea855323d2e9b424ab2ff40c9ead5684c898452ed5aeebfa763be6d7d0828f71c76e04155aeb SHA512 0ccea1fcd7927a6fb1b8d005d5c7762c0427631597febd0e3ae130a80a436d3c7db0c5798b1ae33d68d68254d406c00b2bc08639dc67e3587c3c2b5930e869d0
MISC metadata.xml 355 BLAKE2B 395fec08847b666d16f1b38e094844c5821076bb58688ce21277c2a798a7ffc1f029cb6e92a6dcd92f71f35715f7a55638c6d34224055df275970b1c06acd6e0 SHA512 8a88a29f6ed88692e554ef13820e1ab95f1da4854d13832cc839b29b3e3278cc479412fc22e021b4de696d92cf726181b8434eb19d479d9be36b621a69040ff6

@ -0,0 +1,32 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit toolchain-funcs unpacker
DESCRIPTION="A parallel archiver combining tar and lzip"
HOMEPAGE="https://www.nongnu.org/lzip/tarlz.html"
SRC_URI="https://download.savannah.gnu.org/releases/lzip/${PN}/${P}.tar.lz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
>=app-arch/lzlib-1.12
"
DEPEND="
${RDEPEND}
"
BDEPEND="
$(unpacker_src_uri_depends)
"
src_configure() {
econf \
CXX="$(tc-getCXX)" \
CXXFLAGS="${CXXFLAGS}" \
CPPFLAGS="${CPPFLAGS}" \
LDFLAGS="${LDFLAGS}"
}

Binary file not shown.

@ -1,3 +1,3 @@
DIST brasero-3.12.3.tar.xz 3156012 BLAKE2B e657f29719164b786e29a4974102cf6b0eb3316bec84a08838bd62b952c43994e0187f6cfeaa5080fa794b1ff1684553a3d643cd309b2957a8d4191c7ea8cfbf SHA512 0e3c97b2a754f7178207db390e33b832fcaed3856ae5dee447e5c26d712728302dbebbf839a4fb7565f63b3ebb1e4936e20739482a8114e6fe2700805659270a
EBUILD brasero-3.12.3.ebuild 1818 BLAKE2B 1cd85c960761a6f158317092844768e7c83ce9d7ad9dcb07b656c698c9b17821164ae3c351723c2c3a7ad1642827195ce20813244d83112a47e3acc92b9e1fdf SHA512 a7b98630ba4cbe5a496796a1c8214e90e2dd9f94fd61a05cf6b82d2c2c6f3b2d4029da2dcabd744db907ebe9a38702ebddf116c6ca1edf3c0b1ec93a88801888
EBUILD brasero-3.12.3.ebuild 1805 BLAKE2B ffc801195d5b105dad4ee8dde8268ab8bb320ba88b2f127e01f0057d5bec72db2e20973d24f33cc549688d1b62892c37698a0d0f5710f43085c24262f4ad5448 SHA512 66be6952d26593794059da870c74572b2334cd5e6fbf2c1af6613c6223dd7d222f80b50c0d85d9168d8e27f77be469e6320781e21acdc6687441c1541bcb45f4
MISC metadata.xml 737 BLAKE2B 6660d69e0f3e33cd34c7ca424ad04e94e8b806c00d786d7d8aff8c543bc2ba3b89423175635957d83b8ec8eea948f5f6811b2103ba8301a489d3af99bc847125 SHA512 02493f9f119572a902e2e54976799881d570a78e942c86429d0c49a06b5efe7b314ce403773a08ece15c56b14d5cc8ed5b700e030835d4cdcd7d16f87bce805b

@ -12,7 +12,7 @@ HOMEPAGE="https://wiki.gnome.org/Apps/Brasero"
LICENSE="GPL-2+ CC-BY-SA-3.0"
SLOT="0/3.1" # subslot is 3.suffix of libbrasero-burn3
IUSE="+css +introspection +libburn mp3 nautilus playlist tracker"
KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ppc ppc64 ~riscv ~sparc x86"
KEYWORDS="~alpha amd64 ~arm arm64 ~loong ppc ppc64 ~riscv x86"
DEPEND="
>=dev-libs/glib-2.29.14:2

Binary file not shown.

@ -0,0 +1,9 @@
AUX default.yaml 978 BLAKE2B ab316e77c296f0ea9e51788bd62cf3abbbc0fb5b3f630acfd8d138f61802477f3d1bc75bd538200bebadd11637baf88e5ecc602db459bfa335d77704bae437e2 SHA512 84c9e1dab4d071d74a6dc8e1f02dae948e81a7e7af1810860a320c8857cf69e354e3d8c87ead2e4c15f80a1ca144116c08b0715bdd97ffc5ae2bfea3883d73e5
AUX fix-warnings.patch 419 BLAKE2B 55f23a30af6225b6e56dc7ba97d1af8052a6fa06ee7e29816ff00d7a7847136ec916eca07ddaa86f0529beef41e30f433f341497f8dd914a736ccfc0e29a2841 SHA512 b247af0b4540f80662f8ba53f531bf1ee5ee0f944862c0baf2806df5dad0ef0d44af5cb1d3ce28de956194a9d4a2b92c897e8a432dbeb4b5f52486e7e291a9de
AUX mounts.conf 87 BLAKE2B 5760f93194f6966388837d02d2505d9c7a9bf27e35bc5b5adb242288876e3afc1a9ad7da512da8a48835784a22d82c0b9e1fb112a7f29a4db8d6332a716658bf SHA512 4c52c52251558e59aefa0ccd8d733a6a67326f205219ae0dba5893be0f93090133fff954e05f31fcfaff2eb2aa48e032bb94d8ec4ac395ea3c071883dde3edcb
AUX policy.json 256 BLAKE2B 78693988b98b88c35807db755bea923203ab289435d2c4ffd914ec52904dadded467ff131d90b337bf7534d533e478420a0c81599858a9012668bc4d1815144f SHA512 120f43f579f48758af6b8292fc2cfbcb5ecc46564d2d16afb74dbd1c043de44daec6633ff585b0046c55fd48aed6dbc2901623c753ec13670d3fdcecb19a42c5
AUX seccomp.json 16401 BLAKE2B 4123dd5d166de192c8cbc89caac8a2cc82cd58054109b4650e7203003474b3e389ef08ca5798d606004adc80f9e1a3035b13978b0beec9f1193627b2867b206a SHA512 742ca8f5b4720b05246113fb6aa29311c32f58502dd8ad99fa66d9c9ce83f46e338ed08c2a90bd15f05903953edffeab92a6d509aa88b57b15dec5e052ea8c07
DIST containers-common-0.56.0.tar.gz 12616120 BLAKE2B 6495ca7d0c9134bc8bd5f7b7541bb4f1160c74abb7a64bd4d2124104ea563f5381f0092da20ab45d81929a8632b1fcc1107ac05fdae011be446cff14ebf88c45 SHA512 4af720be95e6b5ca7d0664f99a389bf092b9f45d4e0602d9b49ef1d21b359d2307a94e0c88378fe0c751f5b40db54d7aab67eb497185a289cea9288cbfaa042c
EBUILD containers-common-0.56.0.ebuild 1834 BLAKE2B 4cfdd7393af5371b4c3b4fc5a8e7646b6ff2b9d87105099403dd09307cb337fef29683b1d8465a08c2ff3021724c4bc46a0747772efab1738ef18f11d0fecb1d SHA512 1870d60fc62d0f32dc556124eef3054f61b195289316348108d4c7a527d0a39ac777dc9d3c7ba799da7adc0fa6104a8fa674bd72d23fe319fcc8db7cbfff7d48
EBUILD containers-common-9999.ebuild 1834 BLAKE2B 4cfdd7393af5371b4c3b4fc5a8e7646b6ff2b9d87105099403dd09307cb337fef29683b1d8465a08c2ff3021724c4bc46a0747772efab1738ef18f11d0fecb1d SHA512 1870d60fc62d0f32dc556124eef3054f61b195289316348108d4c7a527d0a39ac777dc9d3c7ba799da7adc0fa6104a8fa674bd72d23fe319fcc8db7cbfff7d48
MISC metadata.xml 635 BLAKE2B ccb2fc61af04b1fc78a5fa4b75a17ac26f1fe0b76eedc022a752b9672dbd4ec72bf26a811b65b391811b973e387a8fdc2b79fdb54ab468a8bd59b8db7a6c5f9e SHA512 f99685c268495ab84c1b72c5c9ca21c562a4adaecab52c3c1b2eff45ed31c2a150a2db8428b70393814d663c5042bea2454d3c447b0f52d6db4fcf81d6423c0f

@ -0,0 +1,76 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Common config files and docs for Containers eco-system"
HOMEPAGE="https://github.com/containers/common"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/containers/common.git"
else
SRC_URI="https://github.com/containers/common/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P#containers-}"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
RDEPEND="
app-containers/containers-image
app-containers/containers-storage
app-containers/containers-shortnames
net-firewall/nftables
net-firewall/iptables[nftables]
|| ( app-containers/crun app-containers/runc )
|| (
( >=app-containers/netavark-1.6.0 >=app-containers/aardvark-dns-1.6.0 )
>=app-containers/cni-plugins-0.9.1
)
"
BDEPEND="
>=dev-go/go-md2man-2.0.2
"
src_prepare() {
default
[[ -f docs/Makefile ]] || die
sed -i -e 's|/usr/local|/usr|g;' docs/Makefile || die
eapply "${FILESDIR}/fix-warnings.patch"
}
src_configure() {
return
}
src_compile() {
emake docs
}
src_test() {
return
}
src_install() {
emake DESTDIR="${D}" install
insinto /etc/containers
# https://github.com/containers/skopeo/raw/main/default-policy.json
doins pkg/config/containers.conf "${FILESDIR}/policy.json"
insinto /etc/containers/registries.d
# https://github.com/containers/skopeo/raw/main/default.yaml
doins "${FILESDIR}/default.yaml"
insinto /usr/share/containers
# https://github.com/containers/common/raw/main/pkg/seccomp/seccomp.json
# https://github.com/containers/common/raw/main/pkg/subscriptions/mounts.conf
doins "${FILESDIR}/seccomp.json" "${FILESDIR}/mounts.conf"
keepdir /etc/containers/certs.d /etc/containers/oci/hooks.d /etc/containers/systemd /var/lib/containers/sigstore
}

@ -0,0 +1,76 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Common config files and docs for Containers eco-system"
HOMEPAGE="https://github.com/containers/common"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/containers/common.git"
else
SRC_URI="https://github.com/containers/common/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P#containers-}"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
RDEPEND="
app-containers/containers-image
app-containers/containers-storage
app-containers/containers-shortnames
net-firewall/nftables
net-firewall/iptables[nftables]
|| ( app-containers/crun app-containers/runc )
|| (
( >=app-containers/netavark-1.6.0 >=app-containers/aardvark-dns-1.6.0 )
>=app-containers/cni-plugins-0.9.1
)
"
BDEPEND="
>=dev-go/go-md2man-2.0.2
"
src_prepare() {
default
[[ -f docs/Makefile ]] || die
sed -i -e 's|/usr/local|/usr|g;' docs/Makefile || die
eapply "${FILESDIR}/fix-warnings.patch"
}
src_configure() {
return
}
src_compile() {
emake docs
}
src_test() {
return
}
src_install() {
emake DESTDIR="${D}" install
insinto /etc/containers
# https://github.com/containers/skopeo/raw/main/default-policy.json
doins pkg/config/containers.conf "${FILESDIR}/policy.json"
insinto /etc/containers/registries.d
# https://github.com/containers/skopeo/raw/main/default.yaml
doins "${FILESDIR}/default.yaml"
insinto /usr/share/containers
# https://github.com/containers/common/raw/main/pkg/seccomp/seccomp.json
# https://github.com/containers/common/raw/main/pkg/subscriptions/mounts.conf
doins "${FILESDIR}/seccomp.json" "${FILESDIR}/mounts.conf"
keepdir /etc/containers/certs.d /etc/containers/oci/hooks.d /etc/containers/systemd /var/lib/containers/sigstore
}

@ -0,0 +1,28 @@
# This is a default registries.d configuration file. You may
# add to this file or create additional files in registries.d/.
#
# lookaside: for reading/writing simple signing signatures
# lookaside-staging: for writing simple signing signatures, preferred over lookaside
#
# lookaside and lookaside-staging take a value of the following:
# lookaside: {schema}://location
#
# For reading signatures, schema may be http, https, or file.
# For writing signatures, schema may only be file.
# The default locations are built-in, for both reading and writing:
# /var/lib/containers/sigstore for root, or
# ~/.local/share/containers/sigstore for non-root users.
default-docker:
# lookaside: https://…
# lookaside-staging: file:///…
# The 'docker' indicator here is the start of the configuration
# for docker registries.
#
# docker:
#
# privateregistry.com:
# lookaside: https://privateregistry.com/sigstore/
# lookaside-staging: /mnt/nfs/privateregistry/sigstore

@ -0,0 +1,24 @@
--- a/Makefile
+++ b/Makefile
@@ -4,20 +4,5 @@
DESTDIR ?=
-PREFIX := /usr/local
+PREFIX := /usr
CONFIGDIR := ${PREFIX}/share/containers
-define go-build
- CGO_ENABLED=0 \
- GOOS=$(1) GOARCH=$(2) $(GO) build -tags "$(3)" ./...
-endef
-
-ifeq ($(shell uname -s),Linux)
-define go-build-c
- CGO_ENABLED=1 \
- GOOS=$(1) GOARCH=$(2) $(GO) build -tags "$(3)" ./...
-endef
-else
-define go-build-c
-endef
-endif
-
.PHONY:

@ -0,0 +1,3 @@
# Refer to containers-mounts.conf(5)
# Example:
# /usr/share/rhel/secrets:/run/secrets

@ -0,0 +1,14 @@
{
"default": [
{
"type": "insecureAcceptAnything"
}
],
"transports":
{
"docker-daemon":
{
"": [{"type":"insecureAcceptAnything"}]
}
}
}

File diff suppressed because it is too large Load Diff

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<maintainer type="person" proxied="yes">
<email>rahil3108@gmail.com</email>
<name>Rahil Bhimjiani</name>
</maintainer>
<upstream>
<remote-id type="github">containers/common</remote-id>
<bugs-to>https://github.com/containers/common/issues</bugs-to>
<doc>https://github.com/containers/common/blob/main/README.md</doc>
</upstream>
</pkgmetadata>

@ -0,0 +1,5 @@
AUX fix-warnings.patch 397 BLAKE2B a5922e061c825e25398fc3fccdf683abf8331b065337ff240227478d7d3ef5398957d56a430c0b04aa823033b56653e87c8186065e5898818e75310451b347e0 SHA512 a96ab3fea76be4751d6dc3893b4272b063c854503e1a65b4501819a5925f3911c285fbfb4ee6827795a41c696015cc06f446e4ddb1318e21cf0141e15804833e
DIST containers-image-5.28.0.tar.gz 688100 BLAKE2B 0cee8be579bd11eb0524590d8afe16b6ef863d7adfd74db51b68385142804c8096fec3f2a492e0d5a5021eba9edc91219b327138635aaa329c6ef7d0c01129c8 SHA512 0b76539e04016f5f1067c576a877ace475f25d0f0840fc969606601105a8a7f0e242cc054b0a2cfb6f1b751d850734360a524c78563fdf2330c8ae8c11bba1cf
EBUILD containers-image-5.28.0.ebuild 794 BLAKE2B 68a7bbe15e21f49a15ba685c6e30374dc3ed15309ef600537d54d28d63046b2289ce76cb44f170ae52303e7b2553a88265468630a7a697aa32d8d3945c2a5fa7 SHA512 7552a9e886c485aba8451c25695a79be561fbed5dcf0e171424b2d2dfc605d0b93853d7161d481e2f8877066c60b07c084fc3ef4f25f9cac64657ef2f5471b52
EBUILD containers-image-9999.ebuild 794 BLAKE2B 68a7bbe15e21f49a15ba685c6e30374dc3ed15309ef600537d54d28d63046b2289ce76cb44f170ae52303e7b2553a88265468630a7a697aa32d8d3945c2a5fa7 SHA512 7552a9e886c485aba8451c25695a79be561fbed5dcf0e171424b2d2dfc605d0b93853d7161d481e2f8877066c60b07c084fc3ef4f25f9cac64657ef2f5471b52
MISC metadata.xml 632 BLAKE2B c48672fb67a353cb54f27fb541d91899a27b913ac6036000d65f8ee0356aad9ea9a7e796aa239b3b6fa2b3e08cd9890a142e20ef46e6f5bc5577c6d82cdd6f1e SHA512 a989fa8d4076d55b36e2727250f0c622dd821791cd55b650c585e15689d21da8e1158c869348b6c7e772db8729b84c2e93ab10918b9e9b8a646b639c2959852c

@ -0,0 +1,45 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Default config and docs related to Containers' images"
HOMEPAGE="https://github.com/containers/image"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/containers/image.git"
else
SRC_URI="https://github.com/containers/image/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P#containers-}"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
DEPEND=">=dev-go/go-md2man-2.0.2"
src_prepare() {
default
eapply "${FILESDIR}/fix-warnings.patch"
}
src_configure() {
return
}
src_compile() {
emake docs
}
src_test() {
return
}
src_install() {
emake DESTDIR="${D}" install
insinto /etc/containers
doins registries.conf
}

@ -0,0 +1,45 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Default config and docs related to Containers' images"
HOMEPAGE="https://github.com/containers/image"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/containers/image.git"
else
SRC_URI="https://github.com/containers/image/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P#containers-}"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
DEPEND=">=dev-go/go-md2man-2.0.2"
src_prepare() {
default
eapply "${FILESDIR}/fix-warnings.patch"
}
src_configure() {
return
}
src_compile() {
emake docs
}
src_test() {
return
}
src_install() {
emake DESTDIR="${D}" install
insinto /etc/containers
doins registries.conf
}

@ -0,0 +1,14 @@
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,2 @@
-GOBIN := $(shell go env GOBIN)
-ifeq ($(GOBIN),)
-GOBIN := $(shell go env GOPATH)/bin
-endif
-
# when cross compiling _for_ a Darwin or windows host, then we must use openpgp
@@ -17,3 +12,2 @@
-PACKAGES := $(shell GO111MODULE=on go list $(BUILDFLAGS) ./...)
SOURCE_DIRS = $(shell echo $(PACKAGES) | awk 'BEGIN{FS="/"; RS=" "}{print $$4}' | uniq)

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<maintainer type="person" proxied="yes">
<email>rahil3108@gmail.com</email>
<name>Rahil Bhimjiani</name>
</maintainer>
<upstream>
<remote-id type="github">containers/image</remote-id>
<bugs-to>https://github.com/containers/image/issues</bugs-to>
<doc>https://github.com/containers/image/blob/main/README.md</doc>
</upstream>
</pkgmetadata>

@ -0,0 +1,4 @@
DIST containers-shortnames-2023.02.20.tar.gz 13527 BLAKE2B 165a4c51bd284078990c94059145bb6b4bd5de4d8595eb2ccd2acc6fe8561e7edc300b7edadc684675ee281d7ada1c3a6d5aa0117c640ec22c2d2ef7e46486b5 SHA512 856dbbeb2acda276e9605bd1ecec0f8d65952c597ee2af61dd8909d7d3c04e5ef06c40b69ec4a98f79e623c536850f614c1b0af3a19637e300e7d3a285933193
EBUILD containers-shortnames-2023.02.20.ebuild 710 BLAKE2B 06c0997714cf105a2e1bd76cd27a88eaaaa95027d6a64282adb3de09a5555263bc2bf7dc5055556bd276e549429b2e8bfef93d293757a8d592429b0415464079 SHA512 2eb4c972c63ed6de36276e0543bc7ab54b3ff12200089aa9260b2b3ab6f40cc07c20009a961411c6ba74679b179028a8db74485a3f49b7a1a56b16b6e63f4635
EBUILD containers-shortnames-9999.ebuild 710 BLAKE2B 06c0997714cf105a2e1bd76cd27a88eaaaa95027d6a64282adb3de09a5555263bc2bf7dc5055556bd276e549429b2e8bfef93d293757a8d592429b0415464079 SHA512 2eb4c972c63ed6de36276e0543bc7ab54b3ff12200089aa9260b2b3ab6f40cc07c20009a961411c6ba74679b179028a8db74485a3f49b7a1a56b16b6e63f4635
MISC metadata.xml 647 BLAKE2B 33eeb1747f7a6e3740b2ebc5d005623079f532aada2db0452b5844e3cd7e0696131829005e57faa6f7cf806503554c05d06762459a6e3596f924968ad6d3e200 SHA512 b740386a29dc1777d9952ac5b66c140341a9dc3e1d8f5621ae4dbcbda37723a62f55d2ddb44843010859d9975bc109b3a35eb993e6904f3d57c5b3cda462ca19

@ -0,0 +1,36 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Configures default shortnames (aliases) for Containers"
HOMEPAGE="https://github.com/containers/shortnames"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/containers/shortnames.git"
else
SRC_URI="https://github.com/containers/shortnames/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P#containers-}"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
src_configure() {
return
}
src_compile() {
return
}
src_test() {
return
}
src_install() {
insinto /etc/containers/registries.conf.d
newins shortnames.conf 000-shortnames.conf
}

@ -0,0 +1,36 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Configures default shortnames (aliases) for Containers"
HOMEPAGE="https://github.com/containers/shortnames"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/containers/shortnames.git"
else
SRC_URI="https://github.com/containers/shortnames/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P#containers-}"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
src_configure() {
return
}
src_compile() {
return
}
src_test() {
return
}
src_install() {
insinto /etc/containers/registries.conf.d
newins shortnames.conf 000-shortnames.conf
}

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<maintainer type="person" proxied="yes">
<email>rahil3108@gmail.com</email>
<name>Rahil Bhimjiani</name>
</maintainer>
<upstream>
<remote-id type="github">containers/shortnames</remote-id>
<bugs-to>https://github.com/containers/shortnames/issues</bugs-to>
<doc>https://github.com/containers/shortnames/blob/main/README.md</doc>
</upstream>
</pkgmetadata>

@ -1,5 +1,5 @@
DIST containers-storage-1.41.0.tar.gz 3685908 BLAKE2B 5835fa222127d8e2398a33ec02b24ee0b5a94943ed30a19d8b5f76ce4b852f1e7ad9eceb052dcbb2a2c3db96d3ec4ca0150ab81cd0e0a0e351b353f47c0862b5 SHA512 e2d4d887f067d4bdab97426d9cfe7f941b8148d3c40ddb60d5cbc08f1b3a8c5e6a182586f9cdb96873377b8467368527ff89220ba8a5cd7ad4682a90a1243f56
DIST containers-storage-1.42.0.tar.gz 3767236 BLAKE2B 3cca3833695bb5e15a0ab5d97d5f72e14102d8c6eee1c132932e4177f64ab9a171cf8486f4fe8d9e09a0537a325c988c6b766249c3c0843bb5f1b270a705b523 SHA512 c8a4fdfbc71915dd3a1d5c1fabef4be7641b8a0edb14805719d93bc9de5bd8fe150636c4457fa544487a6bccbb0f58ad36ca3990d6ca3c2b73935418aaf98f22
EBUILD containers-storage-1.41.0.ebuild 1460 BLAKE2B 1e82d14bc4a40bfeec0c09d26d5e987cdf208a66e9359186512b067d454154337c301573f852fbeafaa572641acb6109e5f069273e4689efbaf0262be216e736 SHA512 3debf8e12d4ef6349aa00ad4594494999cacaba6f784db5c7ea79da9c81f7ca783a9bd8bc62e5fc81bc4629cd6ff49c8ca304e8df3741cd93cf6660246828801
EBUILD containers-storage-1.42.0.ebuild 1460 BLAKE2B 1e82d14bc4a40bfeec0c09d26d5e987cdf208a66e9359186512b067d454154337c301573f852fbeafaa572641acb6109e5f069273e4689efbaf0262be216e736 SHA512 3debf8e12d4ef6349aa00ad4594494999cacaba6f784db5c7ea79da9c81f7ca783a9bd8bc62e5fc81bc4629cd6ff49c8ca304e8df3741cd93cf6660246828801
MISC metadata.xml 604 BLAKE2B b132c7cf2a280a6c5fee5b37eb644c5644890b845a92165551a5466caf2fbfa07f7b63b1a387fee62467a7df4218e1e4c563fe70fc40209a4f2eae5b9c714b57 SHA512 21725a1c25a5912b26a56f1970b968ca686f55a27888e4a2948ea6d7a6b8f3d70f528e875d8d2271963ebebb6fee11c51f218045296dac21a1b86ba9b5481b28
AUX system-md2man-path.patch 169 BLAKE2B 707d7396af9c6a04a3a4860198acb927d6fbc68d8a1375340220778528f472f9026fff63c24cfa11ba48f6157faff3f993c0d9bac3e125de6152045ec3c9876b SHA512 6430e890fa731b4a8646bd001557bc17180c312d1efdccfd3aa611f7402eb8e8cc0ef551b5cfc9b0db60a0e69a6dd90b5c75c46139fa3d9424ae6f9700c91f64
DIST containers-storage-1.50.2.tar.gz 4278269 BLAKE2B 3a2b08c710c043cfc130b9ffe39807e5ced8aa3cdb9805e9d9a4d0f60d8136f99e78ca03992c566b7c7d9aa1c25a2ab9da5e9edc4f1f841663302f5873dce419 SHA512 eb2ca9d243511abd5d6d1727c60166422dbfef4a3ddbb5062e58d915d0705afcd10ded8f1f79e897f9f5244fb6b6d349fbf3ed86ae57f41e31a1965c4e926941
EBUILD containers-storage-1.50.2.ebuild 841 BLAKE2B 767bbfc7a815dd17883d59bdc4e5a530a9140c2d30dbebb818da82946db373bd95c21ecb644ea2f58c14a40ddbb334aeede16c10fe87407a9b04c8aad89308ea SHA512 cae56fcb1a491193b10bd195b46f97043af30a340aac3a6abf82ed67380e5c0d6c8893c550c13f2feba6d6c5273dbbf305afb4b8808da958b86c0ce03ddbb7ef
EBUILD containers-storage-9999.ebuild 841 BLAKE2B 767bbfc7a815dd17883d59bdc4e5a530a9140c2d30dbebb818da82946db373bd95c21ecb644ea2f58c14a40ddbb334aeede16c10fe87407a9b04c8aad89308ea SHA512 cae56fcb1a491193b10bd195b46f97043af30a340aac3a6abf82ed67380e5c0d6c8893c550c13f2feba6d6c5273dbbf305afb4b8808da958b86c0ce03ddbb7ef
MISC metadata.xml 749 BLAKE2B ce52512722537fc1032a3ec28540328008665966819cf9faaa53144362bcc39a070452f688a429446fb9eaf5b55c185a4c16ccd3d3334ed632d87143acb25411 SHA512 05d49c0424b1d04dcc7a648968e41a1ef7f1c136e44d99d813708951231fb79069899304498cbd715f25785b63c6a38b66320bc670a72775a96a14079cd31864

@ -1,58 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit go-module
KEYWORDS="~amd64"
DESCRIPTION="containers/storage library"
HOMEPAGE="https://github.com/containers/storage"
LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT"
SLOT="0"
IUSE="btrfs +device-mapper test"
SRC_URI="https://github.com/containers/storage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
RDEPEND="
btrfs? ( sys-fs/btrfs-progs )
device-mapper? ( sys-fs/lvm2:= )"
DEPEND="${RDEPEND}
dev-go/go-md2man
test? (
sys-fs/btrfs-progs
sys-fs/lvm2
sys-apps/util-linux
)"
RESTRICT="test"
S=${WORKDIR}/${P#containers-}
src_prepare() {
default
sed -e 's|: install\.tools|:|' -i Makefile || die
[[ -f hack/btrfs_tag.sh ]] || die
use btrfs || { echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \
"hack/btrfs_tag.sh" || die; }
[[ -f hack/libdm_tag.sh ]] || die
use device-mapper || { echo -e "#!/bin/sh\necho btrfs_noversion exclude_graphdriver_devicemapper" > \
"hack/libdm_tag.sh" || die; }
}
src_compile() {
export -n GOCACHE GOPATH XDG_CACHE_HOME #678856
emake GOMD2MAN=go-md2man FFJSON= containers-storage docs
}
src_install() {
dobin "${PN}"
while read -r -d ''; do
mv "${REPLY}" "${REPLY%.1}" || die
done < <(find "${S}/docs" -name '*.[[:digit:]].1' -print0)
find "${S}/docs" -name '*.[[:digit:]]' -exec doman '{}' + || die
}
src_test() {
env -u GOFLAGS unshare -m emake local-test-unit || die
}

@ -1,58 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit go-module
KEYWORDS="~amd64"
DESCRIPTION="containers/storage library"
HOMEPAGE="https://github.com/containers/storage"
LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT"
SLOT="0"
IUSE="btrfs +device-mapper test"
SRC_URI="https://github.com/containers/storage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
RDEPEND="
btrfs? ( sys-fs/btrfs-progs )
device-mapper? ( sys-fs/lvm2:= )"
DEPEND="${RDEPEND}
dev-go/go-md2man
test? (
sys-fs/btrfs-progs
sys-fs/lvm2
sys-apps/util-linux
)"
RESTRICT="test"
S=${WORKDIR}/${P#containers-}
src_prepare() {
default
sed -e 's|: install\.tools|:|' -i Makefile || die
[[ -f hack/btrfs_tag.sh ]] || die
use btrfs || { echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \
"hack/btrfs_tag.sh" || die; }
[[ -f hack/libdm_tag.sh ]] || die
use device-mapper || { echo -e "#!/bin/sh\necho btrfs_noversion exclude_graphdriver_devicemapper" > \
"hack/libdm_tag.sh" || die; }
}
src_compile() {
export -n GOCACHE GOPATH XDG_CACHE_HOME #678856
emake GOMD2MAN=go-md2man FFJSON= containers-storage docs
}
src_install() {
dobin "${PN}"
while read -r -d ''; do
mv "${REPLY}" "${REPLY%.1}" || die
done < <(find "${S}/docs" -name '*.[[:digit:]].1' -print0)
find "${S}/docs" -name '*.[[:digit:]]' -exec doman '{}' + || die
}
src_test() {
env -u GOFLAGS unshare -m emake local-test-unit || die
}

@ -0,0 +1,45 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Default config and docs related to Containers' storage"
HOMEPAGE="https://github.com/containers/storage"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/containers/storage.git"
else
SRC_URI="https://github.com/containers/storage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P#containers-}"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
DEPEND=">=dev-go/go-md2man-2.0.2"
src_prepare() {
default
eapply "${FILESDIR}"/system-md2man-path.patch
}
src_configure() {
return
}
src_compile() {
emake -C docs containers-storage.conf.5
}
src_test() {
return
}
src_install() {
emake DESTDIR="${D}" -C docs install
insinto /etc/containers
doins storage.conf
}

@ -0,0 +1,45 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Default config and docs related to Containers' storage"
HOMEPAGE="https://github.com/containers/storage"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/containers/storage.git"
else
SRC_URI="https://github.com/containers/storage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P#containers-}"
KEYWORDS="~amd64"
fi
LICENSE="Apache-2.0"
SLOT="0"
DEPEND=">=dev-go/go-md2man-2.0.2"
src_prepare() {
default
eapply "${FILESDIR}"/system-md2man-path.patch
}
src_configure() {
return
}
src_compile() {
emake -C docs containers-storage.conf.5
}
src_test() {
return
}
src_install() {
emake DESTDIR="${D}" -C docs install
insinto /etc/containers
doins storage.conf
}

@ -0,0 +1,7 @@
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -1,2 +1,3 @@
-GOMD2MAN = ../tests/tools/build/go-md2man
+GOMD2MAN = $(shell command -v go-md2man)
+
PREFIX ?= ${DESTDIR}/usr

@ -1,21 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zmedico@gentoo.org</email>
<name>Zac Medico</name>
</maintainer>
<use>
<flag name="btrfs">
Enables dependencies for the "btrfs" graph driver, including
necessary kernel flags.
</flag>
<flag name="device-mapper">
Enables dependencies for the "devicemapper" graph driver, including
necessary kernel flags.
</flag>
</use>
<upstream>
<remote-id type="github">containers/storage</remote-id>
</upstream>
<maintainer type="person">
<email>zmedico@gentoo.org</email>
<name>Zac Medico</name>
</maintainer>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<maintainer type="person" proxied="yes">
<email>rahil3108@gmail.com</email>
<name>Rahil Bhimjiani</name>
</maintainer>
<upstream>
<remote-id type="github">containers/storage</remote-id>
<bugs-to>https://github.com/containers/storage/issues</bugs-to>
<doc>https://github.com/containers/storage/blob/main/README.md</doc>
</upstream>
</pkgmetadata>

@ -7,6 +7,7 @@ AUX lxd-5.0.2-r1.initd 1710 BLAKE2B a9597d32e88502f521f3ae784e4f653ab6d3ab144537
AUX lxd-5.0.2-remove-shellcheck-buildsystem-checks.patch 1059 BLAKE2B 2f75a4825584bfb864702f6d5b7023850ca19601014a0f594c2909b892c94b355013eac32d430caf7600e3fdc85fe5140d1e01bd6c26d3cb80df52ccf5cb3ee2 SHA512 026847b13dee7b92e718ea4c6697483d115cc452a9f129acedf7aa8df78f9f67c2b9ff72bec959560d1baabce9d5cf8c9b791fbd5b829cca18a488e8572e6872
AUX lxd-5.0.3-btrfs-quota-group-fix.patch 1762 BLAKE2B c26a2cfe479cace5dda6bccf09c4c67d5e787fb0595da58959c182ec866b7a22ebed11856b29feb77a24d4b44fed213dae649f3b74fd55f6211c8c98f3a8d55d SHA512 0438c12eb728a968ec80562e6ca839ab14cb7c09294ae527a8e20e24e927e8941f87ffc8a145f4931bb8867f5ad2cdf61c965f29f0320e5716aa387dbd3e5880
AUX lxd-5.17-remove-shellcheck-buildsystem-checks.patch 988 BLAKE2B a6d1d72af01a645c8bc129e377273f53cd2e95729f00623597fd161bf3fd7d86bb053eb9e09062c356bc0447c79d0ae5d2da9351123d8c96df0098fca3079d8a SHA512 4e4853dca86e4ac7c3c7c4ed4cf35f0850cfae50839b3a51f17046390277585d24d3cc9a128fc5821b0b19b50b04cab2c301fec3c7b1794ccd8953e262cbd3c2
AUX lxd-5.18-handle-regression-in-lxd_combined.tar.gz-handling.patch 910 BLAKE2B 60fec0f3bf05a9955c0682a623dc4492626bda0fa4fc9ab78fcdb8d842ec53ff3ce51ad11dab71f12fe5bc03df9977cfac3e1a0087439bf3d056045954dba422 SHA512 307bc002271c3cb0013c59ec23b6f58ce5abf33b9b68dbd89dc41d3d4474ac4633269a8707033f24182b3debe77c5ac9a5003b53de38e023d22c6465b25ceee2
AUX lxd-containers-4.0.0.service 322 BLAKE2B a38cffd4b5809946abdac858564dcab2c2967c295d671df0d315d790df1849e25f0bc052e20cd0d9e4c23403289050b4538f5a52437ab8ae9ca3b40c6a9a1571 SHA512 a55f2c1a367c5c3c5eb6880e01893977de18c6e9463949236ee3247715fbf53641bbe1b69404362dd6cb6ba2a30ac6539fd362b21059e529dc4dac4ec5ca6718
DIST lxd-4.0.9.tar.gz 9117078 BLAKE2B aa6689c1e958258484fba5c060765dd71d5406cb4375d3132cdc38633277e6c95322e8e3aed5e9dd251140c6868ec42470e797639dde4af42848e138f3b45ee2 SHA512 657949311753895f3941deaabae2d03092fc67490d2de78db48b296fdd3e9df4c5844467dd6913814426ca423a6ee1da9705bb1a2652ea99fe1356eb7da97ebb
DIST lxd-4.0.9.tar.gz.asc 833 BLAKE2B 7cd0d3ab518d947ca3ea6dc804c6a59b592e4e568152c078fdd3c102420bcd94d2f0b2c335b8b4ecdb19dc3c9a10f665a1510903f395247da956717beaa172a3 SHA512 79a4111571ab43e79cf669e416ed50f3ccae0fbceb86d73757d23c778035e827f47643bc87ff6a2fc64b095345a3d53cbd0c4eb245c75364e907d7449f3a0886
@ -14,7 +15,10 @@ DIST lxd-5.0.2.tar.gz 16258766 BLAKE2B a0d4e3108664724c064fb8c16031ff7dfa3f49735
DIST lxd-5.0.2.tar.gz.asc 833 BLAKE2B 606cae1439148060acd3fb04fdb108654a351ce2b7484081f7874ab2b0af8de2b5befc5a5409a94af0da25308622234db2e3b411edb20324df458fe85f46ac21 SHA512 884c921a263a8baf2d94958c72e232a0a47d0747f5a9d36ed8fc270edfa18dfc240d1e858e75dcc03eae921dae08d3ddfd34d9146d1510de6a09031da26aaccc
DIST lxd-5.17.tar.gz 22319517 BLAKE2B b9dfd934fad6b21b6f2b1d25291b4201f647b2b09a1ae155577a88257c021cc36b43a08802411d0f3268b726da7fa38b8627302696f670a1747e3795db0b0efe SHA512 f5feca34fff0b01a9db8041dd18fde82ad089f36ab171cf338556ebec9b2accfa450b0734d72b25bbb7296aaaeafed247aac2117c32f3ebfce5ae716e4b196bf
DIST lxd-5.17.tar.gz.asc 833 BLAKE2B bc781d520b8314261b6681603f17fcb82d045bb969ebf8eec64c82ef73f493892d48d50c870f72e9f4f1f6c7dd4b63239a5039949e4f7bb49539c69538b4a2f2 SHA512 7e76a6cfcb1bf5b7b864125b412d5bd4766b4af6cdab40d70324c4103d1a716c39dfa5cf0eccf2cb7862f182c7c469f18ca46b981a1be3fc0fac8c47537d6c1c
DIST lxd-5.18.tar.gz 22536474 BLAKE2B 44dabd50c137adde794ed266484a071d1aecff9300f8710d748a550415bd5f21b5f4ab40602f7b648cc05f9acc403782209636bdb8fe9720ff2808e8816aa27b SHA512 a9bdc276fb040413bad47579fb420951a007d725319c89abfde14062933267c7e5c67c546f2222905232231997a8f47fa097ed603d93dde2b9990b3e7018103f
DIST lxd-5.18.tar.gz.asc 833 BLAKE2B 2eee2786d2930bce45b5f23943d3e9b0dab61595608a38077429585c3191476915d0ba7ef5eb05633a014dd92542cc5a5bfa70c4c0a63b94733297d37d78717e SHA512 959911019bffeca1cddae6b44c65b2cdbd71658cf9f714e41dd3de755629aedc0e8de196dac6ba0de0f27247e859f7090dc23edf4896e7a6c028b87e3665a5e2
EBUILD lxd-4.0.9-r4.ebuild 4862 BLAKE2B 438e4194a54cfcd91b95205a1bf2ebfa7c2cc52d418721393fe0d334b60630a2ca8f7ec2ee11ce3c2d08c76eb17a50e5d549f8c7f4eb233354cf22166ed3ab94 SHA512 7755fa1159cce2e2bb4d92ab4429d9648697a7b7e28e6970bc080332252653c71bf09f0b687a6ecd162d04ffb08e7f473558110424a6670a0115f0692086f088
EBUILD lxd-5.0.2-r3.ebuild 5836 BLAKE2B 93bc0776308a1c60ba40039151c43d6338d80ec9a4f7db53cfc6ddea660617a933420abd06b8baa21cbd10462e7249c24a2723d2ffaf515f8d48c54906f0a836 SHA512 228a13650b11c65eca1dfa8b3d82be35139fc00f458c9bdb1f94452f7d352c45a6da06a5bb1ad759feefa39f837e48c512835ccae1f13e6b3dba702b93af8c96
EBUILD lxd-5.17.ebuild 5022 BLAKE2B 73f0746b08ec86e20d8bc6ae1ecae070a553798dfeebd9262529c88d9874da4b9c58037fcdb688c6b43fc2870efa8248be674b487ec25e58ccc5f796eabb0dea SHA512 daafae5e3a646583f6277736285d12336b1f97d22952db4f95e5577448db5c0aa0d4924c411dfb2f62f15e6fca0cdbcb987d2d6de487d7e6fe500b78654fb085
MISC metadata.xml 1681 BLAKE2B a3860fc32de053d30da292bc75177ceb0ba946a1d05af243c919f8a0b0d69465de91adacd30b4f16e33777d2fc1f66b3e2c8c3087b81e312dbdd9b7ed5b77ec8 SHA512 426a2f4fcbc3d24791ab7769884da2e954d4f7618ed14a472ab0e4271c80d86f879ac30a3221645a8a4aa195d12700584c3c4c3c02ae347f2425520b5d2f95cf
EBUILD lxd-5.18.ebuild 5031 BLAKE2B b30aba7a0ea41aa2155b629b892422cb5e56b1c8bd4d4503ac43ddbb52d805864879ea3e0b577691ba7bf49008054dbd43dca8d151d6f7457ba424bce7faa098 SHA512 d1299f4b04b827175b4ab849d4aafbb1046ecc00c408fb8e6208f6ae56850abd7557b857a10c0e039b5cca40e483dd2e18d33127bb427f7e69eda42b24fd5480
MISC metadata.xml 1542 BLAKE2B 5dd8be7c1a6c3207c5ea702c82ee8dc647663f28feb99ad8d0df7d0cabad9f5e5a99b3a5366a305fc06b4aa3228a9648cbc4a5e69a2a6f0f162944570e20b1ff SHA512 5e019f57f6bbe4ebf47fc4affe1c0a7bb15affda5d2445072f8e7b7998dadec390b077a63c2836a0dff57e055c5108686b547c8687310661be66dded52767854

@ -0,0 +1,21 @@
https://github.com/canonical/lxd/commit/2d8481712055d0cbb3bd952e25a1df469939990d.patch
From: Thomas Parrott <thomas.parrott@canonical.com>
Date: Thu, 21 Sep 2023 22:12:19 +0100
Subject: [PATCH] shared/simplestreams/products: Fix regression in
lxd_combined.tar.gz handling
For reasons that are likely lost to history simplestreams uses lxd.tar.xz
whereas the combined file is lxd_combined.tar.gz (not xz).
Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
--- a/shared/simplestreams/products.go
+++ b/shared/simplestreams/products.go
@@ -10,7 +10,7 @@ import (
"github.com/canonical/lxd/shared/osarch"
)
-var lxdCompatCombinedItems = []string{"lxd_combined.tar.xz", "incus_combined.tar.xz"}
+var lxdCompatCombinedItems = []string{"lxd_combined.tar.gz", "incus_combined.tar.gz"}
var lxdCompatItems = []string{"lxd.tar.xz", "incus.tar.xz"}
// Products represents the base of download.json.

@ -0,0 +1,187 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit bash-completion-r1 go-module linux-info optfeature systemd verify-sig
DESCRIPTION="Modern, secure and powerful system container and virtual machine manager"
HOMEPAGE="https://ubuntu.com/lxd https://github.com/canonical/lxd"
SRC_URI="https://github.com/canonical/lxd/releases/download/${P}/${P}.tar.gz
verify-sig? ( https://github.com/canonical/lxd/releases/download/${P}/${P}.tar.gz.asc
)"
LICENSE="Apache-2.0 BSD LGPL-3 MIT"
SLOT="0/stable"
KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="apparmor nls"
DEPEND="acct-group/lxd
app-arch/xz-utils
>=app-containers/lxc-5.0.0:=[apparmor?,seccomp(+)]
dev-db/sqlite:3
>=dev-libs/dqlite-1.13.0:=
dev-libs/lzo
>=dev-libs/raft-0.17.1:=[lz4]
>=dev-util/xdelta-3.0[lzma(+)]
net-dns/dnsmasq[dhcp]
sys-libs/libcap
virtual/udev"
RDEPEND="${DEPEND}
net-firewall/ebtables
net-firewall/iptables
sys-apps/iproute2
sys-fs/fuse:3
>=sys-fs/lxcfs-5.0.0
sys-fs/squashfs-tools[lzma]
virtual/acl"
BDEPEND="dev-lang/go
nls? ( sys-devel/gettext )
verify-sig? ( sec-keys/openpgp-keys-canonical )"
CONFIG_CHECK="
~CGROUPS
~IPC_NS
~NET_NS
~PID_NS
~SECCOMP
~USER_NS
~UTS_NS
~KVM
~MACVTAP
~VHOST_VSOCK
"
ERROR_IPC_NS="CONFIG_IPC_NS is required."
ERROR_NET_NS="CONFIG_NET_NS is required."
ERROR_PID_NS="CONFIG_PID_NS is required."
ERROR_SECCOMP="CONFIG_SECCOMP is required."
ERROR_UTS_NS="CONFIG_UTS_NS is required."
WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines."
WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines."
WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines."
# Go magic.
QA_PREBUILT="/usr/bin/fuidshift
/usr/bin/lxc
/usr/bin/lxc-to-lxd
/usr/bin/lxd-agent
/usr/bin/lxd-benchmark
/usr/bin/lxd-migrate
/usr/sbin/lxd"
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/canonical.asc
# The testsuite must be run as root.
# make: *** [Makefile:156: check] Error 1
RESTRICT="test"
GOPATH="${S}/_dist"
PATCHES=(
"${FILESDIR}"/${P}-handle-regression-in-lxd_combined.tar.gz-handling.patch
)
src_prepare() {
export GOPATH="${S}/_dist"
default
sed -i \
-e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/lxd:g" \
-e "s:make:make ${MAKEOPTS}:g" \
Makefile || die
# Fix hardcoded ovmf file path, see bug 763180
sed -i \
-e "s:/usr/share/OVMF:/usr/share/edk2-ovmf:g" \
-e "s:OVMF_VARS.ms.fd:OVMF_VARS.fd:g" \
doc/environment.md \
lxd/apparmor/instance.go \
lxd/apparmor/instance_qemu.go \
lxd/instance/drivers/driver_qemu.go || die "Failed to fix hardcoded ovmf paths."
# Fix hardcoded virtfs-proxy-helper file path, see bug 798924
sed -i \
-e "s:/usr/lib/qemu/virtfs-proxy-helper:/usr/libexec/virtfs-proxy-helper:g" \
lxd/device/device_utils_disk.go || die "Failed to fix virtfs-proxy-helper path."
cp "${FILESDIR}"/lxd-4.0.9-r1.service "${T}"/lxd.service || die
if use apparmor; then
sed -i \
'/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \
"${T}"/lxd.service || die
fi
# Disable -Werror's from go modules.
find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die
}
src_configure() { :; }
src_compile() {
export GOPATH="${S}/_dist"
export CGO_LDFLAGS_ALLOW="-Wl,-z,now"
for k in fuidshift lxd-benchmark lxc lxc-to-lxd; do
go install -v -x "${S}/${k}" || die "failed compiling ${k}"
done
go install -v -x -tags libsqlite3 "${S}"/lxd || die "Failed to build the daemon"
# Needs to be built statically
CGO_ENABLED=0 go install -v -tags netgo "${S}"/lxd-migrate
CGO_ENABLED=0 go install -v -tags agent,netgo "${S}"/lxd-agent
use nls && emake build-mo
}
src_test() {
emake check
}
src_install() {
export GOPATH="${S}/_dist"
local bindir="_dist/bin"
dosbin ${bindir}/lxd
for l in fuidshift lxd-agent lxd-benchmark lxd-migrate lxc lxc-to-lxd; do
dobin ${bindir}/${l}
done
newbashcomp scripts/bash/lxd-client lxc
newconfd "${FILESDIR}"/lxd-4.0.0.confd lxd
newinitd "${FILESDIR}"/lxd-5.0.2-r1.initd lxd
systemd_dounit "${T}"/lxd.service
systemd_newunit "${FILESDIR}"/lxd-containers-4.0.0.service lxd-containers.service
systemd_newunit "${FILESDIR}"/lxd-4.0.0.socket lxd.socket
dodoc AUTHORS
dodoc -r doc/*
use nls && domo po/*.mo
}
pkg_postinst() {
elog
elog "Consult https://wiki.gentoo.org/wiki/LXD for more information,"
elog "including a Quick Start."
elog "For virtual machine support, see:"
elog "https://wiki.gentoo.org/wiki/LXD#Virtual_machines"
elog
elog "Please run 'lxc-checkconfig' to see all optional kernel features."
elog
optfeature "virtual machine support" app-emulation/qemu[spice,usbredir,virtfs]
optfeature "btrfs storage backend" sys-fs/btrfs-progs
optfeature "ipv6 support" net-dns/dnsmasq[ipv6]
optfeature "full lxd-migrate support"
optfeature "lvm2 storage backend" sys-fs/lvm2
optfeature "zfs storage backend" sys-fs/zfs
elog
elog "Be sure to add your local user to the lxd group."
}

@ -13,10 +13,6 @@
<email>virtualization@gentoo.org</email>
<name>Gentoo Virtualization Project</name>
</maintainer>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<longdescription>
LXD is a modern, secure and powerful system container and virtual machine manager.

Binary file not shown.

@ -1,6 +1,5 @@
AUX use-printf-in-Makefile.patch 1439 BLAKE2B 829b93431a8dddd957ef2deef60dfd3ff13fc2a0faab5c5327cea2f53ccc1bcc0e805166de93d2de8a52e8c344bdab64dae5671f238b49ecedebb657afca0823 SHA512 8207e9eb534fed58712b805df0e90bcf8406fe1c2907f91cd54500babcc49d0a72dc1d039d9fdb8077967058aaafb6c37336c1b0fcd041edfb3c4604c7cea4c2
DIST eid-mw-5.1.11.tar.gz 15368318 BLAKE2B 34a49084bf5e1fb62b7975b14b8300c3400f0c1aeec8a9a01122097b0a3d8245974c7a9c5d9c6d91a419c796a56954b945ec838699fe9d7623f102523c4e0f67 SHA512 7f286a6ff14e62652ec36b68121639bcaa55cf50364da5d11aed4c9f13a2d7813d2b69c13a3335ece6ed0660ca67a8dd1724d3498d8bae03f144d268cefb731d
EBUILD eid-mw-5.1.11-r1.ebuild 3043 BLAKE2B 98365a45529fdbed3e5c325d35d39abfe0141d91bd5f80cc8a0b9d238647bf10c112ed6bec3ca7e3cef2d98cb69a9bc106321c9fe10b02c65d21a214e756d1e7 SHA512 ce27418a393f60f57b3bd19118bf9f896ab82e479915405a1bd927bddbe26d2182686314099774a84130a16b18519764dd9943db0bc2f9b71515b3f001b116a3
EBUILD eid-mw-5.1.11.ebuild 3038 BLAKE2B 462d0ced9d2d6344dd05cf481fde89f57a7063000d23b8aa768e9dc152715be3d986febbfcffc59d98a083458998ced76f8d06d8be904eccaa67740a81b10d69 SHA512 01b75fd439e83b93376f9e754d74d80a967d1c75bd7833309244a4b0a18f3e9e24428da1bac38499319591cccdb34780d0ba789da3dec669f6ac0e947238cc89
EBUILD eid-mw-9999.ebuild 2683 BLAKE2B 4e81ded2f335881fcac6d623dc869a19eb547f5e93b86f6a1caf4c96108dca4515eb0733d91ad6e2e31cdb770f331258444d4eb78ff8e24bdf3f01c0f1bf03a6 SHA512 b81f00e540056c1c4f2f7345cacd4f9f6b4480a6c69ff993e4c83e94f3ae3c6bc63c5e3569a49b1f146b084f8bb9432b861ffe351f953ee258468b7271239d72
MISC metadata.xml 1447 BLAKE2B bf97d239f8d44f8a3bd31e35868335a6286a8ded9d6904a919a5a69eb89a61173aca5eb988455df2ca201e0d687e932a84ff8ed7012a3f9ca3e1eda0627ae9ec SHA512 6c27500bb1dd72027a540745e3916c41af548c1cd277fad02f975dd6431a22a9083bc0a7cdd00d316e2c7a536be0ac484f9b47bebb53121b7647da8699321838

@ -1,124 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools desktop gnome2-utils
DESCRIPTION="Electronic Identity Card middleware supplied by the Belgian Federal Government"
HOMEPAGE="https://eid.belgium.be"
SRC_URI="https://codeload.github.com/fedict/${PN}/tar.gz/v${PV} -> ${P}.tar.gz"
LICENSE="LGPL-3"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
IUSE="+dialogs +gtk p11-kit"
RDEPEND=">=sys-apps/pcsc-lite-1.2.9
gtk? (
x11-libs/gdk-pixbuf[jpeg]
x11-libs/gtk+:3
dev-libs/libxml2
net-misc/curl[ssl]
net-libs/libproxy
>=app-crypt/pinentry-1.1.0-r4[gtk]
)
p11-kit? ( app-crypt/p11-kit )"
DEPEND="${RDEPEND}
virtual/pkgconfig"
REQUIRED_USE="dialogs? ( gtk )"
src_prepare() {
default
# Buggy internal versioning when autoreconf a tarball release.
# Weird numbering is required otherwise we get a seg fault in
# about-eid-mw program.
echo "${PV}-v${PV}" > .version
# See bug #862306
sed -i \
-e 's:PACKAGE_VERSION:MAINVERSION:' \
cardcomm/pkcs11/src/libbeidpkcs11.pc.in || die
# xpi module : we don't want it anymore
sed -i -e '/SUBDIRS/ s:plugins_tools/xpi ::' Makefile.am || die
sed -i -e '/plugins_tools\/xpi/ d' configure.ac || die
# hardcoded lsb_info
sed -i \
-e "s:get_lsb_info('i'):strdup(_(\"Gentoo\")):" \
-e "s:get_lsb_info('r'):strdup(_(\"n/a\")):" \
-e "s:get_lsb_info('c'):strdup(_(\"n/a\")):" \
plugins_tools/aboutmw/gtk/about-main.c || die
# Fix libdir for manifestdir
sed -i \
-e "/pkcs11_manifestdir/ s:prefix)/lib:libdir):" \
-e "/managed_storage_manifestdir/ s:prefix)/lib:libdir):" \
cardcomm/pkcs11/src/Makefile.am || die
# See bug #732994
sed -i \
-e '/LDFLAGS="/ s:$CPPFLAGS:$LDFLAGS:' \
configure.ac || die
# See bug #751472
eapply "${FILESDIR}/use-printf-in-Makefile.patch"
# See bug #811270 (remove uml build)
sed -i \
-e 's:cardlayer/uml::' \
cardcomm/pkcs11/src/Makefile.am || die
sed -i \
-e 's:uml::' \
plugins_tools/eid-viewer/Makefile.am || die
eautoreconf
}
src_configure() {
econf \
$(use_enable dialogs) \
$(use_enable p11-kit p11kit) \
$(use_with gtk gtkvers 'detect') \
--with-gnu-ld \
--disable-static
}
src_install() {
default
rm -r "${ED}"/usr/$(get_libdir)/*.la || die
if use gtk; then
domenu plugins_tools/eid-viewer/eid-viewer.desktop
doicon plugins_tools/eid-viewer/gtk/eid-viewer.png
fi
}
pkg_postinst() {
if use gtk; then
gnome2_schemas_update
xdg_desktop_database_update
xdg_icon_cache_update
local peimpl=$(eselect --brief --colour=no pinentry show)
case "${peimpl}" in
*gnome*|*qt*) ;;
*) ewarn "The pinentry front-end currently selected is not supported by eid-mw."
ewarn "You may be prompted for your pin code in an inaccessible shell!!"
ewarn "Please select pinentry-gnome3 as default pinentry provider:"
ewarn " # eselect pinentry set pinentry-gnome3"
;;
esac
fi
}
pkg_postrm() {
if use gtk; then
gnome2_schemas_update
xdg_desktop_database_update
xdg_icon_cache_update
fi
}

@ -1,5 +1,5 @@
DIST libsecret-0.20.5.tar.xz 187340 BLAKE2B cde5094eaaf54f251c19afb015c39cc88435dafe6ee682ca8f9d1917dd5b3dc8cc1609cdbf2a3a42d2592c2a149bec5fe28b2f4ec179b92c0d0f07d2f14c1792 SHA512 61ca248aafd265e1f31d56c9084c68d880ebf03660ace3d4a6c6622ab306b56e921ac24647b6a60633bfa99c8a0407d4ae1aa6148511f289bf5ce2025b72692a
DIST libsecret-0.21.0.tar.xz 190320 BLAKE2B 0775f1b80eea303793aa9c1e940e0cb47ada4cee10ebae947a7e17d5a749736a3219a7edf937693b32df5505c2dd96bffc523b4cfcb41c6a7f12cea0b43449b3 SHA512 666a67f3f06274ab57e1b6e3e855033ce244ab45b9b237851fc06f33ef7922179b5bcbe96a5dc50d1136cbb8d74c2d0af0af4d0ae9de918b4a63b36abb1f2b97
DIST libsecret-0.21.1.tar.xz 190796 BLAKE2B 862c2aac0c519d2607c1c5b057d1e0d00d3d5bce06744ab8c6e074393ede2f154af9ab3ee988820c936c8c22dba205ee7bd570287aaa47e64fde21ae3a7dfc2b SHA512 e201b2292280c355d08f8bd2d90d6d785d7b618c82e731eb9c051599a24d8f6a0cc3e271b1876d738f4a15aab24c2b6607b6d15d4335a990e74bb0371fe941ae
EBUILD libsecret-0.20.5-r3.ebuild 3715 BLAKE2B 1cbe434ad110a2c29946911bee0198eff501ef726ef910c6e60a12d08a05c9c2097d6ad1f843fe6d4cc03ebd5f477fe893133fb88eb98d9674573b53356c5a26 SHA512 730a7f7aa89427a06d238565b721d67bbcc1ba3b5cc1386b401cb96ed30b6a0ff0f305dd07c30a018fa80e4ab2340820daf3570f38a9f49bc7fcaa930d0ad258
EBUILD libsecret-0.21.0.ebuild 3741 BLAKE2B 48f6c42f1ab03d2ad4ac961f217d37f0aa21b202fe9a7062323bbfdd76f0f5bc45df6ee9e4af9f4b915f31741b21e74eb20783d650e42f4e1767686f0c939b5e SHA512 900fed4f31c8f1652e8c88262f87cf499111921a0fd657dd4bdc8733e78473ae063fb304f0bc7262d38bf36d8d498f15551d4ec5726ea9552a303ef35ec72a8b
EBUILD libsecret-0.21.1.ebuild 3741 BLAKE2B 48f6c42f1ab03d2ad4ac961f217d37f0aa21b202fe9a7062323bbfdd76f0f5bc45df6ee9e4af9f4b915f31741b21e74eb20783d650e42f4e1767686f0c939b5e SHA512 900fed4f31c8f1652e8c88262f87cf499111921a0fd657dd4bdc8733e78473ae063fb304f0bc7262d38bf36d8d498f15551d4ec5726ea9552a303ef35ec72a8b
MISC metadata.xml 468 BLAKE2B 21e70edb5acfc8b52a7d10f0c9e9452b04d8124b3d52bb7f816019cc2cf6f50275c7cb19c8853aec0c5fb2a6c93d56dfed3f4e5b8c41e9b2c08c2eff5efc5206 SHA512 7cc80dd7bbef252a09524ad511e12e621fdceca3482411f605e4c8aabb66e473c10e6a2b446df866644a4749b58dd3bb6f83cf118ff9949e17ca4a427a3ce3de

@ -4,6 +4,6 @@ AUX xca-2.4.0-man-page.patch 903 BLAKE2B f734d19e252d0cfb566f4a309359d088701dce6
DIST xca-2.4.0.tar.gz 1778572 BLAKE2B 2e90ef264dc53019cc37700b37d5eb0c48904ca371ae1ce0cfe2ad61be8765951ea918d356c1f2764e73d846693a66c903cba1381df5d1a588aae8bb45f8c195 SHA512 e93e2cf9dc48ed43ee9b51e977f825d81ff08835eb4d77fcbe8f9dc8ce31c77c1da879b48c25ab535717542d1fe84faa6e46c410c116edbee02072040c59667c
DIST xca-2.4.0_p20230526.tar.gz 1818483 BLAKE2B bac990117d1d6a4f80d4ad2317653d8817c7d97e3ea4e92e6fcb6a1531eb782ead4a0504748107697be6e98816e89f33f43de1a8073394e4ead39c16dee3987e SHA512 1252a8230149b04c98dab6ec5fc7f424b6eb1552553831e1c53690fa55ce919537d20741dd9f0e9ac7495d3f80503d2b6b5f0c9322912226363e2b5feb66e416
EBUILD xca-2.4.0-r2.ebuild 1487 BLAKE2B fc8d68924c448f477ed4f710694f22d14372b7a772363106b71518b83131ecca86a52ad85218df5a4423430650c00aa9b772cc4e30ee3d43722a2524b9e67d30 SHA512 b99486bb383151d57910b427d4344804337c2cbdc76d5702a7c157d0b20d4ff7e88a6e2f25496d8ca0f370977d301e78e3e4ae408ff7fec774812b915447cdf6
EBUILD xca-2.4.0_p20230526-r1.ebuild 1625 BLAKE2B e90dafe52e32bff48c5fd81972e7a804d43a577d6c06ccbcc1153a3259339c7257b7cb8c45fce35e85f58444a543ff91f19ab068e3b9c392d7d139638a9bd018 SHA512 64eea7ec88cbe97c22d02fc5b8e99e4062014930c2dee675cf6c0d8aa9be260e9734ab0a79755d08b720754081f10fed9c2cf92512eb4d4f42ba8363560f2c0e
EBUILD xca-2.4.0_p20230526-r1.ebuild 1718 BLAKE2B 5ee85a2238c708be0a9ed43ec589dae2e9d9f75d1d603a3d4c67c47fba6470245e540026a9d9fd6de57e5e07e4e2bcf5818a43cff0c12704801bca43e1472063 SHA512 aaede37a7b63ae1a69149ca1372a63ec50c76e440020619133526a36989e9695f726787b9ec196dc88da3beb41febfcb5dfce1f426236d8fcc6f67db3af69bd4
EBUILD xca-2.4.0_p20230526.ebuild 1585 BLAKE2B 87f26f1edee7a55fb4d2fd3c787c965da396b98dd3b81e213a2fcf0c9457f82b9349d9ebaf0c51376c80b329f3791688f541b501b75fee9143b81afe681a7fdc SHA512 836315aa907758a99ec9b2ee4fd8ff760df2ef197f4a920508888a0efbe23a18b1ea07f9e4ee0e0d780c476ea3e35ad074eb1ceed044e46a859fce62d91ce7a0
MISC metadata.xml 304 BLAKE2B f99e5a2ed991066c1c605ca7bba6669b362e90a96e5a26258caf8d6491f8c5351cc897826bd06dda28ac67cc3813b0fa640b8fe304aeea7ea10b75fa3074d340 SHA512 b8d54115ab45ecc869066e083938a28d075f4436fef33607685e633976843023b3fe4fb65456ba04532f38c4f35b7dc109f68c59c11ad4e73f2332786fee6cf5

@ -27,7 +27,7 @@ RDEPEND="
dev-libs/openssl:*
doc? ( app-text/linuxdoc-tools )"
DEPEND="${RDEPEND}"
BDEPEND="dev-qt/linguist-tools:5"
BDEPEND="dev-qt/linguist-tools:5 doc? ( dev-python/sphinx dev-python/sphinxcontrib-htmlhelp dev-python/sphinxcontrib-qthelp )"
PATCHES=(
"${FILESDIR}/${PN}-1.0.0-desktop.patch"

Binary file not shown.

@ -1,6 +1,6 @@
AUX eblook-1.6.1-clang-16-buildfix.patch 289 BLAKE2B e0b87aaa1563d387cf2f551ce7e1aa3d486de0404fba1e30563c82b5b383d6516513bed341301caf09db87eb86a18c08f3b931613f3699fbd2cb8d0734faabe7 SHA512 b7c45b0416f1d0b231ef9f6b6d2cafe190fe50591e756cd3429c2bc55174698ca3823109765157cc3f2d7573d9d4af53dbf7ad253c3c9a0b8aaa9c55bd4ffff7
DIST eblook-1.6.1.tar.gz 440727 BLAKE2B 313dcc89fea9dbc8dac8c9fda618cf4e39d0cfef4f67ba7cf2ab29e3b1c8dc0559407c1f1c68c9994594b784acb445c6fe988456e14da324bd38c89de23f3ffe SHA512 36f4f383a53a0332a2dec0e40d2743c93d35c9f51a7de2d2706bbc18a4fde215d4e345feb175bebf428c1760cb32e73148fb9b336fcde8c0d8b924ee6ecfd6a4
DIST eblook_1.6.1-16.debian.tar.xz 92044 BLAKE2B 9a6b19541c910694b0b079cfb4bcb9ae38f4505e25a08f4c17dd7af6cf04a1b5e9a33aadbda7a4c5a8509699b0a5efe4eb5962b6cdd6f63a82105bacad5231a7 SHA512 538956ac54cedae76563bcbc6c8ac7f97be4cdc2d9cc506fc14444dc3a7c9631040a1becf259c1f465b4e875333ffb43d6af5c8102b9fc8b862b7567cafc8d83
EBUILD eblook-1.6.1_p16-r1.ebuild 780 BLAKE2B 96db8fd891084d226aa9c70262c9e62ad0ba3717f3b5ae94da3232bbdc9daea0a34a385238b3bb296ad7a2c38b209d96a6567abf5adbfa892b3bb6b502e0f89a SHA512 41ecf81e3d65a4c4a6387d2311e6d4311b142b4e5a8d0256da6e28b1a0b7c12e10db469118385ade68fa8d7e98d6983302c3ca25e16d44fc5e7ad4931f96a605
EBUILD eblook-1.6.1_p16-r1.ebuild 779 BLAKE2B 48707e48a581eff0bff6c812f3721c7dcd7d274e66d8ffb328383873dacc8a5d77d6234a2424ec5d2ad69531b79dfaf55d3e966776708a8a2f251d2196ef556f SHA512 8c4c5724c6be86c749eabc1f1566678d94f8450ed2fc4b13cf638fb04bf23ec06aae426d31d460290fe1433fd551149dd74ca5d012cee69368ef5d8430a123ee
EBUILD eblook-1.6.1_p16.ebuild 727 BLAKE2B 1d9ad393a17a15c7b58a5c8e8aa34a211ea20e35e69681a817947e211a09bab6cd3bae57f568730e81f35adccf3832b36eb93c54595da1ae603191a94448c4df SHA512 9727896c78c114b8bc572013a44d03e7131b3881dd71b4e12fe2aed81199c5e0a16b60fcbfaf52d193e31dd8ed7720622abf163addb2e1e068b251590a18d933
MISC metadata.xml 167 BLAKE2B 868e3b584722eaacf68273db062bb773d8c7e5d7ab2b81ca7e8397643bf7cc106c3a1033594401c99c54f667bb45d6b73f9048fc335580bbd44b4589ad26a832 SHA512 30caadd1496c3b9969136038239a1d8e01f236726b4022c2d7e19ca7575f25f735e556835e581afbf44fbd3e4104c40f2b5ef5fa70118d75c881fdf871962d0a

@ -13,7 +13,7 @@ S="${WORKDIR}"/${PN}-$(ver_cut 1-3)
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~riscv ~x86"
KEYWORDS="~amd64 ~ppc ~riscv x86"
DEPEND=">=dev-libs/eb-3.3.4"
RDEPEND="${DEPEND}"

@ -1,3 +1,3 @@
DIST prime-dict-1.0.0.tar.gz 6756593 BLAKE2B 7348e7a46dcf5a6d15ec2c5e09c4d89e724d912071a11b48b52f9e6cff62c0c52b7736da322a69ed6662e03c4b987702691174d48331e4ed692887d72b9169c0 SHA512 0cad16048baeeca982feaa3e95f7afaabaa94f511e1e80ad332cf106ea39e226f3119bcdc9636010cb5d5e0aef10dec0b8fc4d42b743e32c51971cb45e85dabf
EBUILD prime-dict-1.0.0-r3.ebuild 612 BLAKE2B f827b26a7a3a7a185b2dbe2dcb2d1000ced44950f855efe1654d359f032d88cfa2822750e4d0a032c197b8fcddbd2f484bec656975d309d9dfb802d1e2a54db0 SHA512 a5f4ee2f92b6057765d9dc9a41983a9253f2615a78133bc89ff44791ff48bada39247732b98cd63a47cb09b448cc9d1352086e339d7ae462593fa00f815c6b80
EBUILD prime-dict-1.0.0-r3.ebuild 591 BLAKE2B 8597cd7de880d7fe2ad1375b6f64c4ebcdc610120d01c18b2a9edf27a34083f1075787b72a28af60aedf7f53cf3e417a30f30857d2bea0eb32f9c8f49b1d1b49 SHA512 839521a6be3157d6209cd85e7002aaec202e4b63d4f2737e5676bedccee64a7b581e2e39b3bf3c26f1ab7d94d558226376bd228812faf9a754e9e02b5de45413
MISC metadata.xml 303 BLAKE2B aa9403e520f342c3b1d201774052f18788cb2dd8bb9a287b1717fdc28a1df579ef3c07dffca94c7a4605d1fa3f003750433a6c04e217e6e3716bc73ddcce6b39 SHA512 eaebb0b33ce5eedebb9888ed2aed8ab8dae29a136298ef0c3a3b6c74e65dd99cec2afa5e8b9759b4112911e5d92a34d8f755ad79cd04103d280aec360a56904a

@ -1,8 +1,8 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
USE_RUBY="ruby25 ruby26 ruby27 ruby30"
USE_RUBY="ruby31"
inherit ruby-ng

@ -2,5 +2,5 @@ AUX ydpdict-1.0.3-clang16-build-fix.patch 246 BLAKE2B 0eac87877bf119dd0252e8b1a7
AUX ydpdict-1.0.3-tinfo.patch 322 BLAKE2B bfde4da1cb49749e8023f7c8ce56dad45b9ee39e974eb59df41e40a4770debdc8f47f4ae03bba41739bdbfbde5ba90315f454e3fa8f5cf8cee668ffbb109e0d5 SHA512 70e0b4b528dabcf9889eaff2909e11a8481ece94ff50d90c7c53e1b5f655f3954bbf694446ee3cf4fa2ac21b1c329d627412337f17da2e8a0a1ba73a45304857
DIST ydpdict-1.0.3.tar.gz 185721 BLAKE2B 1db80dc20dd6d71c4b7fed2051bbfae1021fd1ea15ca1f993e8e095912fbcc8d599d8f480143d185fd11c6a1414d7f29ae67a9f5cffda624b434d198cddc5c68 SHA512 ca50c485f10aa4c4691a27a474a5ae814be3bb183b4927728f14de67af1e11a281e5272fc5777d6573e69dd00d3da2223b78d729132764338c92489f20eb17e8
EBUILD ydpdict-1.0.3-r1.ebuild 1128 BLAKE2B 123b72f70e9486fcff45df65503d9550616eb0354059b7c8ba035d78fd3ae76e53b2c1fe691e0e462d2feb8261a10e3946434fbe0805c37e0fbd874ec87e4122 SHA512 bc02d02d05550878549fbd1e795c5e4d7ba76058ad160f46aea5dba3b7b6b462e6dc6f6525b5da27a75e16ae9113a1d08b4f0dd05fb2ea72ba16e34b7fe66e46
EBUILD ydpdict-1.0.3-r2.ebuild 1181 BLAKE2B 833992dad602e5b7f330e462eaf0e341dfd9e330e260849f9c3dcbae6c67f4bcab3c995cada0ae3f60148e5646c6dcccfb9ea3653b17981ccdfd947577159a9c SHA512 e6c04c55dd22ca2662713fd17061259bab08e525f3658bab14527804deca9fb5ca681ce8bacb62e2b2910c0517408da6e32d029fa0ed9fbc8b3fc3d4d6c72f20
EBUILD ydpdict-1.0.3-r2.ebuild 1179 BLAKE2B 5d1a0522b863faa6f48110e8d7b832ce6d2e763732053e9d8dbd691bc1cca1e9fb97bfd7d2bc2f6d5ba8fc1f34364529b6120716451e08b5a09a5487435424f9 SHA512 e4d31360db38b968743934233c3404f382485992ec6a7de7b6e9906b06493e2de72619970dd4fd435622dbd9f4c5811c8da424af09c8bee28b1735515731b2f3
MISC metadata.xml 249 BLAKE2B 7da21f257854aaa71c2ffdb3f700dddf6b4c5aafd3fbb923100c263e210a647d7c0ddf48cfe2bcd9801a594d4fbf73df5ef095a3ca4c786cce6f95560e8964b8 SHA512 afa1ecf431f11a622e8fcabefbd0fb26086fab18df5a9b75064e42429e02cbaf00e729df4ec82f6e34c1a98bb58f25e20fd9fdce2cc072aa8d4b418b1730f153

@ -10,7 +10,7 @@ SRC_URI="https://github.com/wojtekka/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~riscv ~x86"
KEYWORDS="amd64 ~riscv x86"
IUSE="ao"
RDEPEND="

Binary file not shown.

@ -2,9 +2,14 @@ AUX doxygen-1.9.1-do_not_force_libcxx.patch 670 BLAKE2B e618f7acba8e4c7910b8f560
AUX doxygen-1.9.1-ignore-bad-encoding.patch 1016 BLAKE2B 453e13ba115fe7108b0f319b45ad6c3f66c937a2a133eb9c76d38455f71cbbc1ee830e5e632ce36ab2a2906a67b1c676d60c02d0696a9da75862ea4197e209b1 SHA512 71cc9c54bc40f6719c64874e2bd9355cda47c87affec7f3e551fae06cb27bd9c569bffec03d2594c2f1a0190c6975123270fb446c62d8c1fac4c2834c7adaf80
AUX doxygen-1.9.4-link_with_pthread.patch 1116 BLAKE2B 864adde5d9c0c852dba8fdaee9021f16e7e119a660d5d8657f320686c0d86c29b5695f367c2af2846e9861bca5a70889b6dd56a9734485527ae504a134e30594 SHA512 f9a1089585f83a09b89c813f51bbb7914fb27be2b3e554148387fd322c88153c2aca1af4215d90b6f2fc9eae25814085fb468f0ef2dacfa092662a4609d52929
AUX doxygen-1.9.7-musl-1.2.4.patch 1126 BLAKE2B 050fa56a7786c557ce03c9275e152f2b2d2285209f8ea9aed5019c96c2e545ce46208f783092addfcd8ae00b0ed257d4f588ae4036b65752087901d616cc4979 SHA512 eb89ca38cee0431528240c9b354adeef5e2c3ed89db762e7e12e12fa17ca596752b9da0cb75fb9d09dcfbecc302a7e63f811b8fb2f43baf3b4d2230f259ad96f
AUX doxygen-1.9.8-spdlog-link.patch 1571 BLAKE2B 954d701bdcbabf8b9ebb52d4be6a947189661a55cbab72b7651fb956b53778a968c6c88fb2b3967a8bfa5f0951e9fe046e69a8567938a8243558af807d657714 SHA512 7d3d4363313ace1823b4570c94fcd2f8099f6f7ec42d45f4fd341df9071fb9807e03fe5094a12c8fcf86ca8da06aa681ac0b8e1e0bec70fe2555f70cf39c5b8f
AUX doxygen-1.9.8-suppress-unused-option-libcxx.patch 828 BLAKE2B db41297d3ad3fca9dc5097871185f98c965ccda7e22f8c31e0b9a69fc83c90dfd32125371cb3e42ebb6b0867cc9746b03ef656861aea14dc8d17e1e7ea09780f SHA512 6c6599ddf35720abb3872fed3a82e8796edc4e6623f9e5b3930e600772c6346bab776074fc8edb20d6d9ac7c21d6c0cb86b12295c9b7649322b876bc6737065d
AUX doxygen-1.9.8-unbundle-sqlite.patch 4510 BLAKE2B afd24516a20c4378a611c836bc51276528a3983ef21db7a036d53e910b8627f5800b871d2cd13c14fc36e04eebee8bca31c40819c9b4051b1007a3ad799351d0 SHA512 548a3e550bc552007116a9bf500e1cf953b23488e825ac2ee55ef90ae001c189e5a85f84b9957c5670be7d83166a5e8df266c6a96f8b195199d45c264b67e846
DIST doxygen-1.9.6.src.tar.gz 5293513 BLAKE2B 35d3286b47922776814bb7941c7a1cb27a5a50be35a9f231b1f072333d966630bbf0b97813f56711f71f040a0ceb87e7e1cbee04ca2aa3f035754ba844561697 SHA512 f8b0d19d33fa8a5bb92b38f1c775bd3cde7f024566cf93ed61ab0cafe86643971c04b7f2492364767b3e6ce5b518bad5e0321c82f0a72875ccf936ea7d3595b2
DIST doxygen-1.9.7.src.tar.gz 5736446 BLAKE2B e0f6e06399a2dda7226fe8fea351a79f19bf71aee51fba0ce113c3423b85aa633ce8d98894e3e49027839c2accc18af87c7f23a1fd37c0de441de42a8a76d307 SHA512 618ff58aa6f0a2eb89f95b570995ea3ebbcda64f502cabcecd9be2967abffb56d0d6747de0c06df422705919757e6af9c6e5a56ca603b1ddf7a09a7ee79b1803
DIST doxygen-1.9.8.src.tar.gz 8087770 BLAKE2B 9b93bd394e9fdafef1c274596f790db0956028332a945e0359b7b24440aefa5362b2126649c529e71341bba172cd1fa514455567ffffd37243a740a1ffbc1944 SHA512 edcd382538ecf0afd9d1c891afe302092cd541a30840dda6b00dc0f1d6c5b39a696ab98042c5bb4012c1c051609bfdbfa7d29e3098a72f6cb504d90097767ebb
EBUILD doxygen-1.9.6.ebuild 3238 BLAKE2B aa62cf5aed097af9c3cb92e90f66b79de95c65df3dc89de8236e918daf0ecacf6efee9598d54c85ee71118599168e05782ca84e2e9ac7ec1a9fe68737c32efc4 SHA512 7a2d7d684f873024380e5b1bf5fa3399928feb8dd3eb1ad6af16cc1309706042c4fab818560948fa6c4c0e5d649dc528369693808674d87c8656563eee2c4e14
EBUILD doxygen-1.9.7-r1.ebuild 3380 BLAKE2B 8f79b57f0033ba8de81fdec1d2a5ad03a81422b2ab377deadd72ef666662fe2ee1fbba8c9152f74c73a23890ac7bbdaa71219c13699a1db3eb7505a417793157 SHA512 92068fac911aa1a7ee91b86a1f365a5a1fa4293826816731eb2658fc45a4cac87817d5c6763bc71c003a19e3a73cc4a818e8c3d791f40b2dbc1de9417ec8c426
EBUILD doxygen-9999.ebuild 3361 BLAKE2B bdc1104f3438041f84269672489c1faf58a774318e02dbe18f9e97cd33a47622d39e59d32974cae335a963e4ac1abbb3db175aab81f59f3b3f05c6fcede0e927 SHA512 1cba9cfc94fbd5c89ac3f8b6dd55037e2793efa4994008a4520e6a475e099e1ba20edf3baa631868cd6a661fa56cd1e33d99fad621aa36a77d182a7f80bc8236
EBUILD doxygen-1.9.8.ebuild 3564 BLAKE2B 8f750b59320a32d8bd924fa1743e4995b0f9c78f519ee3d934cc9a4b23cad3d90dfedae56ee48631e6604c38a320909ff275ec01742305081dff79161e66689d SHA512 e871256ca9fd4b026591caa627c0ef693e4da15bfa55acb1d6c154c4597f22286787aa9e3c48680568b2e95e650e227bc2fbbffab8c13705c0b647761d889fb1
EBUILD doxygen-9999.ebuild 3484 BLAKE2B 8a195c402f0236265d68d5585852588525c74ced6946e3f756d82c5dbd97df425a41f7370a419f96e5d5c467d6f96d916c8c2d37bb96569d0766e061c9992363 SHA512 6a93d2da5a7e3e659c2be0bd81f8e947b1d244680a7ec8b26a93da1c34152130471e1532a00e23c5f96055f5db19648718650b9103b9aef253b395b9cd704836
MISC metadata.xml 1024 BLAKE2B 884363174e8a83eecb926c962185d1f1cc3263ed216b26e149035b47b424b5baf1da222805f5ed04f25b4e97f12c79cface7bd6ce59ca9d37388c696a9a13117 SHA512 12c91be3f02f1ef99db00a48f2dd252f4bab85078f308c921a1a07062d971090f8dd39480b5b72e2bb21f8e2df69bc10c7828c1c91f2f83ce64be50a233eef15

@ -0,0 +1,157 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LLVM_MAX_SLOT=17
PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="xml(+)"
inherit cmake flag-o-matic llvm python-any-r1
DESCRIPTION="Documentation system for most programming languages"
HOMEPAGE="https://www.doxygen.nl/"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/doxygen/doxygen.git"
else
SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz"
SRC_URI+=" mirror://sourceforge/doxygen/rel-${PV}/${P}.src.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
fi
# GPL-2 also for bundled libmscgen
LICENSE="GPL-2"
SLOT="0"
IUSE="clang debug doc dot doxysearch gui sqlite test"
# - We need TeX for tests, bug #765472
# - We keep the odd construct of noop USE=test because of
# the special relationship b/t RESTRICT & USE for tests.
# Also, it's a hint which avoids tests being silently skipped during arch testing.
REQUIRED_USE="test? ( doc )"
RESTRICT="!test? ( test )"
BDEPEND="
sys-devel/bison
sys-devel/flex
${PYTHON_DEPS}
"
RDEPEND="
app-text/ghostscript-gpl
dev-db/sqlite:3
dev-lang/perl
dev-libs/libfmt:=
dev-libs/spdlog:=
media-libs/libpng:=
virtual/libiconv
clang? (
<sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
)
dot? (
media-gfx/graphviz
media-libs/freetype
)
doc? (
dev-texlive/texlive-bibtexextra
dev-texlive/texlive-fontsextra
dev-texlive/texlive-fontutils
dev-texlive/texlive-latex
dev-texlive/texlive-latexextra
dev-texlive/texlive-plaingeneric
)
doxysearch? ( dev-libs/xapian:= )
gui? (
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
dev-qt/qtxml:5
)
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${PN}-1.9.4-link_with_pthread.patch"
"${FILESDIR}/${PN}-1.9.7-musl-1.2.4.patch"
"${FILESDIR}/${PN}-1.9.8-suppress-unused-option-libcxx.patch"
# Backports
"${FILESDIR}/${P}-spdlog-link.patch"
"${FILESDIR}/${P}-unbundle-sqlite.patch"
)
DOCS=( LANGUAGE.HOWTO README.md )
pkg_setup() {
use clang && llvm_pkg_setup
python-any-r1_pkg_setup
}
src_prepare() {
cmake_src_prepare
# Call dot with -Teps instead of -Tps for EPS generation - bug #282150
sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die
# fix pdf doc
sed -i.orig -e "s:g_kowal:g kowal:" \
doc/maintainers.txt || die
if is-flagq "-O3" ; then
ewarn
ewarn "Compiling with -O3 is known to produce incorrectly"
ewarn "optimized code which breaks doxygen."
ewarn
elog
elog "Continuing with -O2 instead ..."
elog
replace-flags "-O3" "-O2"
fi
}
src_configure() {
# -Wodr warnings, see bug #854357 and https://github.com/doxygen/doxygen/issues/9287
filter-lto
local mycmakeargs=(
-Duse_libclang=$(usex clang)
# Let the user choose instead, see also bug #822615
-Duse_libc++=OFF
-Dbuild_doc=$(usex doc)
-Dbuild_search=$(usex doxysearch)
-Dbuild_wizard=$(usex gui)
-Duse_sys_spdlog=ON
-Duse_sys_sqlite3=ON
-DBUILD_SHARED_LIBS=OFF
-DGIT_EXECUTABLE="false"
)
use doc && mycmakeargs+=(
-DDOC_INSTALL_DIR="share/doc/${P}"
)
cmake_src_configure
}
src_compile() {
cmake_src_compile
if use doc; then
export VARTEXFONTS="${T}/fonts" # bug #564944
if ! use dot; then
sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \
{testing/Doxyfile,doc/Doxyfile} \
|| die "disabling dot failed"
fi
# -j1 for bug #770070
cmake_src_compile docs -j1
fi
}
src_install() {
cmake_src_install
doman doc/*.1
}

@ -3,43 +3,51 @@
EAPI=8
LLVM_MAX_SLOT=17
PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="xml(+)"
inherit cmake flag-o-matic llvm python-any-r1
if [[ ${PV} = *9999* ]]; then
DESCRIPTION="Documentation system for most programming languages"
HOMEPAGE="https://www.doxygen.nl/"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/doxygen/doxygen.git"
else
SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz"
SRC_URI+=" mirror://sourceforge/doxygen/rel-${PV}/${P}.src.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
fi
DESCRIPTION="Documentation system for most programming languages"
HOMEPAGE="https://www.doxygen.nl/"
# GPL-2 also for bundled libmscgen, MIT for bundled spdlog
LICENSE="GPL-2 MIT"
# GPL-2 also for bundled libmscgen
LICENSE="GPL-2"
SLOT="0"
IUSE="clang debug doc dot doxysearch qt5 sqlite test"
# We need TeX for tests, bug #765472
# We keep the odd construct of noop USE=test because of
# the special relationship b/t RESTRICT & USE for tests. Also, it's a hint
# which avoids tests being silently skipped during arch testing.
IUSE="clang debug doc dot doxysearch gui sqlite test"
# - We need TeX for tests, bug #765472
# - We keep the odd construct of noop USE=test because of
# the special relationship b/t RESTRICT & USE for tests.
# Also, it's a hint which avoids tests being silently skipped during arch testing.
REQUIRED_USE="test? ( doc )"
RESTRICT="!test? ( test )"
BDEPEND="sys-devel/bison
BDEPEND="
sys-devel/bison
sys-devel/flex
${PYTHON_DEPS}
"
RDEPEND="app-text/ghostscript-gpl
RDEPEND="
app-text/ghostscript-gpl
dev-db/sqlite:3
dev-lang/perl
dev-libs/libfmt:=
dev-libs/spdlog:=
media-libs/libpng:0=
media-libs/libpng:=
virtual/libiconv
clang? ( >=sys-devel/clang-10:= )
clang? (
<sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
)
dot? (
media-gfx/graphviz
media-libs/freetype
@ -53,7 +61,8 @@ RDEPEND="app-text/ghostscript-gpl
dev-texlive/texlive-plaingeneric
)
doxysearch? ( dev-libs/xapian:= )
qt5? (
gui? (
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
dev-qt/qtxml:5
@ -63,9 +72,10 @@ DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${PN}-1.9.4-link_with_pthread.patch"
"${FILESDIR}/${PN}-1.9.1-ignore-bad-encoding.patch"
"${FILESDIR}/${PN}-1.9.1-do_not_force_libcxx.patch"
"${FILESDIR}/${PN}-1.9.7-musl-1.2.4.patch"
"${FILESDIR}/${PN}-1.9.8-suppress-unused-option-libcxx.patch"
# Backports
)
DOCS=( LANGUAGE.HOWTO README.md )
@ -103,10 +113,13 @@ src_configure() {
local mycmakeargs=(
-Duse_libclang=$(usex clang)
# Let the user choose instead, see also bug #822615
-Duse_libc++=OFF
-Dbuild_doc=$(usex doc)
-Dbuild_search=$(usex doxysearch)
-Dbuild_wizard=$(usex qt5)
-Dbuild_wizard=$(usex gui)
-Duse_sys_spdlog=ON
-Duse_sys_sqlite3=ON
-DBUILD_SHARED_LIBS=OFF
-DGIT_EXECUTABLE="false"
)

@ -0,0 +1,51 @@
https://github.com/doxygen/doxygen/issues/10265
https://github.com/doxygen/doxygen/pull/10284
From 70bb112352ae7f3130647dcc009d8de5d4134e6d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D9=85=D9=87=D8=AF=D9=8A=20=D8=B4=D9=8A=D9=86=D9=88=D9=86?=
=?UTF-8?q?=20=28Mehdi=20Chinoune=29?= <mehdi.chinoune@hotmail.com>
Date: Mon, 4 Sep 2023 18:49:27 +0100
Subject: [PATCH 1/2] doxyapp: Fix linking to spdlog
---
addon/doxyapp/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/addon/doxyapp/CMakeLists.txt b/addon/doxyapp/CMakeLists.txt
index 4f3c31feacd..6097a3cca69 100644
--- a/addon/doxyapp/CMakeLists.txt
+++ b/addon/doxyapp/CMakeLists.txt
@@ -46,7 +46,7 @@ mscgen
doxygen_version
doxycfg
vhdlparser
-spdlog
+spdlog::spdlog
${ICONV_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
${SQLITE3_LIBRARIES}
From 71f2ed171a6d14a67f1905802714add974c31789 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D9=85=D9=87=D8=AF=D9=8A=20=D8=B4=D9=8A=D9=86=D9=88=D9=86?=
=?UTF-8?q?=20=28Mehdi=20Chinoune=29?= <mehdi.chinoune@hotmail.com>
Date: Mon, 4 Sep 2023 18:50:25 +0100
Subject: [PATCH 2/2] doxyparse: Fix linking to spdlog
---
addon/doxyparse/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/addon/doxyparse/CMakeLists.txt b/addon/doxyparse/CMakeLists.txt
index 24881e3ef12..0157afb45e2 100644
--- a/addon/doxyparse/CMakeLists.txt
+++ b/addon/doxyparse/CMakeLists.txt
@@ -35,7 +35,7 @@ mscgen
doxygen_version
doxycfg
vhdlparser
-spdlog
+spdlog::spdlog
${ICONV_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT}
${SQLITE3_LIBRARIES}

@ -0,0 +1,16 @@
Always expose the use_libc++ option. It's only useful for Clang but cmake.class
tries to find when we've used CMake options which are unused/unknown and this
triggers it for GCC builds if we set -Duse_libc++=OFF.
So, always expose the option so we can turn it off without a warning.
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -21,7 +21,7 @@ option(build_xmlparser "Automatically update the XML parser modules when updatin
option(build_search "Build external search tools (doxysearch and doxyindexer)" OFF)
option(build_doc "Build user manual (HTML and PDF)" OFF)
option(build_doc_chm "Build user manual (CHM)" OFF)
-if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
+if (TRUE)
option(use_libc++ "Use libc++ as C++ standard library." ON)
endif()
option(use_libclang "Add support for libclang parsing." OFF)

@ -0,0 +1,119 @@
https://github.com/doxygen/doxygen/issues/10263
https://github.com/doxygen/doxygen/commit/28609fecd41d885e54fa170e499a0e5b55def2c2
From 28609fecd41d885e54fa170e499a0e5b55def2c2 Mon Sep 17 00:00:00 2001
From: Dimitri van Heesch <doxygen@gmail.com>
Date: Mon, 28 Aug 2023 20:19:16 +0200
Subject: [PATCH] issue #10263 please add a use_sys_sqlite3 config option
---
CMakeLists.txt | 6 +++++-
cmake/FindSQLite3.cmake | 38 ++++++++++++++++++++++++++++++++++++++
deps/CMakeLists.txt | 4 +++-
src/CMakeLists.txt | 4 +++-
4 files changed, 49 insertions(+), 3 deletions(-)
create mode 100644 cmake/FindSQLite3.cmake
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4957c34c24d..31e53cc8440 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -25,7 +25,8 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
option(use_libc++ "Use libc++ as C++ standard library." ON)
endif()
option(use_libclang "Add support for libclang parsing." OFF)
-option(use_sys_spdlog "Use system spdlog instead of bundled." OFF)
+option(use_sys_spdlog "Use system spdlog library instead of the one bundled." OFF)
+option(use_sys_sqlite3 "Use system sqlite3 library instead of the one bundled." OFF)
option(static_libclang "Link to a statically compiled version of LLVM/libclang." OFF)
option(win_static "Link with /MT in stead of /MD on windows" OFF)
option(enable_console "Enable that executables on Windows get the CONSOLE bit set for the doxywizard executable [development]" OFF)
@@ -67,6 +68,9 @@ endif()
if (use_sys_spdlog)
find_package(spdlog CONFIG REQUIRED)
endif()
+if (use_sys_sqlite3)
+ find_package(SQLite3 REQUIRED)
+endif()
if (build_wizard)
if (force_qt STREQUAL "Qt6")
if (CMAKE_SYSTEM MATCHES "Darwin")
diff --git a/cmake/FindSQLite3.cmake b/cmake/FindSQLite3.cmake
new file mode 100644
index 00000000000..7c21de223a7
--- /dev/null
+++ b/cmake/FindSQLite3.cmake
@@ -0,0 +1,38 @@
+# Copyright (C) 2007-2009 LuaDist.
+# Created by Peter Kapec <kapecp@gmail.com>
+# Redistribution and use of this file is allowed according to the terms of the MIT license.
+# For details see the COPYRIGHT file distributed with LuaDist.
+# Note:
+# Searching headers and libraries is very simple and is NOT as powerful as scripts
+# distributed with CMake, because LuaDist defines directories to search for.
+# Everyone is encouraged to contact the author with improvements. Maybe this file
+# becomes part of CMake distribution sometimes.
+
+# - Find sqlite3
+# Find the native SQLite3 headers and libraries.
+#
+# SQLite3_INCLUDE_DIRS - where to find sqlite3.h, etc.
+# SQLite3_LIBRARIES - List of libraries when using sqlite.
+# SQLite3_FOUND - True if sqlite found.
+
+# Look for the header file.
+FIND_PATH(SQLite3_INCLUDE_DIR NAMES sqlite3.h)
+
+# Look for the library.
+FIND_LIBRARY(SQLite3_LIBRARY NAMES sqlite3)
+
+# Handle the QUIETLY and REQUIRED arguments and set SQLITE3_FOUND to TRUE if all listed variables are TRUE.
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(SQLite3 DEFAULT_MSG SQLite3_LIBRARY SQLite3_INCLUDE_DIR)
+
+# Copy the results to the output variables.
+IF(SQLite3_FOUND)
+ SET(SQLite3_LIBRARIES ${SQLite3_LIBRARY})
+ SET(SQLite3_INCLUDE_DIRS ${SQLite3_INCLUDE_DIR})
+ELSE(SQLite3_FOUND)
+ SET(SQLite3_LIBRARIES)
+ SET(SQLite3_INCLUDE_DIRS)
+ENDIF(SQLite3_FOUND)
+
+MARK_AS_ADVANCED(SQLite3_INCLUDE_DIRS SQLite3_LIBRARIES)
+
diff --git a/deps/CMakeLists.txt b/deps/CMakeLists.txt
index a689b4a7018..eb716417f22 100644
--- a/deps/CMakeLists.txt
+++ b/deps/CMakeLists.txt
@@ -4,4 +4,6 @@ add_subdirectory(libmscgen)
if (NOT use_sys_spdlog)
add_subdirectory(spdlog)
endif()
-add_subdirectory(sqlite3)
+if (NOT use_sys_sqlite3)
+ add_subdirectory(sqlite3)
+endif()
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 78a55c3f2bf..02c52240e5b 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -6,7 +6,6 @@ include_directories(
${PROJECT_SOURCE_DIR}/deps/libmd5
${PROJECT_SOURCE_DIR}/deps/liblodepng
${PROJECT_SOURCE_DIR}/deps/libmscgen
- ${PROJECT_SOURCE_DIR}/deps/sqlite3
${PROJECT_SOURCE_DIR}/libversion
${PROJECT_SOURCE_DIR}/libxml
${PROJECT_SOURCE_DIR}/vhdlparser
@@ -18,6 +17,9 @@ include_directories(
if (NOT use_sys_spdlog)
include_directories(${PROJECT_SOURCE_DIR}/deps/spdlog/include)
endif()
+if (NOT use_sys_sqlite)
+ include_directories(${PROJECT_SOURCE_DIR}/deps/sqlite3)
+endif()
file(MAKE_DIRECTORY ${GENERATED_SRC})

@ -2,6 +2,8 @@ AUX gnucash-docs-4.13-reverese-kde-help-dir.patch 3431 BLAKE2B 77079f8c271044a5b
AUX gnucash-docs-5.1-partially-revert-kde-help-dir.patch 1960 BLAKE2B d9d6c92a15c3d77627c9afa372b154be4c9562f363d59432c4fc2de479239af65cc2e093dce8f2d9d0f3bcccb13b699328efc77892947e754957d0181d37280c SHA512 26b6cc4da72ad5e6cdbc0be1de36a7b6f1c6d2bde2e4920e5bd6209168c7608590f497b14760108bc3c500460217ee8e33883689c6a9b51723c0e5aef19814b3
DIST gnucash-docs-4.13.tar.gz 76306335 BLAKE2B 61944e3da12d4f7b4a26f1301e640deca87656c4a9c7cd935f4c52ae69e49bf746850f09513d8fbd92314827f683c3a9c83c59479d583c192d977afdf9d8fce4 SHA512 7081a84c3426ef84e88aef520458a0d06382853cb9a51880766033b655f873d0926848387d573a38eca82cf0c6bceecdbd56704ab9ecb3068c78d7ce5c8d4da0
DIST gnucash-docs-5.1.tar.gz 76533404 BLAKE2B 6601548123b6c1bdb3f04f54a5a598eb12ca803b604c02357a4126a52ce2d39f4f44b3cc35eb874590898b0792a99190d8ddca795bd45457c9ee565b95405b39 SHA512 6976964c4163987c867142bbf5c23ebf05585a73bd78926e35983602cf0caa024e5e334c19603a568e3fc5cd1e2f6b96e61ca888d5c6679b76f764429b8acdd1
DIST gnucash-docs-5.2.tar.gz 76537611 BLAKE2B 6abd9981cd0380358548ab5260bce766417ad25509eb4f8f5c890ad8b87a9d69a8d5b3a97227780d936986d2385a0d9cdb89aefb46d5fc533ccebd2472ea14ae SHA512 0b52d1d08cf217c6e9ebc0641b7f717abae960d801ee2f23e0a4bd2f21b7f82ca37f87359b4fb5329d8321dc2576e88bc1fcbc85935d69ba1f2205a4be153cf4
EBUILD gnucash-docs-4.13.ebuild 1502 BLAKE2B e9cca71e947920e81d8b08ea8f1b4af9348ff5a4359406b35447f186d358b86b8ef3734dca0447eea7f60fd2b413ca444b62753a801fced51b48494665edeb84 SHA512 506c7038fcb83ddb1476c1dde70644506600ccbec1dee30c34c9e5cf8f8029b23cea4083bfb6c48502639007488b8888737633ad598b70b63e665bfe30a5891f
EBUILD gnucash-docs-5.1.ebuild 1509 BLAKE2B 3e657cb050a236606d09b53722f6cedd42b5631669cf09891bb954f2e0657ef511c73aea60e51de792f2721f24d273f32e9a4afa02efea58672f291421050d7c SHA512 ad732dc6e1a72e918b630c68e1acdf820cc704be6b6597b49792a2fa36d962e3e7862c0e2d80c784f0a8cd79ce3ec672d9fd3b538af8fcbb55638b6a2180607f
EBUILD gnucash-docs-5.2.ebuild 1510 BLAKE2B 3eaa9317037cc810b5d98c0f8bce6c176a06fd078989ea09981a35b9ee618ca88c2dcc76ac7763c608eb2565d3a1721572a8ffcd554277bf6ee33ce4fd2a1989 SHA512 fbcea8e2ba11312c7bd502aee3e7761f08983bb41d37e510b3f81b85628b8ae63bc8f0c60625c4e2b01b6600b785f1cba8f3858c5a7fd2edaa85359569cb848e
MISC metadata.xml 386 BLAKE2B c95b7a099a8d78b544782ba18dbf5bdc094e22e4afad4e97427a16e2bb4f0706104271b88db6cfec7670d78d21d61b717772f195ce6217e993099a5b13e547cd SHA512 f95171ae4ab46811574dc77d943f1c5f575cad1c92b979daefcd36eebe00b71aa9fdd12d09e451cb60d50edbd38df335ad05dd0cbcefc35c93150ffbb39af3e8

@ -0,0 +1,72 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Please bump with app-office/gnucash
CMAKE_MAKEFILE_GENERATOR=emake
inherit cmake optfeature
DESCRIPTION="Documentation package for GnuCash"
HOMEPAGE="https://www.gnucash.org/"
SRC_URI="https://github.com/Gnucash/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2 FDL-1.1"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv ~x86"
LOCALES=( de it ja pt )
IUSE="${LOCALES[*]/#/l10n_}"
BDEPEND="
app-text/docbook-xml-dtd:4.5
app-text/docbook-xsl-stylesheets
dev-libs/libxml2
dev-libs/libxslt
"
src_prepare() {
eapply "${FILESDIR}/${PN}-5.1-partially-revert-kde-help-dir.patch"
cmake_src_prepare
}
src_compile() {
cmake_src_compile
}
src_install() {
local doc_type my_lang
for doc_type in manual guide; do
for my_lang in C ${L10N}; do
[[ -z ${my_lang} ]] && continue
case "${my_lang}" in
# Both help and guides translated
C|de|it|pt) ;;
ja|ru) # Only guides translated
if [[ "${doc_type}" == "manual" ]] ; then
elog "Help documentation hasn't been translated for ${my_lang}"
elog "Will do English instead."
continue
fi
;;
*)
die "Invalid locale: ${my_lang}"
;;
esac
emake \
-C "${BUILD_DIR}/${my_lang}/${doc_type}" \
DESTDIR="${D}" \
install
done
done
einstalldocs
}
pkg_postinst() {
optfeature "generating PDF files" dev-java/fop
optfeature "viewing the docs" gnome-extra/yelp
}

@ -1,7 +1,5 @@
DIST kicad-doc-7.0.1.tar.bz2 104103280 BLAKE2B dbdcd82e65c9d3a2bff629f8fa4e3cc34c2adbfa3fe9a808e3802addc3d75f3875ad52c4f5e79cb2bfb7563a6288d0c2eb6f119adf4f7fd2f31360cea82d1ea7 SHA512 5274ef673db9e415d5b82522681acdd4ee2b2f615bb52abdd11ebd17b72f36852ee297fdb98f9cf1dee12671a23adc24a6a8a03be720b579bbee7a9ead167e41
DIST kicad-doc-7.0.2.tar.bz2 104105560 BLAKE2B e6617c5390fd03c7e388a532bd34fbf13baa2fffabac0a63ad84a1e30c398ff5d240cb7ac890945a56fdbdd7300398f37667974797d60afc8a4f6438a6bf324b SHA512 d05a1b9988bbaaa630d036c0b90e81020bd0d51dbccbe6918983bea7894476e0a186fa133fc88aa365c9d26e51b1184f7ce5f375847b828f6b9a85abfe6fd33e
DIST kicad-doc-7.0.6.tar.bz2 104105032 BLAKE2B d8cf3cdbaf4088793ba0f6b5625c92b83972620a9da2240827b3a38ae18f66e3fa277c7c930195e18604a6b13dd8fa2a8a5d90de70cbe609575f3d9f89d75d01 SHA512 2162119a1e0b3626a65841e6a6e60561512a27c10b79345ee3713f3b046a58448ad9765f6b430ad77d67ca75cb0d9f37018f2540020406cde0b5a35969db20f4
DIST kicad-doc-7.0.7.tar.bz2 104103652 BLAKE2B f5ce0ccde126c062dd877ce8023b0c22e33bc1df47e12494d6a41cb198e0100c690fb9325f6e8b74198af77af1c6afb92f6a6f8c417828527bfa8904c88f6432 SHA512 fd37e06dcac907d8fca6cdf8e3eaf2c5197a82572d92f2b2af8aca8ea3603e7dd4ffc1c77b1e28aee245b4d611dca2a3565eec1d23051925d9969582232862c1
EBUILD kicad-doc-7.0.1.ebuild 1810 BLAKE2B f37bc6841d8aa2c457341d56643ec14048af7c6c97b671a607f8a069750bb885439ba5d07c0dd677f73e1b5cfafe68062483e439cfee78f9b84ba73d48615892 SHA512 0e3674a86ab2b0bd61cf0505dde1e2910502ce992fac8f276b86738e0082860e1ff577f5d84412d60f085bea9443f9872540908a5e93b7afef47794ca84d8811
EBUILD kicad-doc-7.0.2.ebuild 1811 BLAKE2B dd463832069201a6775846383f74bc0f3e04426307267153960e6d6248e862d53c0d87c93fc70672c1aefa3030f20997009fb8c5cd7d076a31960e75c1ed5e3f SHA512 b800a6f5befc4d0f293767ac85e56c11b136023f45186a13285d3629b100df55232d4d83188d02dc5af5fac55c9265b68bfad75d68ba94b1621dfb6d952321ba
EBUILD kicad-doc-7.0.6.ebuild 1811 BLAKE2B dd463832069201a6775846383f74bc0f3e04426307267153960e6d6248e862d53c0d87c93fc70672c1aefa3030f20997009fb8c5cd7d076a31960e75c1ed5e3f SHA512 b800a6f5befc4d0f293767ac85e56c11b136023f45186a13285d3629b100df55232d4d83188d02dc5af5fac55c9265b68bfad75d68ba94b1621dfb6d952321ba
EBUILD kicad-doc-7.0.7.ebuild 1811 BLAKE2B dd463832069201a6775846383f74bc0f3e04426307267153960e6d6248e862d53c0d87c93fc70672c1aefa3030f20997009fb8c5cd7d076a31960e75c1ed5e3f SHA512 b800a6f5befc4d0f293767ac85e56c11b136023f45186a13285d3629b100df55232d4d83188d02dc5af5fac55c9265b68bfad75d68ba94b1621dfb6d952321ba
MISC metadata.xml 861 BLAKE2B d1cfbf0b3a558b876cc446ffb27ac09d0bac29328d370b064f950117692a0582adc48cac4c8d887ac4151aae72c8cbeef20b521da166a77c7a787951da812f8c SHA512 3d12ebc29679fc7b7d2a75d5d33a053dfb21c96213aa98dd8350f4eb364a4149e35b0f18ca6d9e59f86e57df0abb59e182c7f8fdfda38e4bce8a5308009c85fa

@ -1,59 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake
DESCRIPTION="Electronic Schematic and PCB design tools manuals"
HOMEPAGE="https://docs.kicad.org/"
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://gitlab.com/kicad/services/kicad-doc.git"
inherit git-r3
# x11-misc-util/macros only required on live ebuilds
LIVE_DEPEND=">=x11-misc/util-macros-1.18"
else
SRC_URI="https://gitlab.com/kicad/services/${PN}/-/archive/${PV}/${P}.tar.bz2"
KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
fi
LICENSE="|| ( GPL-3+ CC-BY-3.0 ) GPL-2"
SLOT="0"
# TODO: Change default back to +pdf once asciidoctor-pdf is packaged?
IUSE="+html pdf"
LANG_USE=" l10n_ca l10n_de l10n_en l10n_es l10n_fr l10n_id l10n_it l10n_ja l10n_pl l10n_ru l10n_zh"
IUSE+=${LANG_USE}
REQUIRED_USE="|| ( html pdf ) ^^ ( ${LANG_USE} )"
unset LANG_USE
# TODO: need asciidoctor-pdf for pdf
# bug #697450
BDEPEND="
>=dev-ruby/asciidoctor-2.0.12
>=app-text/dblatex-0.3.10
>=app-text/po4a-0.45
>=sys-devel/gettext-0.18
dev-perl/Unicode-LineBreak
dev-util/source-highlight
l10n_ca? ( dev-texlive/texlive-langspanish )
l10n_de? ( dev-texlive/texlive-langgerman )
l10n_en? ( dev-texlive/texlive-langenglish )
l10n_es? ( dev-texlive/texlive-langspanish )
l10n_fr? ( dev-texlive/texlive-langfrench )
l10n_it? ( dev-texlive/texlive-langitalian )
l10n_ja? ( dev-texlive/texlive-langjapanese media-fonts/vlgothic )
l10n_pl? ( dev-texlive/texlive-langpolish )
l10n_ru? ( dev-texlive/texlive-langcyrillic )
l10n_zh? ( dev-texlive/texlive-langchinese )"
src_configure() {
local mycmakeargs=(
-DPDF_GENERATOR="DBLATEX"
-DBUILD_FORMATS="$(usev html);$(usev pdf)"
-DSINGLE_LANGUAGE="${L10N}"
-DKICAD_DOC_PATH="${EPREFIX}"/usr/share/doc/${P}/help
)
cmake_src_configure
}

Binary file not shown.

@ -1,7 +1,5 @@
DIST gnome-text-editor-44.0.tar.xz 610996 BLAKE2B 02ab81055402df584a448d0e611b608e5fa10d6f4a600755cbab9f730aa1806268f7277dafb4fd3aa95ff2be64d2894806c6038ad81dae7cfb87b28dccc7da24 SHA512 bca373a124c3e648fa28da1a493163d768488fa3645fcfbfa7a115e195c0c971dc98e007c9c0fdf7fe415df64e76071fc83e33831707bb31154e66355948bbb3
DIST gnome-text-editor-45.0.tar.xz 616972 BLAKE2B 41907137026f6175901965c713451292c9cc172381c9f371c00f236cf5bf70ac9604025c856bafcba87eea1a5f31e468b716fd6307e2aaf82570ac64d6574f3a SHA512 5bec27bb7674f8b6d737e24508e9839600145e4ec5e2cbacdb80e1a4f884782e2bb24808595cfcd0139f101104ce94e70cb90229b514d1dd6ed8e672c878304d
DIST gnome-text-editor-45.beta.tar.xz 606824 BLAKE2B bea05d6ca321993ff1f2e563b9c6041b381cb1c9986654166b6fda174a0ed678a05521181c603b4d0847ef878838e5773256bf6afea1855afe4bf3a042feeb3a SHA512 32e07cb8c8c605224e1d915b9579efdf7146291835582da7ab460a4dc23e8207d9cdbc19261bd5060421f9ad06869a49d22b6b1b46e14bcf6fc93238c6eef329
EBUILD gnome-text-editor-44.0.ebuild 1037 BLAKE2B 353011edfc52d79a4cabd0f18bc942b2f9bcca87ad0a72a803606407d44698ad0cc490569098fd58b80b6ce8fc9d466fb40d24cc2bbfb6abce6983ecd197f536 SHA512 e6404aaaa55a8dd8d3647a85273f16d91b6bf0b4ae9abb3ee058b70ffff66528beabe301730517956e1732af3aea555ca1019b0c733a52909d13d3ea5d77763b
EBUILD gnome-text-editor-45.0.ebuild 1044 BLAKE2B 36c882bf38738d9a32f4cf4623fe2a0d40c7a942e0cffef709195f45b5ce84983c95196fb55535549e64a9dc2db0298650ec72b29291d33906f038bf45c5d8ca SHA512 65772992985ead4083287422919310a7b55a8db52c1146002f9a4f27e7067c26709ec0e440deceaaf69dd1ea1e6574d781847297e2e6201ac101f54592d733f6
EBUILD gnome-text-editor-45_beta.ebuild 1044 BLAKE2B 36c882bf38738d9a32f4cf4623fe2a0d40c7a942e0cffef709195f45b5ce84983c95196fb55535549e64a9dc2db0298650ec72b29291d33906f038bf45c5d8ca SHA512 65772992985ead4083287422919310a7b55a8db52c1146002f9a4f27e7067c26709ec0e440deceaaf69dd1ea1e6574d781847297e2e6201ac101f54592d733f6
EBUILD gnome-text-editor-45.0.ebuild 1051 BLAKE2B dba70611d8f4721fc55eccfa2878be095f3ee90dbb2f00eef356e14148703749ce3cb6df7e913f9f4a27c9e9b2e82e09ffffd3fee8a6680692fb9510316af76d SHA512 4c4c118a87925778a7e7437e358d0563f64a2336a85cae26d33c951a7ce74c26055762c50f64be79794335b5974b320faee29f8a953a129c63d5399bf6328c38
MISC metadata.xml 358 BLAKE2B 908c67ba226a7e65b72a1cbaea99350f05fe9f904644c99b9c4e1e0c81f795c1420a0ca9cba1d56f59fb1b841151ffcf7d088add9f36a0e88314f7f52da94fcf SHA512 5862fb965119f76e19ed997e53e651778458604f1f9b69a1ee04db8eac52bdb6352da84ecb92555b31d3b8c62aa544c57c6040ed358af3beddd35fe356744d85

@ -14,7 +14,7 @@ SLOT="0"
IUSE="spell"
KEYWORDS="~amd64 ~riscv"
KEYWORDS="~amd64 ~loong ~riscv"
DEPEND="
>=dev-libs/glib-2.73.0:2

@ -1,57 +0,0 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit gnome.org gnome2-utils meson xdg
DESCRIPTION="A simple text editor for the GNOME desktop"
HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-text-editor"
S="${WORKDIR}/gnome-text-editor-${PV/_/.}"
LICENSE="GPL-3+ CC-BY-SA-3.0"
SLOT="0"
IUSE="spell"
KEYWORDS="~amd64 ~riscv"
DEPEND="
>=dev-libs/glib-2.73.0:2
>=gui-libs/gtk-4.7:4
>=gui-libs/gtksourceview-5.5.0:5
>=gui-libs/libadwaita-1.4_alpha:1
app-text/editorconfig-core-c
x11-libs/cairo
spell? (
>=app-text/enchant-2.2.0:2
dev-libs/icu:=
)
"
RDEPEND="${DEPEND}
gnome-base/gsettings-desktop-schemas
"
BDEPEND="
dev-util/glib-utils
dev-util/itstool
>=sys-devel/gettext-0.21
virtual/pkgconfig
"
src_configure() {
local emesonargs=(
$(meson_feature spell enchant)
-Dbugreport_url="https://bugs.gentoo.org"
)
meson_src_configure
}
pkg_postinst() {
xdg_pkg_postinst
gnome2_schemas_update
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
}

@ -3,11 +3,9 @@ AUX neovim-0.9.0-cmake-release-type.patch 624 BLAKE2B ee230ce39f70bbd7c37c15d1b6
AUX neovim-0.9.0-cmake_lua_version.patch 583 BLAKE2B 085ef029e0945e410724c586f7a9f0e679af967bfe1d36cb2c4fac7579697f4d1473ef62ddbe9770bb6ef79130a6c5f0d81d3918334b5e3ca83cb951bfb547f5 SHA512 e29fbc7198b71ea8804a1676da6e9e0b3e42d436c1a280fc83dd5e932b490d5210c4cc46639d7592ab3b98ba82d5b1f8046650bc3cdcf53193f8298481611d47
AUX neovim-0.9.1-cmake-darwin.patch 438 BLAKE2B da56fa8bfd3a01a93c5039cb8b9d02753e6be5b96782537e4c9f7f2c4ebab32f95f42eeb3c193e2ae22acea03c293d808736ca38c7f082ca5fcc57076f16e736 SHA512 87afea0d283eaf261dda76d84e3b09dabc2aaf021877f2457af240581ca22d9bb29cc7fa44c3804727dacd9e8c0d3c0edf5d72e59e34dd5e6496b9a30a0669b8
AUX sysinit.vim 3408 BLAKE2B 50da5ecb83fb38af20d484dbc5f3e417efc083cde339070b07ff4c2fa4ebd080189f975478d82fa977bc763d5e8d7f29c7703a515ecf6fff62772be4ef160170 SHA512 79b574ef42fbdd9c7fe26cffb1fadea3c31becf22f4be441acbdc75068a00f809a23f3a886e1cb6e30bb92c780bd04aea7b94f655f5c9f0d10c547fb10dd6e8a
DIST neovim-0.9.0.tar.gz 11549103 BLAKE2B f07b61f02a11acf678358999ea364b6a64724451a9a75f2d6ca436edc5ead9c6422f1c7e99c4322dc0bb92daacf306e32e214ab34d10f78f28d4ffad17b878c7 SHA512 e42f09f408b83fc34e8f169321e0349d1f851e67a998265c53d2ddb1a4792c3f4777fabe32baf2c7eff7d3745ff60d4a07da542ccd272883f7f4e080b2c9c1bf
DIST neovim-0.9.1.tar.gz 11567358 BLAKE2B 7aa56c672f7d26db7d47df39941487de32008b9e78921d71860281e8319b30dc6cd889a029c83b61814baecac947f39a950245ed7e51c35509b30e9b39046a58 SHA512 339efd3d8c1a73aa3b43e8770d6943aeba9e4ce6a3598c0424e388f80759d50b14aa7c60fd435bf2d17997476e06d28b79e7e98670d02ca9ceec031841e8b9b8
DIST neovim-0.9.2.tar.gz 11580390 BLAKE2B 097b0b245e8f987c7f980df2d170f4d62fc08e107f6166f1df4a78776b0aa8b8dc3c699648ae5fa123e54e7599321f0170f93ccee4d89302f25d1b8bba6161c7 SHA512 f12ae48c82c4a3622e464a23966cb06e9da1a7cd000b4efeb8408bb55e189ffeb4ece99e9488244c16f7de70356303e4dc964afd70ab24d23a5e07c59e902ed9
EBUILD neovim-0.9.0-r1.ebuild 3225 BLAKE2B 37255f12bfa3d20bb6ead24730110ad0c633f46574a024f44c7c4b832f2e4a0a9525b9d666c3ac8c4e8a50999f07d9dd14fa66021230fa6b61bc6baba554ea9a SHA512 cb36912e4a3f91a89633541c61fe577b88b1902f3fb7af482e099a30ebe3f02f1256233a4aff9c378a4e46508e8999fb764f2fb0d7eac09ae3cd35e50c606ec4
EBUILD neovim-0.9.1.ebuild 3225 BLAKE2B 20e7c82809c1c11442d281197c1e9adaf4bebfcd1dae30d52d4f9daef1e13644a7ffbfc27508bf8f188fee6ccecd3ec108f8042c934ced08279092e29a0b6d19 SHA512 d7b6cadfcf36fe87f1e52e9a96aa0b6748ef4695dfcfd2e9fe87ef66bb0513565907ed9ef0f13610e962f5d7314a60a1061d437beaca538155cb1dec7a6a68c1
EBUILD neovim-0.9.2.ebuild 3230 BLAKE2B e67061ed91719235bf1c50e8c3cda70cddbc5748df8b64b9f3153b5cf4c797cdc1618fd5cad103f8debb8ff5266831aa36a8a0a46c482be280cd4f064a668d09 SHA512 6e22862cdbc9507fa80d82b0c3bb8b51f8d75573d915fb65ab7ff99944cd3a8bac230b841087f684306eb322167ffb7cacf9c66137c096b0ee1e1cd7b0dbbfef
EBUILD neovim-9999.ebuild 3238 BLAKE2B b3eae1a3289ef96de7e51f6ef1db4d7114ae491ccdfad9af292ce93bb9d0279bf0e66df3038df5e51b43952f895a089e443d978193e8c2424b27eec8722a0f07 SHA512 dbb9b74a5e542af002b062db63fd381c459ff771abc7cd1c4f698942a4ca2928ec856a339b46c33b6109cca1cf89bbabd284bb73c2b303fdd9b9fd25a03f555b
EBUILD neovim-9999.ebuild 3240 BLAKE2B e1699509c1d90d5f8a59581173d06b0015a1359cdc3f0bb36fbd73acbadc63baf8b04432bcd7037352c827943144eff32ef004f260c092d612d4e75126b81ac8 SHA512 46afacfa99a15ff807d554e741bc8e3d3e0cc1503208591c2b7d3e4143ccb149afc9d6ab8b584c6e67d56b3b2cd9166a3bbf27a402e941ea7f7576ccee812744
MISC metadata.xml 744 BLAKE2B 433eb4570a5d21585f7ef15041d18d639c780469d35cdb3624fe82780ce26e0ca15227990ee1c9c8732c934858d02a2df3ae307fd5263cde17cba920254b2b26 SHA512 0671cb375b02e9c4af652631d8ee5ac59ea0efa81c6d9250593ad559adb1c91eec764566553cc527801423a3e96fcc6cf9ce22666fd8bc3a583ccd12fe2ec498

@ -1,119 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# RelWithDebInfo sets -Og -g
CMAKE_BUILD_TYPE=Release
LUA_COMPAT=( lua5-{1..2} luajit )
inherit cmake lua-single optfeature xdg
DESCRIPTION="Vim-fork focused on extensibility and agility"
HOMEPAGE="https://neovim.io"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86 ~x64-macos"
fi
LICENSE="Apache-2.0 vim"
SLOT="0"
IUSE="+lto +nvimpager test"
# Upstream say the test library needs LuaJIT
# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377
REQUIRED_USE="${LUA_REQUIRED_USE} test? ( lua_single_target_luajit )"
# TODO: Get tests running
RESTRICT="!test? ( test ) test"
# Upstream build scripts invoke the Lua interpreter
BDEPEND="${LUA_DEPS}
>=dev-util/gperf-3.1
>=sys-devel/gettext-0.20.1
virtual/libiconv
virtual/libintl
virtual/pkgconfig
"
# Check https://github.com/neovim/neovim/blob/master/third-party/CMakeLists.txt for
# new dependency bounds and so on on bumps (obviously adjust for right branch/tag).
DEPEND="${LUA_DEPS}
>=dev-lua/luv-1.44.2[${LUA_SINGLE_USEDEP}]
$(lua_gen_cond_dep '
dev-lua/lpeg[${LUA_USEDEP}]
dev-lua/mpack[${LUA_USEDEP}]
')
$(lua_gen_cond_dep '
dev-lua/LuaBitOp[${LUA_USEDEP}]
' lua5-{1,2})
>=dev-libs/libuv-1.44.2:=
>=dev-libs/libvterm-0.3
>=dev-libs/msgpack-3.0.0:=
>=dev-libs/tree-sitter-0.20.8:=
>=dev-libs/libtermkey-0.22
>=dev-libs/unibilium-2.0.0:0=
"
RDEPEND="
${DEPEND}
app-eselect/eselect-vi
"
BDEPEND+="
test? (
$(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]')
)
"
PATCHES=(
"${FILESDIR}/${PN}-0.9.0-cmake_lua_version.patch"
"${FILESDIR}/${PN}-0.9.0-cmake-darwin.patch"
"${FILESDIR}/${PN}-0.9.0-cmake-release-type.patch"
)
src_prepare() {
# Use our system vim dir
sed -e "/^# define SYS_VIMRC_FILE/s|\$VIM|${EPREFIX}/etc/vim|" \
-i src/nvim/globals.h || die
# https://forums.gentoo.org/viewtopic-p-8750050.html
xdg_environment_reset
cmake_src_prepare
}
src_configure() {
# Upstream default to LTO on non-debug builds
# Let's expose it as a USE flag because upstream
# have preferences for how we should use LTO
# if we want it on (not just -flto)
# ... but allow turning it off.
# TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now
local mycmakeargs=(
-DENABLE_LTO=$(usex lto)
-DPREFER_LUA=$(usex lua_single_target_luajit no "$(lua_get_version)")
-DLUA_PRG="${ELUA}"
)
cmake_src_configure
}
src_install() {
cmake_src_install
# install a default configuration file
insinto /etc/vim
doins "${FILESDIR}"/sysinit.vim
# conditionally install a symlink for nvimpager
if use nvimpager; then
dosym ../share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
fi
}
pkg_postinst() {
xdg_pkg_postinst
optfeature "clipboard support" x11-misc/xsel x11-misc/xclip gui-apps/wl-clipboard
optfeature "Python plugin support" dev-python/pynvim
optfeature "Ruby plugin support" dev-ruby/neovim-ruby-client
optfeature "remote/nvr support" dev-python/neovim-remote
}

@ -40,7 +40,7 @@ BDEPEND="${LUA_DEPS}
# Check https://github.com/neovim/neovim/blob/master/third-party/CMakeLists.txt for
# new dependency bounds and so on on bumps (obviously adjust for right branch/tag).
DEPEND="${LUA_DEPS}
>=dev-lua/luv-1.44.2[${LUA_SINGLE_USEDEP}]
>=dev-lua/luv-1.45.0[${LUA_SINGLE_USEDEP}]
$(lua_gen_cond_dep '
dev-lua/lpeg[${LUA_USEDEP}]
dev-lua/mpack[${LUA_USEDEP}]
@ -48,8 +48,8 @@ DEPEND="${LUA_DEPS}
$(lua_gen_cond_dep '
dev-lua/LuaBitOp[${LUA_USEDEP}]
' lua5-{1,2})
>=dev-libs/libuv-1.44.2:=
>=dev-libs/libvterm-0.3
>=dev-libs/libuv-1.46.0:=
>=dev-libs/libvterm-0.3.3
>=dev-libs/msgpack-3.0.0:=
>=dev-libs/tree-sitter-0.20.8:=
>=dev-libs/libtermkey-0.22

Binary file not shown.

@ -1,5 +0,0 @@
AUX libvirt-snmp.confd 143 BLAKE2B 0781bbd4a4fc0f9f9f32347ae5b730ee643ccfacbc02ddacafca4fe3ba7af3418acd1a677f5d30547f2816717a29091a8305054c87549d675402fb639f12eb39 SHA512 15037f146e7d2f72c83927133b07477a8f0c79df417dc37f3d5a58081f4a9d5c950b5160f4c4b419b68430192a178cb9b8550106d4870ace264448a74de5862e
AUX libvirt-snmp.initd-r1 639 BLAKE2B 46cc58e561aa341a27381cf1ff7925758dae2a8a119fb789645d5a602631b52d7d3325549da4b5b256f33c94e9a7d90200e5010d326184eab58a2d83d9bb72da SHA512 90db400497ea1ff10ffb0b8fe1ec9cfbbb066cdec0db9669924080ec64fd9b2e878c063eeb8ba7ffea0c3cd1f154a9074daab0bd6951de34e3d1183518dfdb18
DIST libvirt-snmp-0.0.4.tar.gz 157859 BLAKE2B e2c8fcdd97ba9b55bd4d318c63f7738024c1360ee10aa4e685c2ea6ca02478206febff30f3e1a82eb1a2dadaa52a377cfbce538e12e33f4ea2fe10b1a089945d SHA512 dbf47e7983f9bd6fcff205fffd1f6006268cca774cf427d39dec84dc7de37b545c0dfcbb2c6f171f55d73487cdec13341097137e24de2dea58ce90494d281162
EBUILD libvirt-snmp-0.0.4.ebuild 1033 BLAKE2B 086dc0f5268dc175566c90258e5d9a29346aca3c03a76ff46f94b33bb4561a5ce8c84cd11af1f248e09b156b96b0cae0573c856610178e1c86097bd8a0c67464 SHA512 2923367b98b3d86d7f1035615b4beda6b8095d11cc7480536bf3d171b86850ac695b9c59dc1083e86d529d8fa1110a0f4a9a901087397f235ce28ff2687778ed
MISC metadata.xml 253 BLAKE2B e2f2dc37dec865acaf75ab3cf8eec5b07230a50f77b31484d57c98d6c253d9cc775e3bfbd0b324a551add51eceb7ab16550f5207f0ddec45eb846af46d35d042 SHA512 88baeb17d7dfd51ba23199e87f21cd81d6ce72a80294baabae5a8130f336d4639c3026e5b38a96541292af1f69548a02192a099d67c907f6b8a06d6b2bca3c19

@ -1,6 +0,0 @@
# Specify the URI where your libvirt instance is listening
LIBVIRT_DEFAULT_URI="qemu:///system"
# additional options
LIBVIRT_SNMP_OPTIONS=""

@ -1,26 +0,0 @@
#!/sbin/openrc-run
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
depend() {
need snmpd
use snmptrapd
use libvirtd
}
start() {
ebegin "Starting libvirt subagent"
start-stop-daemon --start \
--env LIBVIRT_DEFAULT_URI="${LIBVIRT_DEFAULT_URI}" \
--exec /usr/bin/libvirtMib_subagent \
-- ${LIBVIRT_SNMP_OPTIONS}
eend $?
}
stop() {
ebegin "Stopping libvirt subagent"
# "--exec /usr/bin/libvirtMib_subagent" does not work and the name gets truncated
start-stop-daemon --stop \
--name libvirtMib_suba
eend $?
}

@ -1,38 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Provides SNMP functionality for libvirt"
HOMEPAGE="https://wiki.libvirt.org/Libvirt-snmp.html"
SRC_URI="https://download.libvirt.org/snmp/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE=""
DEPEND=""
RDEPEND="${DEPEND}
app-emulation/libvirt
net-analyzer/net-snmp"
BDEPEND="
virtual/pkgconfig"
src_install() {
default
newinitd "${FILESDIR}/libvirt-snmp.initd-r1" "${PN}"
newconfd "${FILESDIR}/libvirt-snmp.confd" "${PN}"
}
pkg_postinst() {
elog "This daemon runs as an AgentX sub-daemon for snmpd. You should therefore"
elog "enable the AgentX functionality in snmpd by specifying the following"
elog "in /etc/snmp/snmpd.conf:"
elog " master agentx"
elog "It is further recommended to send traps to the localhost as well using"
elog "this option:"
elog " trap2sink localhost"
elog "More information is available here:"
elog " http://wiki.libvirt.org/page/Libvirt-snmp"
}

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
<remote-id type="gitlab">libvirt/libvirt-snmp</remote-id>
</upstream>
</pkgmetadata>

@ -22,23 +22,29 @@ DIST qemu-7.2.0.tar.xz 122408576 BLAKE2B 415ff621356c59f88b29cfe3ef5db1e282b26bb
DIST qemu-7.2.1.tar.xz 122400592 BLAKE2B bae1df5d332beaca313c4bac88f06dd5992988d7c1b6fdc6ced4043d858f437339cd7d0009ae667f9e66705117697bee7ee44ec4e911cc203d34eecc3d8f139b SHA512 e286dc66c923a5df77eb02d69235d048e80a7cced638fae52fbed385b4c3cd736cfea66bb3c9843bebf0a33e81ea141fc015e0bd82108df304f148ce59d9ae8a
DIST qemu-7.2.3.tar.xz 122395692 BLAKE2B 4e65cac7505a56da85c1d98dc6029d516dd4f07f0211ea5213724d231d448d9b49cc91a3058a2a89908608078854d97da480e6f0bc7ce47d9555c2bb1177fbdc SHA512 09523d456175da47d58d8d56fe9a95416ee3e6fd8aa7766383033396a1e5bd10f7758832f7f2b8662068ef94b21ab6a3a351c9158fb6bde0e1d7d5fb393bf6c7
DIST qemu-7.2.4.tar.xz 121849100 BLAKE2B a9c5ffce9ff0fac4e2d1fa4be1a1dcee2f5d7f793ddf726871c5ae9a68c22f7ba03692a8a5096de3051030d3c2f34e46697d5af2d66c34984b8161ae3bb07b42 SHA512 fa765673833a1f2cbecdb9d47dc7dc29d7613be5a5c8fc63925ae70e1f5aafb4f9f02e45b212a329f17b689351b8a9cdf5f5235ab6adb71bb40e41868898d95b
DIST qemu-7.2.6.tar.xz 121322888 BLAKE2B c3f51cc1647f5c75774513f624c2e1a1e4badd7275c9f9a64a175809daf17d0b3c58eab0c36fa98fc46834d4d79f8552d1c9f34e840ee21ddd049cc3adba480a SHA512 534fffe2d751a707a7cf15db8d5b9eddc2468fd7fe875715e79ee879fb20d7370553588384d345b586eeaddf9284de36f2d0d69f747380ee55161cc6eb09bf30
DIST qemu-8.0.0-docs.tar.xz 3218024 BLAKE2B b764a625024e78a39470048355471e12cfb57ab3c34e764dc4200fdf5c1aea635d26095ec961979bf46f177101c5bd38618bacf7e98e04bd64688ab5e29591aa SHA512 d9dfe191372e105fe16fe8f66f41ed793ade4c89b5ab1d84b39459f3419a1ca61bd49422a83981965cc257c05eca7fd49054703f58f179f5c7b656e9473a1054
DIST qemu-8.0.0.tar.xz 127835148 BLAKE2B 9b54aae10fe09691a26e68374723ded5fdda6409673b4de9461a25ee060cfd03968a16ddeadc21d48b9262e53aa6d4e5eb645376969f97c65807fad19607b04f SHA512 1f31d1e653dec2d35f1b7a5468ee3f471553b48eca8c8afafffcf9243c6b2260e78a5b73da3fe567f9b85d4133573eebd397747b3aec501fb24076263eb07b27
DIST qemu-8.0.2.tar.xz 126707132 BLAKE2B f2b1a63e10c42aabfe39722c7732d0f04818ad367b769b3deb29c5bf9adcabc3aca1706f3c40fafeeb57ac1f7a61ded5066de32134c483e2fd27bc65b4b7d30a SHA512 4e915d33a662bf55b09247fb85150be376c92270d3764e3d6470c452cb70cc558f54e84de5610dd60a9eb3ea02d5d4277b1ec75c9804967d278fa8361c7f9b9a
DIST qemu-8.0.3.tar.xz 126710536 BLAKE2B 071cc1a35209a02e8c5dd4f43cb112f110b4655adb0f870a04fdf9a6e2c761699574e8c9426f70f60787a99acf252d7a64d94a8e837cdfeda93d89428d7866f3 SHA512 18b2ccb65f7ec2ae92f0e04406539620c881e2b75f63816588c86043a07464bb99d16a83e792ed9508de393f4b694c46d52f4d07edf52741e85224c8b8d5d5c3
DIST qemu-8.0.4.tar.xz 126179324 BLAKE2B dfb98964c629b251f0004b4630ae4500a52465579417d6f5c7dbbb1f672e10d8d7ffb98a4b00e26fb98b3c867208146dbdca026e4d30cbf1752ac733c4d9b915 SHA512 bd5ed682d51f974abd4be93f949701f9b5bfb87fd9929e31df130534da2f2c03b99adc9f924b3efd47d3b254e0e3c0046f4e69fbe9f6d0c4ac1f6babecb29449
DIST qemu-8.0.5.tar.xz 126175064 BLAKE2B 1d1f78c185ab64b4ca946a44ad04d0bbb6ea48de058037e4ba18176abeb0f0528754c6e832f742f93227182bbce145544eca5b908a366006e7ee58876aca0bda SHA512 ec9679473dda84a2f56ae8ee0039ec4dafb056414bfc5a3a147b2b6bb45ae3b130dd80f6385e8567b5d18f4be94f3536bc8acc45c61eddf40c9678b46cb8bddc
DIST qemu-8.1.0-docs.tar.xz 2129912 BLAKE2B 8aaf7b748538afdb5bcb6da15dbd96572d086824377c4b0e93f1ddc695f9a4775471e360a9616d2d481dbf8113e91d2601c69d92cef565fb90b65ffacfdb304e SHA512 905515742bb56a439fc8117ec48ea668e7b2bf0244587673e4352d9e8e49911eb84ff093596ff566e44787197cf9789ec8950e3d75fb7a670c5546394a322ac9
DIST qemu-8.1.0.tar.xz 123550284 BLAKE2B b0fd87a19b13d4bbc6526caa46533073cb4dee6004df5d4fbbef204ee3bc8c2f10ec1eaff554adbb25c9f3143dd68abd09d4a0519c4766299a3ff261d03c73f2 SHA512 c5f5e7ce2d8e3c93a02012b136c866e8577df07da4705a0045916c71caeaa21fa1b2d59a4b22a660789a4159b192e12a443e7cbb0724ee85fea258251731724c
DIST qemu-8.1.1.tar.xz 123558860 BLAKE2B 71220fad7c9f74bed6211879f01566ac1e52835feb3d45eaa1b2fe1d5f95d9fa5db53b7aec72b4ef098c03d0c4070076c907fb3e6b839002de6f56ee5ab44340 SHA512 199db58f9a413cbe4449ff557bc362e666c6c0291f9963cb74e5542e8abd1edcd65001fa1fd453b850a376de455f93258707ce6feee5a44bf40753b12a2e956c
EBUILD qemu-7.2.0-r3.ebuild 27553 BLAKE2B 7846cfb2c75f660e08ed631a615b48ade7d3d9ed4a007469f4be39455ff8dd9d993025413c73b49c25ec17d4a7c62b8a5856f5e62f5fa5fb38437d031a7e2d8c SHA512 9f9d84fa83551d15c10cd1242f1fc7935c3265136628c76e5cdfc88540021d1ec53d714dc16d7e3bdbff4b7406146a44d7fabb8da491ac1d696c011dd4ab4dc8
EBUILD qemu-7.2.1.ebuild 27511 BLAKE2B 0c2b097c0335e064647ef59a480e204adf3cb0a99a40e481a58705705aaef4c3ee53d8b10e71b27b242788859c40b129ca74fe321edca8a0ab74bd1d32e17259 SHA512 69b0d5c50c3d248485a33aba72612db4ad35c5214037f562d750f6f22cf74c37bb174fcf2d936576f6c6541624d79eec220726e03630c71aad343dee87be25b5
EBUILD qemu-7.2.3-r1.ebuild 27551 BLAKE2B 3f504c35ea3130fcaf1a057e59c3562b46de5d7342c064a741c839faa33ab662b73db83296d874cbf30aef8717aa5b26f7e6d561d778f898a67d4c4ef2326f6a SHA512 13a104b1953f8788457c63ad5a26a76c3372e16765d8f454701468bb3cbcee04f42e0d12c9f2efe402e63e689481332ee9d616511db0ebc4da33ee2bd96aa79d
EBUILD qemu-7.2.3.ebuild 27510 BLAKE2B 06b545256d2c894eec775506e7a2207de25e5e5d6fef7f94744108e27ada9b3cece67e4d9430421f8a2276c7713ee62fd7ba2cf64f34f465b3e85bacea66ebe1 SHA512 27a718356f4d7b76d5cff6d70d7847d1a4e13ba0dcb7f631d907b55b5b847a04360f2cce41f673621966c13be60694d6f9deb15920f97cf189c4f21eec080ee8
EBUILD qemu-7.2.4.ebuild 27507 BLAKE2B 76fc80b37ac2de22391819b69b9302dd048787b835f1a6bf1796bba6a89d8dfdccdabd5a48ee33b62b1fcacbd92ab05122ce2fb5691615c45302946e9c3b6a9f SHA512 0d968d0766ed63570d548d9eade44ad20bf62a2f657f69f34b02703fb44cfb62ee1d49dd6ed83e573d300118846c852184bf51f287be5b22fa326f118462c335
EBUILD qemu-7.2.6.ebuild 27511 BLAKE2B 0c2b097c0335e064647ef59a480e204adf3cb0a99a40e481a58705705aaef4c3ee53d8b10e71b27b242788859c40b129ca74fe321edca8a0ab74bd1d32e17259 SHA512 69b0d5c50c3d248485a33aba72612db4ad35c5214037f562d750f6f22cf74c37bb174fcf2d936576f6c6541624d79eec220726e03630c71aad343dee87be25b5
EBUILD qemu-8.0.0-r1.ebuild 27327 BLAKE2B 304700a18a045f17851df427556ea57507f708b08485166ae9d1c30e617eae987db79aebafe65f230fe0c4b5b4b760e87f7e44e6084b16a8be0fb3c91a884f53 SHA512 bdc0008c18439a0688edc7715a0e9c836a57e08989c4bad7e29eef0ef3362958c8eee22ca71dc2d4939aee5b3b8dd500be0fe5ee3c8da866294a1cecedbf15cd
EBUILD qemu-8.0.2-r2.ebuild 27402 BLAKE2B f26dedfd8e0bebecad6fe35dcac3d8e5c7caccd59a3a8269542d9093f2a410a02a1563492165aff311156c31100ed1ae9c2f04ce9458fb52df2e52d9d19664d4 SHA512 d48f0b5b1005e8025cf9bcd8a5fa0e353670475d60aa5e57248633f2a542868fece5c1553ed9cf28bcf97a961f7cb2a05ab3599830726cbeeec78d336a8cfa03
EBUILD qemu-8.0.2.ebuild 27362 BLAKE2B e8a404836f3460473bb91b968d922c794bc8c2bae62024ebffa30a87de9aa1ebf08ab2f459594e28eb314df235248972c18424e465c4c6ab65ba97ec2534f5fd SHA512 019341b241f2c9258d18120d6117ed1aca4aec5ddfbaf1191ed873b51e2b80c81f884683d2d806c633132218cb639fd36b5bf9e1cd36eda10eb5f45342ebef55
EBUILD qemu-8.0.3.ebuild 27367 BLAKE2B f28951659e63a87285aa31576f3e6b3cfcb86bdf2f9631726a28adfce7701dba24e291aff8b74eae4842935dd04cdcce339af17bc8b0c0ecc50edd4403ff32b2 SHA512 f71cd6f053a5b2b5e466d2e87e2f949f4047b2fbeef7673adcb4a04b2c2eb595f2592c5a2df84717337577438444cc0d76ff06c1ee163e9ca96b47b4b4411910
EBUILD qemu-8.0.4.ebuild 27367 BLAKE2B f28951659e63a87285aa31576f3e6b3cfcb86bdf2f9631726a28adfce7701dba24e291aff8b74eae4842935dd04cdcce339af17bc8b0c0ecc50edd4403ff32b2 SHA512 f71cd6f053a5b2b5e466d2e87e2f949f4047b2fbeef7673adcb4a04b2c2eb595f2592c5a2df84717337577438444cc0d76ff06c1ee163e9ca96b47b4b4411910
EBUILD qemu-8.0.5.ebuild 27371 BLAKE2B ef4fe77f039a7d5b719c7f39a546b266516a6b8010e36dce9399ade633af68c3e9045040d0bebdb9a78e7f9bb91eaff438aea521eeb06b256664f8175fc0b301 SHA512 c2ae3827dfb00e51916d136d7b6832f95b7930ee19950d0adb58f87e5f1de3d02dee18e110fd8a3a7fad504279007efa046ca80d9a5cef903babf70f24ba0d4b
EBUILD qemu-8.1.0-r1.ebuild 27148 BLAKE2B 3e43837b088de370e9e61b42e6a0babc4232375e2799066d790a776a352903803e28b370eae98fbf497235b72816db855d5b0d44515b479c3a3de9e645393a55 SHA512 054af163b83225a2d16f9a230124b44be5ee182305f4901662094eabf9ee1e2207abe22eabbf8adb64c64e6e37f09b5b6381e289c8b8af88ed017afa42dd7d45
EBUILD qemu-8.1.1.ebuild 27173 BLAKE2B 7c2f331829f9a8a8870d375de788fb518faa0b3546f438ecdc3b76af6ab2db49dff4f5fea0fd654843c833ca224608d0819168616cbb25857743a927df7856b4 SHA512 fde2e2945aa01a975a1401f2a0bb2197ed14d056eee31fa0c9ce4dcd0567168cca5c65ff5d1c1b200c880b30463297cadc42184c8a79c01511e85371b91109c5
EBUILD qemu-9999.ebuild 27216 BLAKE2B a2478b0dfb1dd421e6a4eb898f094416e4437bed8487145467f56499a84f3b5134f8046b9f37f2e27404150819f2c1a72596f3a3e876a177947f7f0b9ae5ca04 SHA512 cc19a6e4bc4114a8c8f7e44fa2c5636760f0952511b835ffff0230a0f716934a1c1651093aeb3653fe4fe83818d303eeb4b0bba59135e65fec97eef81edaa1a1
MISC metadata.xml 4323 BLAKE2B 6e28c4719b95f6f0f3f9c699c05925d87197e0d3c6882b782e1aab9beda1e9715a2329849a692bb7debdabbf9ccd1e59648611942c72ea89a0dd05e99ae14618 SHA512 beb497dcf2e1d5fcd757c83312425c1fe47d712523940d596c141eacca55ddaf9d30fd3adb481a54a0acacedae5bc69e03349e6f8636f96d919330e12f70f099

@ -0,0 +1,972 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-qemu-docs
# Set to 1 if prebuilt, 0 if not
# (the construct below is to allow overriding from env for script)
QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1}
QEMU_DOCS_PREBUILT_DEV=ajak
QEMU_DOCS_VERSION="7.2.0"
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
# bug #830088
QEMU_DOC_USEFLAG="+doc"
PYTHON_COMPAT=( python3_{9,10,11} )
PYTHON_REQ_USE="ncurses,readline"
FIRMWARE_ABI_VERSION="7.2.0"
inherit linux-info toolchain-funcs python-r1 udev fcaps readme.gentoo-r1 \
pax-utils xdg-utils
if [[ ${PV} == *9999* ]]; then
QEMU_DOCS_PREBUILT=0
EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/"
EGIT_SUBMODULES=(
tests/fp/berkeley-softfloat-3
tests/fp/berkeley-testfloat-3
ui/keycodemapdb
)
inherit git-r3
SRC_URI=""
else
MY_P="${PN}-${PV/_rc/-rc}"
SRC_URI="https://download.qemu.org/${MY_P}.tar.xz"
if [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${QEMU_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${QEMU_DOCS_VERSION}-docs.tar.xz )"
fi
S="${WORKDIR}/${MY_P}"
[[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
[[ ${QEMU_DOCS_PREBUILT} == 1 ]] && QEMU_DOC_USEFLAG="doc"
IUSE="accessibility +aio alsa bpf bzip2 capstone +curl debug ${QEMU_DOC_USEFLAG}
+fdt fuse glusterfs +gnutls gtk infiniband iscsi io-uring
jack jemalloc +jpeg
lzo multipath
ncurses nfs nls numa opengl +oss pam +pin-upstream-blobs
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
+slirp
smartcard snappy spice ssh static static-user systemtap test udev usb
usbredir vde +vhost-net virgl virtfs +vnc vte xattr xen
zstd"
COMMON_TARGETS="
aarch64
alpha
arm
cris
hppa
i386
loongarch64
m68k
microblaze
microblazeel
mips
mips64
mips64el
mipsel
nios2
or1k
ppc
ppc64
riscv32
riscv64
s390x
sh4
sh4eb
sparc
sparc64
x86_64
xtensa
xtensaeb
"
IUSE_SOFTMMU_TARGETS="
${COMMON_TARGETS}
avr
rx
tricore
"
IUSE_USER_TARGETS="
${COMMON_TARGETS}
aarch64_be
armeb
hexagon
mipsn32
mipsn32el
ppc64le
sparc32plus
"
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
RESTRICT="!test? ( test )"
# Allow no targets to be built so that people can get a tools-only build.
# Block USE flag configurations known to not work.
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
qemu_softmmu_targets_arm? ( fdt )
qemu_softmmu_targets_microblaze? ( fdt )
qemu_softmmu_targets_mips64el? ( fdt )
qemu_softmmu_targets_ppc64? ( fdt )
qemu_softmmu_targets_ppc? ( fdt )
qemu_softmmu_targets_riscv32? ( fdt )
qemu_softmmu_targets_riscv64? ( fdt )
qemu_softmmu_targets_x86_64? ( fdt )
sdl-image? ( sdl )
static? ( static-user !alsa !gtk !jack !opengl !pam !pulseaudio !plugins !rbd !snappy !udev )
static-user? ( !plugins )
virgl? ( opengl )
virtfs? ( xattr )
vnc? ( gnutls )
vte? ( gtk )
multipath? ( udev )
plugins? ( !static !static-user )
"
for smname in ${IUSE_SOFTMMU_TARGETS} ; do
REQUIRED_USE+=" qemu_softmmu_targets_${smname}? ( seccomp ) "
done
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# and user/softmmu targets (qemu-*, qemu-system-*).
#
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
#
# The attr lib isn't always linked in (although the USE flag is always
# respected). This is because qemu supports using the C library's API
# when available rather than always using the external library.
ALL_DEPEND="
dev-libs/glib:2[static-libs(+)]
sys-libs/zlib[static-libs(+)]
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
xattr? ( sys-apps/attr[static-libs(+)] )"
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# softmmu targets (qemu-system-*).
SOFTMMU_TOOLS_DEPEND="
sys-libs/libcap-ng[static-libs(+)]
>=x11-libs/pixman-0.28.0[static-libs(+)]
accessibility? (
app-accessibility/brltty[api]
app-accessibility/brltty[static-libs(+)]
)
aio? ( dev-libs/libaio[static-libs(+)] )
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bpf? ( dev-libs/libbpf:= )
bzip2? ( app-arch/bzip2[static-libs(+)] )
capstone? ( dev-libs/capstone:=[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
fdt? ( >=sys-apps/dtc-1.5.1[static-libs(+)] )
fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] )
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
gnutls? (
>=net-libs/gnutls-3.0:=[static-libs(+)]
dev-libs/nettle:=[static-libs(+)]
)
gtk? (
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libX11
vte? ( x11-libs/vte:2.91 )
)
infiniband? ( sys-cluster/rdma-core[static-libs(+)] )
iscsi? ( net-libs/libiscsi )
io-uring? ( sys-libs/liburing:=[static-libs(+)] )
jack? ( virtual/jack )
jemalloc? ( dev-libs/jemalloc )
jpeg? ( media-libs/libjpeg-turbo:=[static-libs(+)] )
lzo? ( dev-libs/lzo:2[static-libs(+)] )
multipath? ( sys-fs/multipath-tools )
ncurses? (
sys-libs/ncurses:=[unicode(+)]
sys-libs/ncurses:=[static-libs(+)]
)
nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
numa? ( sys-process/numactl[static-libs(+)] )
opengl? (
virtual/opengl
media-libs/libepoxy[static-libs(+)]
media-libs/mesa[static-libs(+)]
media-libs/mesa[egl(+),gbm(+)]
)
pam? ( sys-libs/pam )
png? ( media-libs/libpng:0=[static-libs(+)] )
pulseaudio? ( media-libs/libpulse )
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? (
media-libs/libsdl2[video]
media-libs/libsdl2[static-libs(+)]
)
sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
slirp? ( net-libs/libslirp[static-libs(+)] )
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
snappy? ( app-arch/snappy:= )
spice? (
>=app-emulation/spice-protocol-0.12.3
>=app-emulation/spice-0.12.0[static-libs(+)]
)
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
udev? ( virtual/libudev:= )
usb? ( >=virtual/libusb-1-r2:1[static-libs(+)] )
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
virgl? ( media-libs/virglrenderer[static-libs(+)] )
virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools:= )
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
"
EDK2_OVMF_VERSION="202202"
SEABIOS_VERSION="1.16.0"
X86_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
~sys-firmware/ipxe-1.21.1[binary,qemu]
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
~sys-firmware/sgabios-0.1_pre10[binary]
)
!pin-upstream-blobs? (
|| (
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
)
sys-firmware/ipxe[qemu]
|| (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
sys-firmware/sgabios
)"
PPC_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
!pin-upstream-blobs? (
|| (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
)
"
BDEPEND="
$(python_gen_impl_dep)
dev-lang/perl
dev-util/meson
sys-apps/texinfo
virtual/pkgconfig
doc? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
)
gtk? ( nls? ( sys-devel/gettext ) )
test? (
dev-libs/glib[utils]
sys-devel/bc
)
"
CDEPEND="
!static? (
${ALL_DEPEND//\[static-libs(+)]}
${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
)
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
"
DEPEND="${CDEPEND}
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? (
${ALL_DEPEND}
${SOFTMMU_TOOLS_DEPEND}
)
static-user? ( ${ALL_DEPEND} )"
RDEPEND="${CDEPEND}
acct-group/kvm
selinux? (
sec-policy/selinux-qemu
sys-libs/libselinux
)"
PATCHES=(
"${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
"${FILESDIR}"/${PN}-6.0.0-make.patch
"${FILESDIR}"/${PN}-7.1.0-also-build-virtfs-proxy-helper.patch
"${FILESDIR}"/${PN}-7.1.0-capstone-include-path.patch
"${FILESDIR}"/${PN}-7.2.0-disable-gmp.patch
"${FILESDIR}"/${PN}-7.2.0-linux-headers-6.2-glibc-2.36.patch
)
QA_PREBUILT="
usr/share/qemu/hppa-firmware.img
usr/share/qemu/openbios-ppc
usr/share/qemu/openbios-sparc64
usr/share/qemu/openbios-sparc32
usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu/palcode-clipper
usr/share/qemu/s390-ccw.img
usr/share/qemu/s390-netboot.img
usr/share/qemu/u-boot.e500
"
QA_WX_LOAD="usr/bin/qemu-i386
usr/bin/qemu-x86_64
usr/bin/qemu-alpha
usr/bin/qemu-arm
usr/bin/qemu-cris
usr/bin/qemu-m68k
usr/bin/qemu-microblaze
usr/bin/qemu-microblazeel
usr/bin/qemu-mips
usr/bin/qemu-mipsel
usr/bin/qemu-or1k
usr/bin/qemu-ppc
usr/bin/qemu-ppc64
usr/bin/qemu-sh4
usr/bin/qemu-sh4eb
usr/bin/qemu-sparc
usr/bin/qemu-sparc64
usr/bin/qemu-armeb
usr/bin/qemu-sparc32plus
usr/bin/qemu-s390x
usr/bin/qemu-unicore32
"
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
kernel module loaded before running kvm. The easiest way to ensure that the
kernel module is loaded is to load it on boot.
For AMD CPUs the module is called 'kvm-amd'.
For Intel CPUs the module is called 'kvm-intel'.
Please review /etc/conf.d/modules for how to load these.
Make sure your user is in the 'kvm' group. Just run
$ gpasswd -a <USER> kvm
then have <USER> re-login.
For brand new installs, the default permissions on /dev/kvm might not let
you access it. You can tell udev to reset ownership/perms:
$ udevadm trigger -c add /dev/kvm
If you want to register binfmt handlers for qemu user targets:
For openrc:
# rc-update add qemu-binfmt
For systemd:
# ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
pkg_pretend() {
if use kernel_linux && kernel_is lt 2 6 25; then
eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
elif use kernel_linux; then
if ! linux_config_exists; then
eerror "Unable to check your kernel for KVM support"
else
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
ERROR_KVM="You must enable KVM in your kernel to continue"
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
ERROR_KVM_AMD+=" your kernel configuration."
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
ERROR_TUN+=" into your kernel or loaded as a module to use the"
ERROR_TUN+=" virtual network device if using -net tap."
ERROR_BRIDGE="You will also need support for 802.1d"
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
ERROR_VHOST_NET+=" support"
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
if grep -q AuthenticAMD /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_AMD"
elif grep -q GenuineIntel /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_INTEL"
fi
fi
use python && CONFIG_CHECK+=" ~DEBUG_FS"
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
# Now do the actual checks setup above
check_extra_config
fi
fi
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
eerror "instances are still pointing to it. Please update your"
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
eerror "and the right system binary (e.g. qemu-system-x86_64)."
die "update your virt configs to not use qemu-kvm"
fi
}
# Sanity check to make sure target lists are kept up-to-date.
check_targets() {
local var=$1 mak=$2
local detected sorted
pushd "${S}"/configs/targets/ >/dev/null || die
# Force C locale until glibc is updated. #564936
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
if [[ ${sorted} != "${detected}" ]] ; then
eerror "The ebuild needs to be kept in sync."
eerror "${var}: ${sorted}"
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
die "sync ${var} to the list of targets"
fi
popd >/dev/null
}
src_prepare() {
check_targets IUSE_SOFTMMU_TARGETS softmmu
check_targets IUSE_USER_TARGETS linux-user
default
# Use correct toolchain to fix cross-compiling
tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
export WINDRES=${CHOST}-windres
# Verbose builds
MAKEOPTS+=" V=1"
# We already force -D_FORTIFY_SOURCE=2 (or 3) in our toolchain, but
# this setting (-U then -D..=2) will prevent us from trying out 3, so
# drop it. No change to level of protection b/c we patch our toolchain.
sed -i -e 's/-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2//' configure || die
# Remove bundled modules
rm -r dtc meson roms/*/ || die
}
##
# configures qemu based on the build directory and the build type
# we are using.
#
qemu_src_configure() {
debug-print-function ${FUNCNAME} "$@"
local buildtype=$1
local builddir="${S}/${buildtype}-build"
mkdir "${builddir}" || die
local conf_opts=(
--prefix=/usr
--sysconfdir=/etc
--bindir=/usr/bin
--libdir=/usr/$(get_libdir)
--datadir=/usr/share
--docdir=/usr/share/doc/${PF}/html
--mandir=/usr/share/man
--localstatedir=/var
--disable-bsd-user
--disable-containers # bug #732972
--disable-guest-agent
--disable-strip
--with-git-submodules=ignore
# bug #746752: TCG interpreter has a few limitations:
# - it does not support FPU
# - it's generally slower on non-self-modifying code
# It's advantage is support for host architectures
# where native codegeneration is not implemented.
# Gentoo has qemu keyworded only on targets with
# native code generation available. Avoid the interpreter.
--disable-tcg-interpreter
--disable-werror
# We support gnutls/nettle for crypto operations. It is possible
# to use gcrypt when gnutls/nettle are disabled (but not when they
# are enabled), but it's not really worth the hassle. Disable it
# all the time to avoid automatically detecting it. #568856
--disable-gcrypt
--cc="$(tc-getCC)"
--cxx="$(tc-getCXX)"
--host-cc="$(tc-getBUILD_CC)"
$(use_enable alsa)
$(use_enable debug debug-info)
$(use_enable debug debug-tcg)
$(use_enable jack)
$(use_enable nls gettext)
$(use_enable oss)
$(use_enable plugins)
$(use_enable pulseaudio pa)
$(use_enable selinux)
$(use_enable xattr attr)
)
# Disable options not used by user targets. This simplifies building
# static user targets (USE=static-user) considerably.
conf_notuser() {
if [[ ${buildtype} == "user" ]] ; then
echo "--disable-${2:-$1}"
else
use_enable "$@"
fi
}
# Enable option only for softmmu build, but not 'user' or 'tools'
conf_softmmu() {
if [[ ${buildtype} == "softmmu" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Enable option only for tools build, but not 'user' or 'softmmu'
conf_tools() {
if [[ ${buildtype} == "tools" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Special case for the malloc flag, because the --disable flag does
# not exist and trying like above will break configuring.
conf_malloc() {
if [[ ! ${buildtype} == "user" ]] ; then
usex "${1}" "--enable-malloc=${1}" ""
fi
}
conf_opts+=(
$(conf_notuser accessibility brlapi)
$(conf_notuser aio linux-aio)
$(conf_softmmu bpf)
$(conf_notuser bzip2)
$(conf_notuser capstone)
$(conf_notuser curl)
$(conf_tools doc docs)
$(conf_notuser fdt)
$(conf_notuser fuse)
$(conf_notuser glusterfs)
$(conf_notuser gnutls)
$(conf_notuser gnutls nettle)
$(conf_notuser gtk)
$(conf_notuser infiniband rdma)
$(conf_notuser iscsi libiscsi)
$(conf_notuser io-uring linux-io-uring)
$(conf_malloc jemalloc)
$(conf_notuser jpeg vnc-jpeg)
$(conf_notuser kernel_linux kvm)
$(conf_notuser lzo)
$(conf_notuser multipath mpath)
$(conf_notuser ncurses curses)
$(conf_notuser nfs libnfs)
$(conf_notuser numa)
$(conf_notuser opengl)
$(conf_notuser pam auth-pam)
$(conf_notuser png)
$(conf_notuser rbd)
$(conf_notuser sasl vnc-sasl)
$(conf_notuser sdl)
$(conf_softmmu sdl-image)
$(conf_notuser seccomp)
$(conf_notuser slirp)
$(conf_notuser smartcard)
$(conf_notuser snappy)
$(conf_notuser spice)
$(conf_notuser ssh libssh)
$(conf_notuser udev libudev)
$(conf_notuser usb libusb)
$(conf_notuser usbredir usb-redir)
$(conf_notuser vde)
$(conf_notuser vhost-net)
$(conf_notuser virgl virglrenderer)
$(conf_softmmu virtfs)
$(conf_notuser vnc)
$(conf_notuser vte)
$(conf_notuser xen)
$(conf_notuser xen xen-pci-passthrough)
# use prebuilt keymaps, bug #759604
--disable-xkbcommon
$(conf_notuser zstd)
)
if [[ ! ${buildtype} == "user" ]] ; then
# audio options
local audio_opts=(
# Note: backend order matters here: #716202
# We iterate from higher-level to lower level.
$(usex pulseaudio pa "")
$(usev jack)
$(usev sdl)
$(usev alsa)
$(usev oss)
)
conf_opts+=(
--audio-drv-list=$(IFS=,; echo "${audio_opts[*]}")
)
fi
case ${buildtype} in
user)
conf_opts+=(
--enable-linux-user
--disable-system
--disable-blobs
--disable-tools
--disable-cap-ng
--disable-seccomp
)
local static_flag="static-user"
;;
softmmu)
conf_opts+=(
--disable-linux-user
--enable-system
--disable-tools
--enable-cap-ng
--enable-seccomp
)
local static_flag="static"
;;
tools)
conf_opts+=(
--disable-linux-user
--disable-system
--disable-blobs
--enable-tools
--enable-cap-ng
)
local static_flag="static"
;;
esac
local targets="${buildtype}_targets"
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
# Add support for SystemTAP
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
# We always want to attempt to build with PIE support as it results
# in a more secure binary. But it doesn't work with static or if
# the current GCC doesn't have PIE support.
if use ${static_flag}; then
conf_opts+=( --static --disable-pie )
else
tc-enables-pie && conf_opts+=( --enable-pie )
fi
# Meson will not use a cross-file unless cross_prefix is set.
tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" )
# Plumb through equivalent of EXTRA_ECONF to allow experiments
# like bug #747928.
conf_opts+=( ${EXTRA_CONF_QEMU} )
echo "../configure ${conf_opts[*]}"
cd "${builddir}"
../configure "${conf_opts[@]}" || die "configure failed"
}
src_configure() {
local target
python_setup
softmmu_targets= softmmu_bins=()
user_targets= user_bins=()
for target in ${IUSE_SOFTMMU_TARGETS} ; do
if use "qemu_softmmu_targets_${target}"; then
softmmu_targets+=",${target}-softmmu"
softmmu_bins+=( "qemu-system-${target}" )
fi
done
for target in ${IUSE_USER_TARGETS} ; do
if use "qemu_user_targets_${target}"; then
user_targets+=",${target}-linux-user"
user_bins+=( "qemu-${target}" )
fi
done
softmmu_targets=${softmmu_targets#,}
user_targets=${user_targets#,}
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
[[ -n ${user_targets} ]] && qemu_src_configure "user"
qemu_src_configure "tools"
}
src_compile() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build" || die
default
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build" || die
default
fi
cd "${S}/tools-build" || die
default
}
src_test() {
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build" || die
pax-mark m */qemu-system-* #515550
emake check
fi
}
qemu_python_install() {
python_domodule "${S}/python/qemu"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/scripts/qmp/qmp-shell"
python_doscript "${S}/scripts/qmp/qemu-ga-client"
}
# Generate binfmt support files.
# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
generate_initd() {
local out="${T}/qemu-binfmt"
local out_systemd="${T}/qemu.conf"
local d="${T}/binfmt.d"
einfo "Generating qemu binfmt scripts and configuration files"
# Generate the debian fragments first.
mkdir -p "${d}"
"${S}"/scripts/qemu-binfmt-conf.sh \
--debian \
--exportdir "${d}" \
--qemu-path "${EPREFIX}/usr/bin" \
|| die
# Then turn the fragments into a shell script we can source.
sed -E -i \
-e 's:^([^ ]+) (.*)$:\1="\2":' \
"${d}"/* || die
# Generate the init.d script by assembling the fragments from above.
local f qcpu package interpreter magic mask
cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
for f in "${d}"/qemu-* ; do
source "${f}"
# Normalize the cpu logic like we do in the init.d for the native cpu.
qcpu=${package#qemu-}
case ${qcpu} in
arm*) qcpu="arm";;
mips*) qcpu="mips";;
ppc*) qcpu="ppc";;
s390*) qcpu="s390";;
sh*) qcpu="sh";;
sparc*) qcpu="sparc";;
esac
# we use 'printf' here to be portable across 'sh'
# implementations: #679168
cat <<EOF >>"${out}"
if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
fi
EOF
echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
done
cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
}
src_install() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build"
emake DESTDIR="${ED}" install
# Install binfmt handler init script for user targets.
generate_initd
doinitd "${T}/qemu-binfmt"
# Install binfmt/qemu.conf.
insinto "/usr/share/qemu/binfmt.d"
doins "${T}/qemu.conf"
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
emake DESTDIR="${ED}" install
# This might not exist if the test failed. #512010
[[ -e check-report.html ]] && dodoc check-report.html
if use kernel_linux; then
udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules
fi
if use python; then
python_foreach_impl qemu_python_install
fi
fi
cd "${S}/tools-build" || die
emake DESTDIR="${ED}" install
# If USE=doc, there'll be newly generated docs which we install instead.
if ! use doc && [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
doman "${WORKDIR}"/${PN}-${QEMU_DOCS_VERSION}-docs/docs/*.[0-8]
fi
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
pushd "${ED}"/usr/bin >/dev/null || die
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
popd >/dev/null || die
# Install config file example for qemu-bridge-helper
insinto "/etc/qemu"
doins "${FILESDIR}/bridge.conf"
cd "${S}" || die
dodoc MAINTAINERS docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios
# Disallow stripping of prebuilt firmware files.
dostrip -x ${QA_PREBUILT}
if [[ -n ${softmmu_targets} ]]; then
# Remove SeaBIOS since we're using the SeaBIOS packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
fi
# Remove vgabios since we're using the seavgabios packaged one
rm "${ED}/usr/share/qemu/vgabios.bin"
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
# PPC/PPC64 loads vgabios-stdvga
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
fi
# Remove sgabios since we're using the sgabios packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
fi
# Remove iPXE since we're using the iPXE packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
fi
fi
DISABLE_AUTOFORMATTING=true
readme.gentoo_create_doc
}
firmware_abi_change() {
local pv
for pv in ${REPLACING_VERSIONS}; do
if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then
return 0
fi
done
return 1
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
udev_reload
fi
xdg_icon_cache_update
[[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
fcaps cap_net_admin "${EROOT}"/usr/libexec/qemu-bridge-helper
DISABLE_AUTOFORMATTING=true
readme.gentoo_print_elog
if use pin-upstream-blobs && firmware_abi_change; then
ewarn "This version of qemu pins new versions of firmware blobs:"
if has_version 'sys-firmware/edk2-ovmf-bin'; then
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
else
ewarn " $(best_version sys-firmware/edk2-ovmf)"
fi
if has_version 'sys-firmware/seabios-bin'; then
ewarn " $(best_version sys-firmware/seabios-bin)"
else
ewarn " $(best_version sys-firmware/seabios)"
fi
ewarn " $(best_version sys-firmware/ipxe)"
ewarn " $(best_version sys-firmware/sgabios)"
ewarn "This might break resume of hibernated guests (started with a different"
ewarn "firmware version) and live migration to/from qemu versions with different"
ewarn "firmware. Please (cold) restart all running guests. For functional"
ewarn "guest migration ensure that all"
ewarn "hosts run at least"
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
fi
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
if has_version 'sys-firmware/edk2-ovmf-bin'; then
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
else
echo " $(best_version sys-firmware/edk2-ovmf)"
fi
if has_version 'sys-firmware/seabios-bin'; then
echo " $(best_version sys-firmware/seabios-bin)"
else
echo " $(best_version sys-firmware/seabios)"
fi
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/sgabios)"
}
pkg_postrm() {
xdg_icon_cache_update
udev_reload
}

@ -0,0 +1,970 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-qemu-docs
# Set to 1 if prebuilt, 0 if not
# (the construct below is to allow overriding from env for script)
QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1}
QEMU_DOCS_PREBUILT_DEV=sam
QEMU_DOCS_VERSION="8.0.0"
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
# bug #830088
QEMU_DOC_USEFLAG="+doc"
PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="ncurses,readline"
FIRMWARE_ABI_VERSION="7.2.0"
inherit linux-info toolchain-funcs python-r1 udev fcaps readme.gentoo-r1 \
pax-utils xdg-utils
if [[ ${PV} == *9999* ]]; then
QEMU_DOCS_PREBUILT=0
EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/"
EGIT_SUBMODULES=(
tests/fp/berkeley-softfloat-3
tests/fp/berkeley-testfloat-3
ui/keycodemapdb
)
inherit git-r3
SRC_URI=""
else
MY_P="${PN}-${PV/_rc/-rc}"
SRC_URI="https://download.qemu.org/${MY_P}.tar.xz"
if [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${QEMU_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${QEMU_DOCS_VERSION}-docs.tar.xz )"
fi
S="${WORKDIR}/${MY_P}"
[[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
[[ ${QEMU_DOCS_PREBUILT} == 1 ]] && QEMU_DOC_USEFLAG="doc"
IUSE="accessibility +aio alsa bpf bzip2 capstone +curl debug ${QEMU_DOC_USEFLAG}
+fdt fuse glusterfs +gnutls gtk infiniband iscsi io-uring
jack jemalloc +jpeg
lzo multipath
ncurses nfs nls numa opengl +oss pam +pin-upstream-blobs
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
+slirp
smartcard snappy spice ssh static-user systemtap test udev usb
usbredir vde +vhost-net virgl virtfs +vnc vte xattr xen
zstd"
COMMON_TARGETS="
aarch64
alpha
arm
cris
hppa
i386
loongarch64
m68k
microblaze
microblazeel
mips
mips64
mips64el
mipsel
nios2
or1k
ppc
ppc64
riscv32
riscv64
s390x
sh4
sh4eb
sparc
sparc64
x86_64
xtensa
xtensaeb
"
IUSE_SOFTMMU_TARGETS="
${COMMON_TARGETS}
avr
rx
tricore
"
IUSE_USER_TARGETS="
${COMMON_TARGETS}
aarch64_be
armeb
hexagon
mipsn32
mipsn32el
ppc64le
sparc32plus
"
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
RESTRICT="!test? ( test )"
# Allow no targets to be built so that people can get a tools-only build.
# Block USE flag configurations known to not work.
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
qemu_softmmu_targets_arm? ( fdt )
qemu_softmmu_targets_microblaze? ( fdt )
qemu_softmmu_targets_mips64el? ( fdt )
qemu_softmmu_targets_ppc64? ( fdt )
qemu_softmmu_targets_ppc? ( fdt )
qemu_softmmu_targets_riscv32? ( fdt )
qemu_softmmu_targets_riscv64? ( fdt )
qemu_softmmu_targets_x86_64? ( fdt )
sdl-image? ( sdl )
static-user? ( !plugins )
virgl? ( opengl )
virtfs? ( xattr )
vnc? ( gnutls )
vte? ( gtk )
multipath? ( udev )
plugins? ( !static-user )
"
for smname in ${IUSE_SOFTMMU_TARGETS} ; do
REQUIRED_USE+=" qemu_softmmu_targets_${smname}? ( kernel_linux? ( seccomp ) )"
done
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# and user/softmmu targets (qemu-*, qemu-system-*).
#
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
#
# The attr lib isn't always linked in (although the USE flag is always
# respected). This is because qemu supports using the C library's API
# when available rather than always using the external library.
ALL_DEPEND="
dev-libs/glib:2[static-libs(+)]
sys-libs/zlib[static-libs(+)]
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
xattr? ( sys-apps/attr[static-libs(+)] )
"
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# softmmu targets (qemu-system-*).
SOFTMMU_TOOLS_DEPEND="
>=x11-libs/pixman-0.28.0[static-libs(+)]
accessibility? (
app-accessibility/brltty[api]
app-accessibility/brltty[static-libs(+)]
)
aio? ( dev-libs/libaio[static-libs(+)] )
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bpf? ( dev-libs/libbpf:= )
bzip2? ( app-arch/bzip2[static-libs(+)] )
capstone? ( dev-libs/capstone:=[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
fdt? ( >=sys-apps/dtc-1.5.1[static-libs(+)] )
fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] )
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
gnutls? (
>=net-libs/gnutls-3.0:=[static-libs(+)]
dev-libs/nettle:=[static-libs(+)]
)
gtk? (
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libX11
vte? ( x11-libs/vte:2.91 )
)
infiniband? ( sys-cluster/rdma-core[static-libs(+)] )
iscsi? ( net-libs/libiscsi )
io-uring? ( sys-libs/liburing:=[static-libs(+)] )
jack? ( virtual/jack )
jemalloc? ( dev-libs/jemalloc )
jpeg? ( media-libs/libjpeg-turbo:=[static-libs(+)] )
kernel_linux? ( sys-libs/libcap-ng[static-libs(+)] )
lzo? ( dev-libs/lzo:2[static-libs(+)] )
multipath? ( sys-fs/multipath-tools )
ncurses? (
sys-libs/ncurses:=[unicode(+)]
sys-libs/ncurses:=[static-libs(+)]
)
nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
numa? ( sys-process/numactl[static-libs(+)] )
opengl? (
virtual/opengl
media-libs/libepoxy[static-libs(+)]
media-libs/mesa[static-libs(+)]
media-libs/mesa[egl(+),gbm(+)]
)
pam? ( sys-libs/pam )
png? ( >=media-libs/libpng-1.6.34:=[static-libs(+)] )
pulseaudio? ( media-libs/libpulse )
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? (
media-libs/libsdl2[video]
media-libs/libsdl2[static-libs(+)]
)
sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
slirp? ( net-libs/libslirp[static-libs(+)] )
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
snappy? ( app-arch/snappy:= )
spice? (
>=app-emulation/spice-protocol-0.14.0
>=app-emulation/spice-0.14.0[static-libs(+)]
)
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
udev? ( virtual/libudev:= )
usb? ( >=virtual/libusb-1-r2:1[static-libs(+)] )
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
virgl? ( media-libs/virglrenderer[static-libs(+)] )
virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools:= )
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
"
EDK2_OVMF_VERSION="202202"
SEABIOS_VERSION="1.16.0"
X86_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
~sys-firmware/ipxe-1.21.1[binary,qemu]
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
~sys-firmware/sgabios-0.1_pre10[binary]
)
!pin-upstream-blobs? (
|| (
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
)
sys-firmware/ipxe[qemu]
|| (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
sys-firmware/sgabios
)
"
PPC_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
!pin-upstream-blobs? (
|| (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
)
"
BDEPEND="
$(python_gen_impl_dep)
dev-lang/perl
dev-util/meson
sys-apps/texinfo
virtual/pkgconfig
doc? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
)
gtk? ( nls? ( sys-devel/gettext ) )
test? (
dev-libs/glib[utils]
sys-devel/bc
)
"
CDEPEND="
${ALL_DEPEND//\[static-libs(+)]}
${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
"
DEPEND="
${CDEPEND}
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static-user? ( ${ALL_DEPEND} )
"
RDEPEND="
${CDEPEND}
acct-group/kvm
selinux? (
sec-policy/selinux-qemu
sys-libs/libselinux
)
"
PATCHES=(
"${FILESDIR}"/${PN}-8.0.0-disable-keymap.patch
"${FILESDIR}"/${PN}-8.0.0-make.patch
"${FILESDIR}"/${PN}-7.1.0-also-build-virtfs-proxy-helper.patch
"${FILESDIR}"/${PN}-7.1.0-capstone-include-path.patch
"${FILESDIR}"/${PN}-7.2.0-disable-gmp.patch
"${FILESDIR}"/${PN}-8.0.0-remove-python-meson-check.patch
)
QA_PREBUILT="
usr/share/qemu/hppa-firmware.img
usr/share/qemu/openbios-ppc
usr/share/qemu/openbios-sparc64
usr/share/qemu/openbios-sparc32
usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu/palcode-clipper
usr/share/qemu/s390-ccw.img
usr/share/qemu/s390-netboot.img
usr/share/qemu/u-boot.e500
"
QA_WX_LOAD="
usr/bin/qemu-i386
usr/bin/qemu-x86_64
usr/bin/qemu-alpha
usr/bin/qemu-arm
usr/bin/qemu-cris
usr/bin/qemu-m68k
usr/bin/qemu-microblaze
usr/bin/qemu-microblazeel
usr/bin/qemu-mips
usr/bin/qemu-mipsel
usr/bin/qemu-or1k
usr/bin/qemu-ppc
usr/bin/qemu-ppc64
usr/bin/qemu-sh4
usr/bin/qemu-sh4eb
usr/bin/qemu-sparc
usr/bin/qemu-sparc64
usr/bin/qemu-armeb
usr/bin/qemu-sparc32plus
usr/bin/qemu-s390x
usr/bin/qemu-unicore32
"
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
kernel module loaded before running kvm. The easiest way to ensure that the
kernel module is loaded is to load it on boot.
For AMD CPUs the module is called 'kvm-amd'.
For Intel CPUs the module is called 'kvm-intel'.
Please review /etc/conf.d/modules for how to load these.
Make sure your user is in the 'kvm' group. Just run
$ gpasswd -a <USER> kvm
then have <USER> re-login.
For brand new installs, the default permissions on /dev/kvm might not let
you access it. You can tell udev to reset ownership/perms:
$ udevadm trigger -c add /dev/kvm
If you want to register binfmt handlers for qemu user targets:
For openrc:
# rc-update add qemu-binfmt
For systemd:
# ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
pkg_pretend() {
if use kernel_linux && kernel_is lt 2 6 25; then
eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
elif use kernel_linux; then
if ! linux_config_exists; then
eerror "Unable to check your kernel for KVM support"
else
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
ERROR_KVM="You must enable KVM in your kernel to continue"
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
ERROR_KVM_AMD+=" your kernel configuration."
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
ERROR_TUN+=" into your kernel or loaded as a module to use the"
ERROR_TUN+=" virtual network device if using -net tap."
ERROR_BRIDGE="You will also need support for 802.1d"
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
ERROR_VHOST_NET+=" support"
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
if grep -q AuthenticAMD /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_AMD"
elif grep -q GenuineIntel /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_INTEL"
fi
fi
use python && CONFIG_CHECK+=" ~DEBUG_FS"
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
# Now do the actual checks setup above
check_extra_config
fi
fi
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
eerror "instances are still pointing to it. Please update your"
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
eerror "and the right system binary (e.g. qemu-system-x86_64)."
die "update your virt configs to not use qemu-kvm"
fi
}
# Sanity check to make sure target lists are kept up-to-date.
check_targets() {
local var=$1 mak=$2
local detected sorted
pushd "${S}"/configs/targets/ >/dev/null || die
# Force C locale until glibc is updated. #564936
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
if [[ ${sorted} != "${detected}" ]] ; then
eerror "The ebuild needs to be kept in sync."
eerror "${var}: ${sorted}"
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
die "sync ${var} to the list of targets"
fi
popd >/dev/null
}
src_prepare() {
check_targets IUSE_SOFTMMU_TARGETS softmmu
check_targets IUSE_USER_TARGETS linux-user
default
# Use correct toolchain to fix cross-compiling
tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
export WINDRES=${CHOST}-windres
# Verbose builds
MAKEOPTS+=" V=1"
# We already force -D_FORTIFY_SOURCE=2 (or 3) in our toolchain, but
# this setting (-U then -D..=2) will prevent us from trying out 3, so
# drop it. No change to level of protection b/c we patch our toolchain.
sed -i -e 's/-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2//' configure || die
# Remove bundled modules
rm -r dtc meson roms/*/ || die
}
##
# configures qemu based on the build directory and the build type
# we are using.
#
qemu_src_configure() {
debug-print-function ${FUNCNAME} "$@"
local buildtype=$1
local builddir="${S}/${buildtype}-build"
mkdir "${builddir}" || die
local conf_opts=(
--prefix=/usr
--sysconfdir=/etc
--bindir=/usr/bin
--libdir=/usr/$(get_libdir)
--datadir=/usr/share
--docdir=/usr/share/doc/${PF}/html
--mandir=/usr/share/man
--localstatedir=/var
--disable-bsd-user
--disable-containers # bug #732972
--disable-guest-agent
--disable-strip
--with-git-submodules=ignore
# bug #746752: TCG interpreter has a few limitations:
# - it does not support FPU
# - it's generally slower on non-self-modifying code
# It's advantage is support for host architectures
# where native codegeneration is not implemented.
# Gentoo has qemu keyworded only on targets with
# native code generation available. Avoid the interpreter.
--disable-tcg-interpreter
--disable-werror
# We support gnutls/nettle for crypto operations. It is possible
# to use gcrypt when gnutls/nettle are disabled (but not when they
# are enabled), but it's not really worth the hassle. Disable it
# all the time to avoid automatically detecting it. #568856
--disable-gcrypt
--cc="$(tc-getCC)"
--cxx="$(tc-getCXX)"
--host-cc="$(tc-getBUILD_CC)"
$(use_enable alsa)
$(use_enable debug debug-info)
$(use_enable debug debug-tcg)
$(use_enable jack)
$(use_enable nls gettext)
$(use_enable oss)
$(use_enable plugins)
$(use_enable pulseaudio pa)
$(use_enable selinux)
$(use_enable xattr attr)
)
# Disable options not used by user targets. This simplifies building
# static user targets (USE=static-user) considerably.
conf_notuser() {
if [[ ${buildtype} == "user" ]] ; then
echo "--disable-${2:-$1}"
else
use_enable "$@"
fi
}
# Enable option only for softmmu build, but not 'user' or 'tools'
conf_softmmu() {
if [[ ${buildtype} == "softmmu" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Enable option only for tools build, but not 'user' or 'softmmu'
conf_tools() {
if [[ ${buildtype} == "tools" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Special case for the malloc flag, because the --disable flag does
# not exist and trying like above will break configuring.
conf_malloc() {
if [[ ! ${buildtype} == "user" ]] ; then
usex "${1}" "--enable-malloc=${1}" ""
fi
}
conf_opts+=(
$(conf_notuser accessibility brlapi)
$(conf_notuser aio linux-aio)
$(conf_softmmu bpf)
$(conf_notuser bzip2)
$(conf_notuser capstone)
$(conf_notuser curl)
$(conf_tools doc docs)
$(conf_notuser fdt)
$(conf_notuser fuse)
$(conf_notuser glusterfs)
$(conf_notuser gnutls)
$(conf_notuser gnutls nettle)
$(conf_notuser gtk)
$(conf_notuser infiniband rdma)
$(conf_notuser iscsi libiscsi)
$(conf_notuser io-uring linux-io-uring)
$(conf_malloc jemalloc)
$(conf_notuser jpeg vnc-jpeg)
$(conf_notuser kernel_linux kvm)
$(conf_notuser lzo)
$(conf_notuser multipath mpath)
$(conf_notuser ncurses curses)
$(conf_notuser nfs libnfs)
$(conf_notuser numa)
$(conf_notuser opengl)
$(conf_notuser pam auth-pam)
$(conf_notuser png)
$(conf_notuser rbd)
$(conf_notuser sasl vnc-sasl)
$(conf_notuser sdl)
$(conf_softmmu sdl-image)
$(conf_notuser seccomp)
$(conf_notuser slirp)
$(conf_notuser smartcard)
$(conf_notuser snappy)
$(conf_notuser spice)
$(conf_notuser ssh libssh)
$(conf_notuser udev libudev)
$(conf_notuser usb libusb)
$(conf_notuser usbredir usb-redir)
$(conf_notuser vde)
$(conf_notuser vhost-net)
$(conf_notuser virgl virglrenderer)
$(conf_softmmu virtfs)
$(conf_notuser vnc)
$(conf_notuser vte)
$(conf_notuser xen)
$(conf_notuser xen xen-pci-passthrough)
# use prebuilt keymaps, bug #759604
--disable-xkbcommon
$(conf_notuser zstd)
)
if [[ ! ${buildtype} == "user" ]] ; then
# audio options
local audio_opts=(
# Note: backend order matters here: #716202
# We iterate from higher-level to lower level.
$(usex pulseaudio pa "")
$(usev jack)
$(usev sdl)
$(usev alsa)
$(usev oss)
)
conf_opts+=(
--audio-drv-list=$(IFS=,; echo "${audio_opts[*]}")
)
fi
case ${buildtype} in
user)
conf_opts+=(
--enable-linux-user
--disable-system
--disable-tools
--disable-cap-ng
--disable-seccomp
)
local static_flag="static-user"
;;
softmmu)
conf_opts+=(
--disable-linux-user
--enable-system
--disable-tools
--enable-cap-ng
--enable-seccomp
)
local static_flag="none"
;;
tools)
conf_opts+=(
--disable-linux-user
--disable-system
--enable-tools
--enable-cap-ng
)
local static_flag="none"
;;
esac
local targets="${buildtype}_targets"
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
# Add support for SystemTAP
use systemtap && conf_opts+=( --enable-trace-backends="dtrace" )
# We always want to attempt to build with PIE support as it results
# in a more secure binary. But it doesn't work with static or if
# the current GCC doesn't have PIE support.
if [[ ${static_flag} != "none" ]] && use ${static_flag}; then
conf_opts+=( --static --disable-pie )
else
tc-enables-pie && conf_opts+=( --enable-pie )
fi
# Meson will not use a cross-file unless cross_prefix is set.
tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" )
# Plumb through equivalent of EXTRA_ECONF to allow experiments
# like bug #747928.
conf_opts+=( ${EXTRA_CONF_QEMU} )
echo "../configure ${conf_opts[*]}"
cd "${builddir}"
../configure "${conf_opts[@]}" || die "configure failed"
}
src_configure() {
local target
python_setup
softmmu_targets= softmmu_bins=()
user_targets= user_bins=()
for target in ${IUSE_SOFTMMU_TARGETS} ; do
if use "qemu_softmmu_targets_${target}"; then
softmmu_targets+=",${target}-softmmu"
softmmu_bins+=( "qemu-system-${target}" )
fi
done
for target in ${IUSE_USER_TARGETS} ; do
if use "qemu_user_targets_${target}"; then
user_targets+=",${target}-linux-user"
user_bins+=( "qemu-${target}" )
fi
done
softmmu_targets=${softmmu_targets#,}
user_targets=${user_targets#,}
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
[[ -n ${user_targets} ]] && qemu_src_configure "user"
qemu_src_configure "tools"
}
src_compile() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build" || die
default
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build" || die
default
fi
cd "${S}/tools-build" || die
default
}
src_test() {
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build" || die
pax-mark m */qemu-system-* #515550
emake check
fi
}
qemu_python_install() {
python_domodule "${S}/python/qemu"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/scripts/qmp/qmp-shell"
python_doscript "${S}/scripts/qmp/qemu-ga-client"
}
# Generate binfmt support files.
# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
generate_initd() {
local out="${T}/qemu-binfmt"
local out_systemd="${T}/qemu.conf"
local d="${T}/binfmt.d"
einfo "Generating qemu binfmt scripts and configuration files"
# Generate the debian fragments first.
mkdir -p "${d}"
"${S}"/scripts/qemu-binfmt-conf.sh \
--debian \
--exportdir "${d}" \
--qemu-path "${EPREFIX}/usr/bin" \
|| die
# Then turn the fragments into a shell script we can source.
sed -E -i \
-e 's:^([^ ]+) (.*)$:\1="\2":' \
"${d}"/* || die
# Generate the init.d script by assembling the fragments from above.
local f qcpu package interpreter magic mask
cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
for f in "${d}"/qemu-* ; do
source "${f}"
# Normalize the cpu logic like we do in the init.d for the native cpu.
qcpu=${package#qemu-}
case ${qcpu} in
arm*) qcpu="arm";;
mips*) qcpu="mips";;
ppc*) qcpu="ppc";;
s390*) qcpu="s390";;
sh*) qcpu="sh";;
sparc*) qcpu="sparc";;
esac
# we use 'printf' here to be portable across 'sh'
# implementations: #679168
cat <<EOF >>"${out}"
if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
fi
EOF
echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
done
cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
}
src_install() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build"
emake DESTDIR="${ED}" install
# Install binfmt handler init script for user targets.
generate_initd
doinitd "${T}/qemu-binfmt"
# Install binfmt/qemu.conf.
insinto "/usr/share/qemu/binfmt.d"
doins "${T}/qemu.conf"
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
emake DESTDIR="${ED}" install
# This might not exist if the test failed. #512010
[[ -e check-report.html ]] && dodoc check-report.html
if use kernel_linux; then
udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules
fi
if use python; then
python_foreach_impl qemu_python_install
fi
fi
cd "${S}/tools-build" || die
emake DESTDIR="${ED}" install
# If USE=doc, there'll be newly generated docs which we install instead.
if ! use doc && [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
doman "${WORKDIR}"/${PN}-${QEMU_DOCS_VERSION}-docs/docs/*.[0-8]
fi
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
pushd "${ED}"/usr/bin >/dev/null || die
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
popd >/dev/null || die
# Install config file example for qemu-bridge-helper
insinto "/etc/qemu"
doins "${FILESDIR}/bridge.conf"
cd "${S}" || die
dodoc MAINTAINERS docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios
# Disallow stripping of prebuilt firmware files.
dostrip -x ${QA_PREBUILT}
if [[ -n ${softmmu_targets} ]]; then
# Remove SeaBIOS since we're using the SeaBIOS packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
fi
# Remove vgabios since we're using the seavgabios packaged one
rm "${ED}/usr/share/qemu/vgabios.bin"
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
# PPC/PPC64 loads vgabios-stdvga
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
fi
# Remove sgabios since we're using the sgabios packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
fi
# Remove iPXE since we're using the iPXE packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
fi
fi
DISABLE_AUTOFORMATTING=true
readme.gentoo_create_doc
}
firmware_abi_change() {
local pv
for pv in ${REPLACING_VERSIONS}; do
if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then
return 0
fi
done
return 1
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
udev_reload
fi
xdg_icon_cache_update
[[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
fcaps cap_net_admin "${EROOT}"/usr/libexec/qemu-bridge-helper
DISABLE_AUTOFORMATTING=true
readme.gentoo_print_elog
if use pin-upstream-blobs && firmware_abi_change; then
ewarn "This version of qemu pins new versions of firmware blobs:"
if has_version 'sys-firmware/edk2-ovmf-bin'; then
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
else
ewarn " $(best_version sys-firmware/edk2-ovmf)"
fi
if has_version 'sys-firmware/seabios-bin'; then
ewarn " $(best_version sys-firmware/seabios-bin)"
else
ewarn " $(best_version sys-firmware/seabios)"
fi
ewarn " $(best_version sys-firmware/ipxe)"
ewarn " $(best_version sys-firmware/sgabios)"
ewarn "This might break resume of hibernated guests (started with a different"
ewarn "firmware version) and live migration to/from qemu versions with different"
ewarn "firmware. Please (cold) restart all running guests. For functional"
ewarn "guest migration ensure that all"
ewarn "hosts run at least"
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
fi
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
if has_version 'sys-firmware/edk2-ovmf-bin'; then
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
else
echo " $(best_version sys-firmware/edk2-ovmf)"
fi
if has_version 'sys-firmware/seabios-bin'; then
echo " $(best_version sys-firmware/seabios-bin)"
else
echo " $(best_version sys-firmware/seabios)"
fi
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/sgabios)"
}
pkg_postrm() {
xdg_icon_cache_update
udev_reload
}

@ -0,0 +1,967 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-qemu-docs
# Set to 1 if prebuilt, 0 if not
# (the construct below is to allow overriding from env for script)
QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1}
QEMU_DOCS_PREBUILT_DEV=sam
#QEMU_DOCS_VERSION=$(ver_cut 1-3)
QEMU_DOCS_VERSION=8.1.0
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
# bug #830088
QEMU_DOC_USEFLAG="+doc"
PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="ncurses,readline"
FIRMWARE_ABI_VERSION="7.2.0"
inherit linux-info toolchain-funcs python-r1 udev fcaps readme.gentoo-r1 \
pax-utils xdg-utils
if [[ ${PV} == *9999* ]]; then
QEMU_DOCS_PREBUILT=0
EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/"
EGIT_SUBMODULES=(
tests/fp/berkeley-softfloat-3
tests/fp/berkeley-testfloat-3
subprojects/keycodemapdb
)
inherit git-r3
SRC_URI=""
else
MY_P="${PN}-${PV/_rc/-rc}"
SRC_URI="https://download.qemu.org/${MY_P}.tar.xz"
if [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${QEMU_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${QEMU_DOCS_VERSION}-docs.tar.xz )"
fi
S="${WORKDIR}/${MY_P}"
[[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
[[ ${QEMU_DOCS_PREBUILT} == 1 ]] && QEMU_DOC_USEFLAG="doc"
IUSE="accessibility +aio alsa bpf bzip2 capstone +curl debug ${QEMU_DOC_USEFLAG}
+fdt fuse glusterfs +gnutls gtk infiniband iscsi io-uring
jack jemalloc +jpeg
lzo multipath
ncurses nfs nls numa opengl +oss pam +pin-upstream-blobs pipewire
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
+slirp
smartcard snappy spice ssh static-user systemtap test udev usb
usbredir vde +vhost-net virgl virtfs +vnc vte xattr xen
zstd"
COMMON_TARGETS="
aarch64
alpha
arm
cris
hppa
i386
loongarch64
m68k
microblaze
microblazeel
mips
mips64
mips64el
mipsel
nios2
or1k
ppc
ppc64
riscv32
riscv64
s390x
sh4
sh4eb
sparc
sparc64
x86_64
xtensa
xtensaeb
"
IUSE_SOFTMMU_TARGETS="
${COMMON_TARGETS}
avr
rx
tricore
"
IUSE_USER_TARGETS="
${COMMON_TARGETS}
aarch64_be
armeb
hexagon
mipsn32
mipsn32el
ppc64le
sparc32plus
"
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
RESTRICT="!test? ( test )"
# Allow no targets to be built so that people can get a tools-only build.
# Block USE flag configurations known to not work.
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
qemu_softmmu_targets_arm? ( fdt )
qemu_softmmu_targets_microblaze? ( fdt )
qemu_softmmu_targets_mips64el? ( fdt )
qemu_softmmu_targets_ppc64? ( fdt )
qemu_softmmu_targets_ppc? ( fdt )
qemu_softmmu_targets_riscv32? ( fdt )
qemu_softmmu_targets_riscv64? ( fdt )
qemu_softmmu_targets_x86_64? ( fdt )
sdl-image? ( sdl )
static-user? ( !plugins )
virgl? ( opengl )
virtfs? ( xattr )
vnc? ( gnutls )
vte? ( gtk )
multipath? ( udev )
plugins? ( !static-user )
"
for smname in ${IUSE_SOFTMMU_TARGETS} ; do
REQUIRED_USE+=" qemu_softmmu_targets_${smname}? ( kernel_linux? ( seccomp ) )"
done
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# and user/softmmu targets (qemu-*, qemu-system-*).
#
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
#
# The attr lib isn't always linked in (although the USE flag is always
# respected). This is because qemu supports using the C library's API
# when available rather than always using the external library.
ALL_DEPEND="
dev-libs/glib:2[static-libs(+)]
sys-libs/zlib[static-libs(+)]
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
xattr? ( sys-apps/attr[static-libs(+)] )
"
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# softmmu targets (qemu-system-*).
SOFTMMU_TOOLS_DEPEND="
>=x11-libs/pixman-0.28.0[static-libs(+)]
accessibility? (
app-accessibility/brltty[api]
app-accessibility/brltty[static-libs(+)]
)
aio? ( dev-libs/libaio[static-libs(+)] )
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bpf? ( dev-libs/libbpf:= )
bzip2? ( app-arch/bzip2[static-libs(+)] )
capstone? ( dev-libs/capstone:=[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
fdt? ( >=sys-apps/dtc-1.5.1[static-libs(+)] )
fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] )
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
gnutls? (
>=net-libs/gnutls-3.0:=[static-libs(+)]
dev-libs/nettle:=[static-libs(+)]
)
gtk? (
x11-libs/gtk+:3
vte? ( x11-libs/vte:2.91 )
)
infiniband? ( sys-cluster/rdma-core[static-libs(+)] )
iscsi? ( net-libs/libiscsi )
io-uring? ( sys-libs/liburing:=[static-libs(+)] )
jack? ( virtual/jack )
jemalloc? ( dev-libs/jemalloc )
jpeg? ( media-libs/libjpeg-turbo:=[static-libs(+)] )
kernel_linux? ( sys-libs/libcap-ng[static-libs(+)] )
lzo? ( dev-libs/lzo:2[static-libs(+)] )
multipath? ( sys-fs/multipath-tools )
ncurses? (
sys-libs/ncurses:=[unicode(+)]
sys-libs/ncurses:=[static-libs(+)]
)
nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
numa? ( sys-process/numactl[static-libs(+)] )
opengl? (
virtual/opengl
media-libs/libepoxy[static-libs(+)]
media-libs/mesa[static-libs(+)]
media-libs/mesa[egl(+),gbm(+)]
)
pam? ( sys-libs/pam )
pipewire? ( >=media-video/pipewire-0.3.60 )
png? ( >=media-libs/libpng-1.6.34:=[static-libs(+)] )
pulseaudio? ( media-libs/libpulse )
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? (
media-libs/libsdl2[video]
media-libs/libsdl2[static-libs(+)]
)
sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
slirp? ( net-libs/libslirp[static-libs(+)] )
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
snappy? ( app-arch/snappy:= )
spice? (
>=app-emulation/spice-protocol-0.14.0
>=app-emulation/spice-0.14.0[static-libs(+)]
)
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
udev? ( virtual/libudev:= )
usb? ( >=virtual/libusb-1-r2:1[static-libs(+)] )
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
virgl? ( media-libs/virglrenderer[static-libs(+)] )
virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools:= )
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
"
EDK2_OVMF_VERSION="202202"
SEABIOS_VERSION="1.16.0"
X86_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
~sys-firmware/ipxe-1.21.1[binary,qemu]
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
~sys-firmware/sgabios-0.1_pre10[binary]
)
!pin-upstream-blobs? (
|| (
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
)
sys-firmware/ipxe[qemu]
|| (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
sys-firmware/sgabios
)
"
PPC_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
!pin-upstream-blobs? (
|| (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
>=sys-firmware/seabios-bin-${SEABIOS_VERSION}
)
)
"
# See bug #913084 for pip dep
BDEPEND="
$(python_gen_impl_dep)
dev-lang/perl
>=dev-util/meson-0.63.0
dev-python/pip[${PYTHON_USEDEP}]
virtual/pkgconfig
doc? (
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
)
gtk? ( nls? ( sys-devel/gettext ) )
test? (
dev-libs/glib[utils]
sys-devel/bc
)
"
CDEPEND="
${ALL_DEPEND//\[static-libs(+)]}
${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
"
DEPEND="
${CDEPEND}
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static-user? ( ${ALL_DEPEND} )
"
RDEPEND="
${CDEPEND}
acct-group/kvm
selinux? (
sec-policy/selinux-qemu
sys-libs/libselinux
)
"
PATCHES=(
"${FILESDIR}"/${PN}-8.0.0-disable-keymap.patch
"${FILESDIR}"/${PN}-7.1.0-capstone-include-path.patch
"${FILESDIR}"/${PN}-8.1.0-also-build-virtfs-proxy-helper.patch
"${FILESDIR}"/${PN}-8.1.0-skip-tests.patch
"${FILESDIR}"/${PN}-8.1.0-find-sphinx.patch
)
QA_PREBUILT="
usr/share/qemu/hppa-firmware.img
usr/share/qemu/openbios-ppc
usr/share/qemu/openbios-sparc64
usr/share/qemu/openbios-sparc32
usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu/palcode-clipper
usr/share/qemu/s390-ccw.img
usr/share/qemu/s390-netboot.img
usr/share/qemu/u-boot.e500
"
QA_WX_LOAD="
usr/bin/qemu-i386
usr/bin/qemu-x86_64
usr/bin/qemu-alpha
usr/bin/qemu-arm
usr/bin/qemu-cris
usr/bin/qemu-m68k
usr/bin/qemu-microblaze
usr/bin/qemu-microblazeel
usr/bin/qemu-mips
usr/bin/qemu-mipsel
usr/bin/qemu-or1k
usr/bin/qemu-ppc
usr/bin/qemu-ppc64
usr/bin/qemu-sh4
usr/bin/qemu-sh4eb
usr/bin/qemu-sparc
usr/bin/qemu-sparc64
usr/bin/qemu-armeb
usr/bin/qemu-sparc32plus
usr/bin/qemu-s390x
usr/bin/qemu-unicore32
"
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
kernel module loaded before running kvm. The easiest way to ensure that the
kernel module is loaded is to load it on boot.
For AMD CPUs the module is called 'kvm-amd'.
For Intel CPUs the module is called 'kvm-intel'.
Please review /etc/conf.d/modules for how to load these.
Make sure your user is in the 'kvm' group. Just run
$ gpasswd -a <USER> kvm
then have <USER> re-login.
For brand new installs, the default permissions on /dev/kvm might not let
you access it. You can tell udev to reset ownership/perms:
$ udevadm trigger -c add /dev/kvm
If you want to register binfmt handlers for qemu user targets:
For openrc:
# rc-update add qemu-binfmt
For systemd:
# ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
pkg_pretend() {
if use kernel_linux && kernel_is lt 2 6 25; then
eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
elif use kernel_linux; then
if ! linux_config_exists; then
eerror "Unable to check your kernel for KVM support"
else
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
ERROR_KVM="You must enable KVM in your kernel to continue"
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
ERROR_KVM_AMD+=" your kernel configuration."
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
ERROR_TUN+=" into your kernel or loaded as a module to use the"
ERROR_TUN+=" virtual network device if using -net tap."
ERROR_BRIDGE="You will also need support for 802.1d"
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
ERROR_VHOST_NET+=" support"
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
if grep -q AuthenticAMD /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_AMD"
elif grep -q GenuineIntel /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_INTEL"
fi
fi
use python && CONFIG_CHECK+=" ~DEBUG_FS"
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
# Now do the actual checks setup above
check_extra_config
fi
fi
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
eerror "instances are still pointing to it. Please update your"
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
eerror "and the right system binary (e.g. qemu-system-x86_64)."
die "update your virt configs to not use qemu-kvm"
fi
}
# Sanity check to make sure target lists are kept up-to-date.
check_targets() {
local var=$1 mak=$2
local detected sorted
pushd "${S}"/configs/targets/ >/dev/null || die
# Force C locale until glibc is updated. #564936
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
if [[ ${sorted} != "${detected}" ]] ; then
eerror "The ebuild needs to be kept in sync."
eerror "${var}: ${sorted}"
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
die "sync ${var} to the list of targets"
fi
popd >/dev/null
}
src_prepare() {
check_targets IUSE_SOFTMMU_TARGETS softmmu
check_targets IUSE_USER_TARGETS linux-user
default
# Use correct toolchain to fix cross-compiling
tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
export WINDRES=${CHOST}-windres
# Verbose builds
MAKEOPTS+=" V=1"
# Remove bundled modules
rm -r subprojects/dtc roms/*/ || die
}
##
# configures qemu based on the build directory and the build type
# we are using.
#
qemu_src_configure() {
debug-print-function ${FUNCNAME} "$@"
local buildtype=$1
local builddir="${S}/${buildtype}-build"
mkdir "${builddir}" || die
local conf_opts=(
--prefix=/usr
--sysconfdir=/etc
--bindir=/usr/bin
--libdir=/usr/$(get_libdir)
--datadir=/usr/share
--docdir=/usr/share/doc/${PF}/html
--mandir=/usr/share/man
--localstatedir=/var
--disable-bsd-user
--disable-containers # bug #732972
--disable-guest-agent
--disable-strip
--disable-download
# bug #746752: TCG interpreter has a few limitations:
# - it does not support FPU
# - it's generally slower on non-self-modifying code
# It's advantage is support for host architectures
# where native codegeneration is not implemented.
# Gentoo has qemu keyworded only on targets with
# native code generation available. Avoid the interpreter.
--disable-tcg-interpreter
--disable-werror
# We support gnutls/nettle for crypto operations. It is possible
# to use gcrypt when gnutls/nettle are disabled (but not when they
# are enabled), but it's not really worth the hassle. Disable it
# all the time to avoid automatically detecting it. #568856
--disable-gcrypt
--cc="$(tc-getCC)"
--cxx="$(tc-getCXX)"
--objcc="$(tc-getCC)"
--host-cc="$(tc-getBUILD_CC)"
$(use_enable alsa)
$(use_enable debug debug-info)
$(use_enable debug debug-tcg)
$(use_enable jack)
$(use_enable nls gettext)
$(use_enable oss)
$(use_enable pipewire)
$(use_enable plugins)
$(use_enable pulseaudio pa)
$(use_enable selinux)
$(use_enable xattr attr)
)
# Disable options not used by user targets. This simplifies building
# static user targets (USE=static-user) considerably.
conf_notuser() {
if [[ ${buildtype} == "user" ]] ; then
echo "--disable-${2:-$1}"
else
use_enable "$@"
fi
}
# Enable option only for softmmu build, but not 'user' or 'tools'
conf_softmmu() {
if [[ ${buildtype} == "softmmu" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Enable option only for tools build, but not 'user' or 'softmmu'
conf_tools() {
if [[ ${buildtype} == "tools" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Special case for the malloc flag, because the --disable flag does
# not exist and trying like above will break configuring.
conf_malloc() {
if [[ ! ${buildtype} == "user" ]] ; then
usex "${1}" "--enable-malloc=${1}" ""
fi
}
conf_opts+=(
$(conf_notuser accessibility brlapi)
$(conf_notuser aio linux-aio)
$(conf_softmmu bpf)
$(conf_notuser bzip2)
$(conf_notuser capstone)
$(conf_notuser curl)
$(conf_tools doc docs)
$(conf_notuser fdt)
$(conf_notuser fuse)
$(conf_notuser glusterfs)
$(conf_notuser gnutls)
$(conf_notuser gnutls nettle)
$(conf_notuser gtk)
$(conf_notuser infiniband rdma)
$(conf_notuser iscsi libiscsi)
$(conf_notuser io-uring linux-io-uring)
$(conf_malloc jemalloc)
$(conf_notuser jpeg vnc-jpeg)
$(conf_notuser kernel_linux kvm)
$(conf_notuser lzo)
$(conf_notuser multipath mpath)
$(conf_notuser ncurses curses)
$(conf_notuser nfs libnfs)
$(conf_notuser numa)
$(conf_notuser opengl)
$(conf_notuser pam auth-pam)
$(conf_notuser png)
$(conf_notuser rbd)
$(conf_notuser sasl vnc-sasl)
$(conf_notuser sdl)
$(conf_softmmu sdl-image)
$(conf_notuser seccomp)
$(conf_notuser slirp)
$(conf_notuser smartcard)
$(conf_notuser snappy)
$(conf_notuser spice)
$(conf_notuser ssh libssh)
$(conf_notuser udev libudev)
$(conf_notuser usb libusb)
$(conf_notuser usbredir usb-redir)
$(conf_notuser vde)
$(conf_notuser vhost-net)
$(conf_notuser virgl virglrenderer)
$(conf_softmmu virtfs)
$(conf_notuser vnc)
$(conf_notuser vte)
$(conf_notuser xen)
$(conf_notuser xen xen-pci-passthrough)
# use prebuilt keymaps, bug #759604
--disable-xkbcommon
$(conf_notuser zstd)
)
if [[ ! ${buildtype} == "user" ]] ; then
# audio options
local audio_opts=(
# Note: backend order matters here: #716202
# We iterate from higher-level to lower level.
$(usex pulseaudio pa "")
$(usev pipewire)
$(usev jack)
$(usev sdl)
$(usev alsa)
$(usev oss)
)
conf_opts+=(
--audio-drv-list=$(IFS=,; echo "${audio_opts[*]}")
)
fi
case ${buildtype} in
user)
conf_opts+=(
--enable-linux-user
--disable-system
--disable-tools
--disable-cap-ng
--disable-seccomp
)
local static_flag="static-user"
;;
softmmu)
conf_opts+=(
--disable-linux-user
--enable-system
--disable-tools
--enable-cap-ng
--enable-seccomp
)
local static_flag="none"
;;
tools)
conf_opts+=(
--disable-linux-user
--disable-system
--enable-tools
--enable-cap-ng
)
local static_flag="none"
;;
esac
local targets="${buildtype}_targets"
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
# Add support for SystemTAP
use systemtap && conf_opts+=( --enable-trace-backends="dtrace" )
# We always want to attempt to build with PIE support as it results
# in a more secure binary. But it doesn't work with static or if
# the current GCC doesn't have PIE support.
if [[ ${static_flag} != "none" ]] && use ${static_flag}; then
conf_opts+=( --static --disable-pie )
else
tc-enables-pie && conf_opts+=( --enable-pie )
fi
# Meson will not use a cross-file unless cross_prefix is set.
tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" )
# Plumb through equivalent of EXTRA_ECONF to allow experiments
# like bug #747928.
conf_opts+=( ${EXTRA_CONF_QEMU} )
echo "../configure ${conf_opts[*]}"
cd "${builddir}"
../configure "${conf_opts[@]}" || die "configure failed"
}
src_configure() {
local target
python_setup
softmmu_targets= softmmu_bins=()
user_targets= user_bins=()
for target in ${IUSE_SOFTMMU_TARGETS} ; do
if use "qemu_softmmu_targets_${target}"; then
softmmu_targets+=",${target}-softmmu"
softmmu_bins+=( "qemu-system-${target}" )
fi
done
for target in ${IUSE_USER_TARGETS} ; do
if use "qemu_user_targets_${target}"; then
user_targets+=",${target}-linux-user"
user_bins+=( "qemu-${target}" )
fi
done
softmmu_targets=${softmmu_targets#,}
user_targets=${user_targets#,}
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
[[ -n ${user_targets} ]] && qemu_src_configure "user"
qemu_src_configure "tools"
}
src_compile() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build" || die
default
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build" || die
default
fi
cd "${S}/tools-build" || die
default
}
src_test() {
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build" || die
pax-mark m */qemu-system-* #515550
emake check
fi
}
qemu_python_install() {
python_domodule "${S}/python/qemu"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/scripts/qmp/qmp-shell"
python_doscript "${S}/scripts/qmp/qemu-ga-client"
}
# Generate binfmt support files.
# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
generate_initd() {
local out="${T}/qemu-binfmt"
local out_systemd="${T}/qemu.conf"
local d="${T}/binfmt.d"
einfo "Generating qemu binfmt scripts and configuration files"
# Generate the debian fragments first.
mkdir -p "${d}"
"${S}"/scripts/qemu-binfmt-conf.sh \
--debian \
--exportdir "${d}" \
--qemu-path "${EPREFIX}/usr/bin" \
|| die
# Then turn the fragments into a shell script we can source.
sed -E -i \
-e 's:^([^ ]+) (.*)$:\1="\2":' \
"${d}"/* || die
# Generate the init.d script by assembling the fragments from above.
local f qcpu package interpreter magic mask
cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
for f in "${d}"/qemu-* ; do
source "${f}"
# Normalize the cpu logic like we do in the init.d for the native cpu.
qcpu=${package#qemu-}
case ${qcpu} in
arm*) qcpu="arm";;
mips*) qcpu="mips";;
ppc*) qcpu="ppc";;
s390*) qcpu="s390";;
sh*) qcpu="sh";;
sparc*) qcpu="sparc";;
esac
# we use 'printf' here to be portable across 'sh'
# implementations: #679168
cat <<EOF >>"${out}"
if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
fi
EOF
echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
done
cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
}
src_install() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build"
emake DESTDIR="${ED}" install
# Install binfmt handler init script for user targets.
generate_initd
doinitd "${T}/qemu-binfmt"
# Install binfmt/qemu.conf.
insinto "/usr/share/qemu/binfmt.d"
doins "${T}/qemu.conf"
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
emake DESTDIR="${ED}" install
# This might not exist if the test failed. #512010
[[ -e check-report.html ]] && dodoc check-report.html
if use kernel_linux; then
udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules
fi
if use python; then
python_foreach_impl qemu_python_install
fi
fi
cd "${S}/tools-build" || die
emake DESTDIR="${ED}" install
# If USE=doc, there'll be newly generated docs which we install instead.
if ! use doc && [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then
doman "${WORKDIR}"/${PN}-${QEMU_DOCS_VERSION}-docs/docs/*.[0-8]
fi
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
pushd "${ED}"/usr/bin >/dev/null || die
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
popd >/dev/null || die
# Install config file example for qemu-bridge-helper
insinto "/etc/qemu"
doins "${FILESDIR}/bridge.conf"
cd "${S}" || die
dodoc MAINTAINERS
newdoc pc-bios/README README.pc-bios
# Disallow stripping of prebuilt firmware files.
dostrip -x ${QA_PREBUILT}
if [[ -n ${softmmu_targets} ]]; then
# Remove SeaBIOS since we're using the SeaBIOS packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
fi
# Remove vgabios since we're using the seavgabios packaged one
rm "${ED}/usr/share/qemu/vgabios.bin"
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
# PPC/PPC64 loads vgabios-stdvga
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
fi
# Remove sgabios since we're using the sgabios packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
fi
# Remove iPXE since we're using the iPXE packaged one
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
fi
fi
DISABLE_AUTOFORMATTING=true
readme.gentoo_create_doc
}
firmware_abi_change() {
local pv
for pv in ${REPLACING_VERSIONS}; do
if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then
return 0
fi
done
return 1
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
udev_reload
fi
xdg_icon_cache_update
[[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
fcaps cap_net_admin "${EROOT}"/usr/libexec/qemu-bridge-helper
DISABLE_AUTOFORMATTING=true
readme.gentoo_print_elog
if use pin-upstream-blobs && firmware_abi_change; then
ewarn "This version of qemu pins new versions of firmware blobs:"
if has_version 'sys-firmware/edk2-ovmf-bin'; then
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
else
ewarn " $(best_version sys-firmware/edk2-ovmf)"
fi
if has_version 'sys-firmware/seabios-bin'; then
ewarn " $(best_version sys-firmware/seabios-bin)"
else
ewarn " $(best_version sys-firmware/seabios)"
fi
ewarn " $(best_version sys-firmware/ipxe)"
ewarn " $(best_version sys-firmware/sgabios)"
ewarn "This might break resume of hibernated guests (started with a different"
ewarn "firmware version) and live migration to/from qemu versions with different"
ewarn "firmware. Please (cold) restart all running guests. For functional"
ewarn "guest migration ensure that all"
ewarn "hosts run at least"
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
fi
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
if has_version 'sys-firmware/edk2-ovmf-bin'; then
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
else
echo " $(best_version sys-firmware/edk2-ovmf)"
fi
if has_version 'sys-firmware/seabios-bin'; then
echo " $(best_version sys-firmware/seabios-bin)"
else
echo " $(best_version sys-firmware/seabios)"
fi
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/sgabios)"
}
pkg_postrm() {
xdg_icon_cache_update
udev_reload
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save