From 077c74782c683a4c8f8348f173ce8e41cc806ac7 Mon Sep 17 00:00:00 2001 From: Marek Marczykowski Date: Mon, 23 Jul 2012 23:17:50 +0200 Subject: [PATCH] vm: kernel-placeholder package to inhibit real kernel pkg in VM (#645) Some packages depends on kernel (ex fuse, pulseaudio), but kernel in VM is managed by dom0. Any hack like exlude or so on will break some things, so install empty placeholder package to fulfill dependencies. --- Makefile | 7 ++++++- rpm_spec/core-vm-kernel-placeholder.spec | 19 +++++++++++++++++++ rpm_spec/core-vm.spec | 1 + 3 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 rpm_spec/core-vm-kernel-placeholder.spec diff --git a/Makefile b/Makefile index 1a80e49..4717ce0 100644 --- a/Makefile +++ b/Makefile @@ -14,10 +14,12 @@ help: rpms: rpmbuild --define "_rpmdir $(RPMS_DIR)" -bb rpm_spec/core-vm.spec + rpmbuild --define "_rpmdir $(RPMS_DIR)" -bb rpm_spec/core-vm-kernel-placeholder.spec rpmbuild --define "_rpmdir $(RPMS_DIR)" -bb rpm_spec/core-dom0.spec rpm --addsign \ $(RPMS_DIR)/x86_64/qubes-core-dom0-$(VERSION_DOM0)*.rpm \ - $(RPMS_DIR)/x86_64/qubes-core-vm-*$(VERSION_VM)*.rpm + $(RPMS_DIR)/x86_64/qubes-core-vm-*$(VERSION_VM)*.rpm \ + $(RPMS_DIR)/x86_64/qubes-core-vm-kernel-placeholder-*.rpm rpms-vaio-fixes: rpmbuild --define "_rpmdir $(RPMS_DIR)" -bb rpm_spec/core-dom0-vaio-fixes.spec @@ -29,6 +31,7 @@ update-repo-current: for vmrepo in ../yum/current-release/current/vm/* ; do \ dist=$$(basename $$vmrepo) ;\ ln -f $(RPMS_DIR)/x86_64/qubes-core-vm-*$(VERSION_VM)*$$dist*.rpm $$vmrepo/rpm/ ;\ + ln -f $(RPMS_DIR)/x86_64/qubes-core-vm-kernel-placeholder-*$$dist*.rpm $$vmrepo/rpm/ ;\ done update-repo-current-testing: @@ -37,6 +40,7 @@ update-repo-current-testing: for vmrepo in ../yum/current-release/current-testing/vm/* ; do \ dist=$$(basename $$vmrepo) ;\ ln -f $(RPMS_DIR)/x86_64/qubes-core-vm-*$(VERSION_VM)*$$dist*.rpm $$vmrepo/rpm/ ;\ + ln -f $(RPMS_DIR)/x86_64/qubes-core-vm-kernel-placeholder-*$$dist*.rpm $$vmrepo/rpm/ ;\ done update-repo-unstable: @@ -45,6 +49,7 @@ update-repo-unstable: for vmrepo in ../yum/current-release/unstable/vm/* ; do \ dist=$$(basename $$vmrepo) ;\ ln -f $(RPMS_DIR)/x86_64/qubes-core-vm-*$(VERSION_VM)*$$dist*.rpm $$vmrepo/rpm/ ;\ + ln -f $(RPMS_DIR)/x86_64/qubes-core-vm-kernel-placeholder-*$$dist*.rpm $$vmrepo/rpm/ ;\ done update-repo-installer: diff --git a/rpm_spec/core-vm-kernel-placeholder.spec b/rpm_spec/core-vm-kernel-placeholder.spec new file mode 100644 index 0000000..2533d47 --- /dev/null +++ b/rpm_spec/core-vm-kernel-placeholder.spec @@ -0,0 +1,19 @@ +# We don't install kernel pkg in VM, but some other pkgs depends on it. +# Done as separate subpackage because yum allows multiple versions of kernel +# pkg installed simultaneusly - and of course we don't want multiple versions +# of qubes-core-vm +Name: qubes-core-vm-kernel-placeholder +Summary: Placeholder for kernel package as it is managed by Dom0 +Version: 1.0 +Release: 1%{dist} +Vendor: Invisible Things Lab +License: GPL +Group: Qubes +URL: http://www.qubes-os.org +# choose the oldest Qubes-supported VM kernel +Provides: kernel = 3.2.7 + +%description +Placeholder for kernel package as it is managed by Dom0. + +%files diff --git a/rpm_spec/core-vm.spec b/rpm_spec/core-vm.spec index 7e2b034..f9ba774 100644 --- a/rpm_spec/core-vm.spec +++ b/rpm_spec/core-vm.spec @@ -39,6 +39,7 @@ Requires: /usr/bin/mimeopen Requires: ethtool Requires: tinyproxy Requires: ntpdate +Requires: qubes-core-vm-kernel-placeholder Provides: qubes-core-vm Obsoletes: qubes-core-commonvm Obsoletes: qubes-core-appvm