[arch-commits] Commit in qemu/trunk (PKGBUILD qemu-guest-agent.install)
David Runge
dvzrv at gemini.archlinux.org
Wed Oct 13 20:58:49 UTC 2021
Date: Wednesday, October 13, 2021 @ 20:58:48
Author: dvzrv
Revision: 425875
upgpkg: qemu 6.1.0-3: Rebuild to make dependencies more explicit.
PKGBUILD:
Add all packages required for building to makedepends.
Add all per package dependencies explicitly in each package() function
(including sodeps).
Move brltty to optdepends for qemu:
https://bugs.archlinux.org/task/72312
Add edk2-{armvirt,ovmf} to optdepends for qemu{,-headless}-arch-extra:
https://bugs.archlinux.org/task/71082
Simplify the installation of files in the package_*() functions, while making
the output more verbose.
qemu-guest-agent.install:
Bind the message about qemu-ga.service renaming to the version of qemu in which
it has been introduced.
Implement a disabling of qemu-ga.service and an enabling of
qemu-guest-agent.service if the former is still enabled:
https://bugs.archlinux.org/task/68892
Remove '#' characters from post_upgrade() message, as it breaks our (admittedly
rather brittle) build of releng:
https://gitlab.archlinux.org/archlinux/releng
Modified:
qemu/trunk/PKGBUILD
qemu/trunk/qemu-guest-agent.install
--------------------------+
PKGBUILD | 258 ++++++++++++++++++++++++++++++++++++++++-----
qemu-guest-agent.install | 11 +
2 files changed, 242 insertions(+), 27 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2021-10-13 19:48:31 UTC (rev 425874)
+++ PKGBUILD 2021-10-13 20:58:48 UTC (rev 425875)
@@ -1,20 +1,83 @@
# Maintainer: Tobias Powalowski <tpowa at archlinux.org>
+# Contributor: David Runge <dvzrv at archlinux.org>
# Contributor: Sébastien "Seblu" Luttringer <seblu at seblu.net>
pkgbase=qemu
-pkgname=(qemu qemu-headless qemu-arch-extra qemu-headless-arch-extra
- qemu-block-{iscsi,rbd,gluster} qemu-guest-agent)
+pkgname=(
+ qemu
+ qemu-headless
+ qemu-arch-extra
+ qemu-headless-arch-extra
+ qemu-block-{iscsi,rbd,gluster}
+ qemu-guest-agent
+)
pkgdesc="A generic and open source machine emulator and virtualizer"
pkgver=6.1.0
-pkgrel=2
+pkgrel=3
arch=(x86_64)
license=(GPL2 LGPL2.1)
url="https://wiki.qemu.org/"
-_headlessdeps=(seabios gnutls libpng libaio numactl libnfs
- lzo snappy curl vde2 libcap-ng spice libcacard usbredir libslirp
- libssh zstd liburing ndctl dtc fuse3 libbpf)
-depends=(virglrenderer sdl2 vte3 libpulse libjack.so brltty "${_headlessdeps[@]}")
-makedepends=(spice-protocol python ceph libiscsi glusterfs python-sphinx python-sphinx_rtd_theme xfsprogs ninja)
+# TODO: consider providing rdma-core
+# TODO: consider providing lzfse
+makedepends=(
+ alsa-lib
+ brltty
+ bzip2
+ cairo
+ ceph
+ curl
+ cdrtools
+ dtc
+ fuse3
+ gcc-libs
+ gdk-pixbuf2
+ glib2
+ glusterfs
+ gnutls
+ gtk3
+ jack
+ libaio
+ libbpf
+ libcacard
+ libcap-ng
+ libepoxy
+ libiscsi
+ libnfs
+ libpng
+ libpulse
+ libsasl
+ libseccomp
+ libslirp
+ libssh
+ liburing
+ libusb
+ libx11
+ libxkbcommon
+ lzo
+ mesa
+ meson
+ ncurses
+ ndctl
+ numactl
+ pam
+ python
+ python-sphinx
+ python-sphinx_rtd_theme
+ sdl2
+ sdl2_image
+ seabios
+ snappy
+ spice-protocol
+ spice
+ systemd
+ usbredir
+ vde2
+ virglrenderer
+ vte3
+ xfsprogs
+ zlib
+ zstd
+)
source=(https://download.qemu.org/qemu-$pkgver.tar.xz{,.sig}
fix_unix_sockets.diff::https://gitlab.com/qemu-project/qemu/-/commit/118d527f2e4baec5fe8060b22a6212468b8e4d3f.diff
qemu-guest-agent.service
@@ -72,7 +135,60 @@
)
package_qemu() {
- optdepends=('qemu-arch-extra: extra architectures support')
+ depends=(
+ alsa-lib libasound.so
+ bzip2 libbz2.so
+ cairo libcairo.so
+ curl libcurl.so
+ dtc
+ fuse3
+ gcc-libs
+ gdk-pixbuf2 libgdk_pixbuf-2.0.so
+ glib2 libgio-2.0.so libglib-2.0.so libgmodule-2.0.so libgobject-2.0.so
+ gnutls
+ gtk3 libgdk-3.so libgtk-3.so
+ jack libjack.so
+ libaio
+ libbpf libbpf.so
+ libcacard
+ libcap-ng libcap-ng.so
+ libepoxy
+ libjpeg libjpeg.so
+ libnfs
+ libpng
+ libpulse libpulse.so
+ libsasl
+ libseccomp libseccomp.so
+ libslirp libslirp.so
+ libssh libssh.so
+ libusb libusb-1.0.so
+ liburing liburing.so
+ libx11
+ libxkbcommon libxkbcommon.so
+ lzo
+ mesa
+ ncurses libncursesw.so
+ ndctl
+ numactl libnuma.so
+ pam libpam.so
+ pixman libpixman-1.so
+ seabios
+ sdl2
+ sdl2_image
+ snappy
+ spice libspice-server.so
+ systemd-libs libudev.so
+ usbredir
+ virglrenderer
+ vde2
+ vte2 libvte-2.91.so
+ zlib
+ zstd libzstd.so
+ )
+ optdepends=(
+ 'brltty: for braille device support'
+ 'qemu-arch-extra: extra architectures support'
+ )
provides=(qemu-headless)
conflicts=(qemu-headless)
replaces=(qemu-kvm)
@@ -82,7 +198,43 @@
package_qemu-headless() {
pkgdesc="QEMU without GUI"
- depends=("${_headlessdeps[@]}")
+ depends=(
+ bzip2 libbz2.so
+ curl libcurl.so
+ dtc
+ fuse3
+ gcc-libs
+ glib2 libgio-2.0.so libglib-2.0.so libgmodule-2.0.so libgobject-2.0.so
+ gnutls
+ libaio
+ libbpf libbpf.so
+ libcacard
+ libcap-ng libcap-ng.so
+ libjpeg libjpeg.so
+ libnfs
+ libpng
+ libsasl
+ libseccomp libseccomp.so
+ libslirp libslirp.so
+ libssh libssh.so
+ libusb libusb-1.0.so
+ liburing liburing.so
+ libxkbcommon libxkbcommon.so
+ lzo
+ ndctl
+ numactl libnuma.so
+ ncurses libncursesw.so
+ pam libpam.so
+ pixman libpixman-1.so
+ seabios
+ snappy
+ spice libspice-server.so
+ systemd-libs libudev.so
+ usbredir
+ vde2
+ zlib
+ zstd libzstd.so
+ )
optdepends=('qemu-headless-arch-extra: extra architectures support')
_package headless
@@ -169,41 +321,101 @@
package_qemu-arch-extra() {
pkgdesc="QEMU for foreign architectures"
- depends=(qemu)
+ depends=(
+ dtc
+ fuse3
+ gcc-libs
+ gnutls
+ libaio
+ libbpf libbpf.so
+ glib2 libgio-2.0.so libglib-2.0.so libgobject-2.0.so libgmodule-2.0.so
+ libjpeg libjpeg.so
+ libpng
+ libsasl
+ libseccomp libseccomp.so
+ libslirp libslirp.so
+ liburing liburing.so
+ lzo
+ ndctl
+ numactl libnuma.so
+ pam libpam.so
+ pixman libpixman-1.so
+ snappy
+ systemd-libs
+ libudev.so
+ qemu
+ vde2
+ zlib
+ zstd
+ libzstd.so
+ )
+ optdepends=(
+ 'edk2-armvirt: for aarch64 UEFI support'
+ 'edk2-ovmf: for ia32 and x64 UEFI support'
+ )
provides=(qemu-headless-arch-extra)
conflicts=(qemu-headless-arch-extra)
options=(!strip)
- mv extra-arch-full/usr "$pkgdir"
+ mv -v extra-arch-full/usr "$pkgdir"
}
package_qemu-headless-arch-extra() {
pkgdesc="QEMU without GUI, for foreign architectures"
- depends=(qemu-headless)
+ depends=(
+ dtc
+ fuse3
+ gcc-libs
+ gnutls
+ libaio
+ libbpf libbpf.so
+ glib2 libgio-2.0.so libglib-2.0.so libgobject-2.0.so libgmodule-2.0.so
+ libjpeg libjpeg.so
+ libpng
+ libsasl
+ libseccomp libseccomp.so
+ libslirp libslirp.so
+ liburing liburing.so
+ lzo
+ ndctl
+ numactl libnuma.so
+ pam libpam.so
+ pixman libpixman-1.so
+ snappy
+ qemu-headless
+ systemd-libs libudev.so
+ vde2
+ zlib
+ zstd libzstd.so
+ )
+ optdepends=(
+ 'edk2-armvirt: for aarch64 UEFI support'
+ 'edk2-ovmf: for ia32 and x64 UEFI support'
+ )
options=(!strip)
- mv extra-arch-headless/usr "$pkgdir"
+ mv -v extra-arch-headless/usr "$pkgdir"
}
package_qemu-block-iscsi() {
pkgdesc="QEMU iSCSI block module"
- depends=(glib2 libiscsi)
+ depends=(glibc libiscsi)
- install -D build-full/block-iscsi.so "$pkgdir/usr/lib/qemu/block-iscsi.so"
+ install -vDm 755 build-full/block-iscsi.so -t "$pkgdir/usr/lib/qemu/"
}
package_qemu-block-rbd() {
pkgdesc="QEMU RBD block module"
- depends=(glib2 ceph-libs)
+ depends=(glibc ceph-libs)
- install -D build-full/block-rbd.so "$pkgdir/usr/lib/qemu/block-rbd.so"
+ install -vDm 755 build-full/block-rbd.so -t "$pkgdir/usr/lib/qemu/"
}
package_qemu-block-gluster() {
pkgdesc="QEMU GlusterFS block module"
- depends=(glib2 glusterfs)
+ depends=(glibc glusterfs)
- install -D build-full/block-gluster.so "$pkgdir/usr/lib/qemu/block-gluster.so"
+ install -vDm 755 build-full/block-gluster.so -t "$pkgdir/usr/lib/qemu/"
}
package_qemu-guest-agent() {
@@ -211,9 +423,9 @@
depends=(gcc-libs glib2 libudev.so liburing)
install=qemu-guest-agent.install
- install -D build-full/qga/qemu-ga "$pkgdir/usr/bin/qemu-ga"
- install -Dm644 qemu-guest-agent.service "$pkgdir/usr/lib/systemd/system/qemu-guest-agent.service"
- install -Dm755 "$srcdir/qemu-$pkgver/scripts/qemu-guest-agent/fsfreeze-hook" "$pkgdir/etc/qemu/fsfreeze-hook"
+ install -vDm 755 build-full/qga/qemu-ga -t "$pkgdir/usr/bin/"
+ install -vDm 644 qemu-guest-agent.service -t "$pkgdir/usr/lib/systemd/system/"
+ install -vDm 755 "$srcdir/qemu-$pkgver/scripts/qemu-guest-agent/fsfreeze-hook" -t "$pkgdir/etc/qemu/"
}
# vim:set ts=2 sw=2 et:
Modified: qemu-guest-agent.install
===================================================================
--- qemu-guest-agent.install 2021-10-13 19:48:31 UTC (rev 425874)
+++ qemu-guest-agent.install 2021-10-13 20:58:48 UTC (rev 425875)
@@ -1,6 +1,9 @@
post_upgrade() {
- echo "qemu-ga.service was renamed to qemu-guest-agent.service"
- echo "You might want to switch to the new service name:"
- echo "# systemctl disable qemu-ga.service"
- echo "# systemctl enable qemu-guest-agent.service"
+ if (( $(vercmp "$2" '5.1.0-2') < 0 )); then
+ printf "NOTE: The qemu-ga.service has been renamed to qemu-guest-agent.service\n"
+ fi
+ if systemctl is-enabled -q qemu-ga.service; then
+ systemctl disable qemu-ga.service
+ systemctl enable qemu-guest-agent.service
+ fi
}
More information about the arch-commits
mailing list