Edit Package qemu

QEMU is a generic and open source machine emulator and virtualizer.

QEMU can be used in several different ways. The most common is for System Emulation, where it provides a virtual model of an entire machine (CPU, memory and emulated devices) to run a guest OS. In this mode the CPU may be fully emulated, or it may work with a hypervisor such as KVM or Xen to allow the guest to run directly on the host CPU.

Note that this package is produced using a Git based workflow. Please refer to README.PACKAGING before making modifications.

Source Files (show merged sources derived from linked package)
Filename Size Changed
README.PACKAGING 0000007270 7.1 KB
_constraints 0000001836 1.79 KB
_multibuild 0000000066 66 Bytes
_service 0000000937 937 Bytes
_servicedata 0000000234 234 Bytes
common.inc 0000002284 2.23 KB
qemu-8.2.1.obscpio 0847560719 808 MB
qemu-linux-user.spec 0000009072 8.86 KB
qemu-rpmlintrc 0000000233 233 Bytes
qemu.changes 0000411323 402 KB
qemu.obsinfo 0000000093 93 Bytes
qemu.spec 0000060405 59 KB
Comments 5

Eric Schirra's avatar

qemu-kvm ist missing now for all arch!

And this wrong:

Pacakges we OBSOLETE (and CONFLICT)

Obsoletes: kvm <= %{version} Obsoletes: qemu-kvm <= %{version} Obsoletes: qemu-sgabios <= 8

Should be <, not <=

Dario Faggioli's avatar

I'm sorry, maybe I still missing something about Obsoletes & Friends enough... Can you help me understand why qemu-kvm would be missing for all arches? In fact, I'm not only Obsoleting it, I'm also Providing it, isn't that fine?

FWIW, I've done a few tests with this repository enabled, and it seemed to work:

$ zypper lr Repository priorities in effect: > (See 'zypper lr -P' for details) 90 (raised priority) : 1 repository 99 (default priority) : 4 repositories

| Alias | Name | Enabled | GPG Check | Refresh --+----------------+----------------------------------------+---------+-----------+-------- 1 | Virtualization | Virtualization (openSUSE_Tumbleweed) | Yes | (r ) Yes | Yes 2 | repo-debug | openSUSE-Tumbleweed-Debug | No | ---- | ---- 3 | repo-non-oss | openSUSE-Tumbleweed-Non-Oss | Yes | (r ) Yes | Yes 4 | repo-openh264 | Open H.264 Codec (openSUSE Tumbleweed) | Yes | (r ) Yes | Yes 5 | repo-oss | openSUSE-Tumbleweed-Oss | Yes | (r ) Yes | Yes 6 | repo-source | openSUSE-Tumbleweed-Source | No | ---- | ---- 7 | repo-update | openSUSE-Tumbleweed-Update | Yes | (r ) Yes | Yes

$ zypper in --from 1 qemu-kvm Loading repository data... Reading installed packages... 'qemu-kvm' not found in package names. Trying capabilities. Resolving package dependencies...

The following 37 NEW packages are going to be installed: acl canokey-qemu kernel-devel kernel-macros libaio1 libcapstone4 libefa1 libfdt1 libibverbs libibverbs1 libjpeg8 liblzo2-2 libmana1 libmlx4-1 libmlx5-1 libndctl6 libnuma1 libpixman-1-0 libpmem1 libpng16-16 librdmacm1 libslirp0 libsnappy1 liburing2 libvdeplug3 libxdp1 libyajl2 qemu qemu-accel-tcg-x86 qemu-ipxe qemu-ovmf-x86_64 qemu-seabios qemu-vgabios qemu-x86 rdma-core system-user-qemu xen-libs

I.e., as you can see, no qemu-kvm package is being installed:

$ rpm -qa|grep qemu-kvm $


$ zypper in --from 1 qemu-kvm Loading repository data... Reading installed packages... 'qemu-kvm' not found in package names. Trying capabilities. 'qemu' providing 'qemu-kvm' is already installed. Resolving package dependencies... Nothing to do. $ zypper se --provides qemu-kvm Loading repository data... Reading installed packages...

S | Name | Summary | Type ---+----------------------+----------------------------------------------------+----------- | os-autoinst-qemu-kvm | Convenience package providing os-autoinst+qemu-kvm | package | qemu | Machine emulator and virtualizer | srcpackage i+ | qemu | Machine emulator and virtualizer | package

Furthermore, if I have the actual qemu-kvm package installed, with <= it is automatically removed, which is what I want... So things look good to me. What am I missing?

Eric Schirra's avatar

First a short answer. An offered version (=) cannot be obsolete (<=) at the same time.

And why should qemu-kvm be removed? Doesn't the package require other packages to build or install?

Dario Faggioli's avatar

Mmm... I guess I can try with "Obsoletes: qemu-kvm < %{version}-%{release}

But, yes, the actual qemu-kvm package must be removed, because now the qemu pacakge Obsoletes it, by providing everything that it was providing before (i.e., one symlink).

I don't understand what you mean with "Doesn't the package require other packages to build or install?"

Dario Faggioli's avatar

Ok, I've now tested Obsoletes: qemu-kvm < %{version}-%{release}, and no, it does not do what I want and need, while Obsoletes: qemu-kvm = %{version} does. And the SR has been accepted already, so I'm sticking to that

openSUSE Build Service is sponsored by