🔒 Repository is read-only – file editing is disabled.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
pkgname: qemu
pkgver: '11.1.0'
pkgrel: '1'
pkgdesc: 'Processor emulator using dynamic translation to achieve good emulation speed'
url: 'https://www.qemu.org'
arch: x86_64
depends:
- 'desktop-file-utils'
- ovmf
makedepends:
- meson
- ninja
- pkg-config
- flex
- bison
- dtc
- gtk3
- sdl2
- libseccomp
- 'libcap-ng'
- 'xorg-pixman'
- python
- mesa
- vte
- virglrenderer
- lzo
- nettle
- 'cyrus-sasl'
- libssh2
- pulseaudio
- 'alsa-lib'
- 'alsa-plugins'
- 'alsa-utils'
- check
- bluez
- libgcrypt
- gnutls
- libusb
- usbutils
- 'python-sphinx'
- usbredir
- 'bridge-utils'
- 'xorg-libdrm'
- spice
- 'spice-protocol'
- libaio
- libslirp
source:
- 'qemu-ga.conf'
- '99-qemu-guest-agent.rules'
- 'qemu-sysusers.conf'
- configvm
- startvm
- 'https://download.qemu.org/qemu-${pkgver}.tar.xz'
sha256sums:
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
hooks:
'post-install': |
if [ -d /run/systemd/system ]; then
systemctl daemon-reload || true
systemctl enable qemu-guest-agent || true
fi
echo "QEMU guest agent service is available as qemu-guest-agent.service"
build: |
bsdtar -xf qemu-${pkgver}.tar.xz -C .
cd qemu-${pkgver}
mkdir -vp build
cd build
../configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/libexec \
--enable-modules \
--audio-drv-list=alsa,pa \
--enable-opengl \
--enable-virglrenderer \
--enable-spice \
--enable-slirp \
--enable-kvm \
--docdir=/usr/share/doc/${pkgname}
make
package: |
cd qemu-${pkgver}/build
make DESTDIR="${PKGDIR}" install
# Instalacja własnych skryptów pomocniczych z root katalogu źródeł
for i in configvm startvm; do
install -D -m 755 "../../${i}" "${PKGDIR}/usr/bin/${i}"
done
# Symlink dla domyślnego pliku wykonywalnego
ln -svf qemu-system-x86_64 "${PKGDIR}/usr/bin/qemu"
# Pliki konfiguracyjne i reguły udev
install -vDm 644 ../../99-qemu-guest-agent.rules "${PKGDIR}/usr/lib/udev/rules.d/99-qemu-guest-agent.rules"
install -vDm 644 ../../qemu-sysusers.conf "${PKGDIR}/usr/lib/sysusers.d/qemu.conf"
install -vDm 644 ../../qemu-ga.conf "${PKGDIR}/etc/qemu/qemu-ga.conf"
# Konfiguracja udev dla KVM
install -d "${PKGDIR}/usr/lib/udev/rules.d"
cat > "${PKGDIR}/usr/lib/udev/rules.d/65-kvm.rules" << "EOF"
KERNEL=="kvm", GROUP="kvm", MODE="0660"
EOF
# Pomoce i usługi guest-agenta
if [ -f ../scripts/qemu-guest-agent/fsfreeze-hook ]; then
install -vDm 755 ../scripts/qemu-guest-agent/fsfreeze-hook -t "${PKGDIR}/etc/qemu/"
fi
if [ -f ../contrib/systemd/qemu-guest-agent.service ]; then
install -vDm 644 ../contrib/systemd/qemu-guest-agent.service -t "${PKGDIR}/usr/lib/systemd/system/"
sed -i '/\[Install\]/a WantedBy=multi-user.target' "${PKGDIR}/usr/lib/systemd/system/qemu-guest-agent.service"
fi
# Uprawnienia dla qemu-bridge-helper (bez twardego chgrp na hoście)
if [ -f "${PKGDIR}/usr/libexec/qemu-bridge-helper" ]; then
chmod 4750 "${PKGDIR}/usr/libexec/qemu-bridge-helper"
fi