diff --git a/0000-hotfix.patch b/0000-hotfix.patch index 0d2107a..1013931 100644 --- a/0000-hotfix.patch +++ b/0000-hotfix.patch @@ -1,4 +1,4 @@ -From 0c5d0904ac4699ba02af1815598fa57ba296d3fd Mon Sep 17 00:00:00 2001 +From 032655f5dd4fcc06a0c4da91efde617ac1536080 Mon Sep 17 00:00:00 2001 From: Olaf Hering Date: Tue, 13 May 2014 15:31:21 +0200 Subject: hotfix diff --git a/1000-force-virtio_blk-in-old-guest-kernel.patch b/1000-force-virtio_blk-in-old-guest-kernel.patch index 7b07fa2..1c0e088 100644 --- a/1000-force-virtio_blk-in-old-guest-kernel.patch +++ b/1000-force-virtio_blk-in-old-guest-kernel.patch @@ -1,4 +1,4 @@ -From ec0d8e661b5cb97ea3e2ed5ffb86bdfb538fca00 Mon Sep 17 00:00:00 2001 +From 01e40a5583c02603cb4fccaddfd06e60804d96f6 Mon Sep 17 00:00:00 2001 From: Olaf Hering Date: Mon, 3 Sep 2012 19:50:44 +0200 Subject: force virtio_blk in old guest kernel @@ -14,10 +14,10 @@ Signed-off-by: Olaf Hering 6 files changed, 27 insertions(+), 4 deletions(-) diff --git a/fish/options.c b/fish/options.c -index 80b71ec..2cef1bc 100644 +index 5e6eb73..2c1a48a 100644 --- a/fish/options.c +++ b/fish/options.c -@@ -100,7 +100,10 @@ add_drives_handle (guestfs_h *g, struct drv *drv, char next_drive) +@@ -101,7 +101,10 @@ add_drives_handle (guestfs_h *g, struct drv *drv, char next_drive) { int r; struct guestfs_add_drive_opts_argv ad_optargs; @@ -29,7 +29,7 @@ index 80b71ec..2cef1bc 100644 if (next_drive > 'z') { fprintf (stderr, _("%s: too many drives added on the command line\n"), -@@ -114,7 +117,7 @@ add_drives_handle (guestfs_h *g, struct drv *drv, char next_drive) +@@ -115,7 +118,7 @@ add_drives_handle (guestfs_h *g, struct drv *drv, char next_drive) free (drv->device); drv->device = NULL; @@ -100,7 +100,7 @@ index 17b0b5f..20af3f7 100644 } else if ((part = match1 (g, spec, re_diskbyid)) != NULL) { diff --git a/src/launch-direct.c b/src/launch-direct.c -index 2332368..67b9fd4 100644 +index 070dfca..fa5d08b 100644 --- a/src/launch-direct.c +++ b/src/launch-direct.c @@ -1183,6 +1183,8 @@ qemu_supports_virtio_scsi (guestfs_h *g, struct backend_direct_data *data) diff --git a/libguestfs-1.26.3.tar.xz b/libguestfs-1.26.3.tar.xz deleted file mode 100644 index be6ccd3..0000000 --- a/libguestfs-1.26.3.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d1e38a0b8a05966f6e163c2c001052d051d63e1cd825d8c9c14d940c366dbb4c -size 5007492 diff --git a/libguestfs-1.26.5.tar.xz b/libguestfs-1.26.5.tar.xz new file mode 100644 index 0000000..dd63684 --- /dev/null +++ b/libguestfs-1.26.5.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d20597c236a54e197c9e6f53108a5ceadf737de02cd15a627a3910f6d1d2fff +size 5006568 diff --git a/libguestfs.changes b/libguestfs.changes index 9f511dd..71cf274 100644 --- a/libguestfs.changes +++ b/libguestfs.changes @@ -1,3 +1,41 @@ +------------------------------------------------------------------- +Mon Jul 7 10:12:36 CEST 2014 - ohering@suse.de + +- Update requirements for kvm package. Instead of calling qemu-kvm + and Requires: kvm, replace the Requires with /usr/bin/qemu-system-$ARCH + Define the helper for aarch64, ppc64, s390x and x86_64. + Other archs have to use LIBGUESTFS_HV= (bnc#884564) + +------------------------------------------------------------------- +Mon Jul 7 09:37:23 CEST 2014 - ohering@suse.de + +- Update to version 1.26.5 + * generator: Sort the structs. + * Use -v and -x flags consistently across OCaml virt-* tools. + * mllib: Rewrite text wrapping function so it can handle newlines within the text. + * mllib: Add a common 'warning' utility function. + * mllib: Add an interface for Common_utils library. + * mllib: Move common code for comparing version strings to library. + * options: Compile out part of union which cannot be used when not compiling guestfish. + * mllib: Create a common utility function is_directory. + * fuse: UID 0 should override all permissions checks (RHBZ#1106548). + * launch: libvirt: Only use serial BIOS (sgabios) on x86. + * daemon: print parameters for vgchange in error messages + * generator: fix daemon functions with optional params but no mandatory params + * appliance: Increase udev timeout to 6000s (RHBZ#1096579). + * launch: libvirt: Add -device sga (sgabios). + +------------------------------------------------------------------- +Fri Jul 4 09:51:06 CEST 2014 - ohering@suse.de + +- Add cdrkit-cdrtools-compat, psmisc, gptfdisk, syslinux to + BuildRequires to reduce amount of missing commands + +------------------------------------------------------------------- +Fri Jul 4 09:29:11 CEST 2014 - ohering@suse.de + +- Include mkinitrd scripts for btrfs, and include it in feature list + ------------------------------------------------------------------- Wed Jul 2 11:27:26 CEST 2014 - ohering@suse.de diff --git a/libguestfs.mkinitrd.boot-btrfs.sh b/libguestfs.mkinitrd.boot-btrfs.sh new file mode 100644 index 0000000..9c59ee6 --- /dev/null +++ b/libguestfs.mkinitrd.boot-btrfs.sh @@ -0,0 +1,22 @@ +#!/bin/bash -e +#%stage: filesystem +#%depends: dm dmraid lvm2 udev md luks +#%programs: btrfs +#%programs: btrfs-convert +#%programs: btrfs-debug-tree +#%programs: btrfs-dump-super +#%programs: btrfs-find-root +#%programs: btrfs-image +#%programs: btrfs-select-super +#%programs: btrfs-zero-log +#%programs: btrfsck +#%programs: btrfstune +# for fsck(8): listed twice so that a copy really ends up in /sbin +#%programs: /sbin/fsck.btrfs +#%programs: fsck.btrfs +#%programs: mkfs.btrfs +#%modules: btrfs + +modprobe btrfs + +btrfs dev scan >& /dev/null diff --git a/libguestfs.mkinitrd.setup-btrfs.sh b/libguestfs.mkinitrd.setup-btrfs.sh new file mode 100644 index 0000000..8cbe45c --- /dev/null +++ b/libguestfs.mkinitrd.setup-btrfs.sh @@ -0,0 +1,6 @@ +#!/bin/bash +# +#%stage: filesystem + +mkdir -p $tmp_mnt/etc/udev/rules.d +cp /usr/lib/udev/rules.d/64-btrfs.rules $tmp_mnt/etc/udev/rules.d diff --git a/libguestfs.spec b/libguestfs.spec index c8786b2..9ab38f0 100644 --- a/libguestfs.spec +++ b/libguestfs.spec @@ -17,7 +17,7 @@ # -Version: 1.26.3 +Version: 1.26.5 Release: 0 %define opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0) @@ -95,6 +95,21 @@ Release: 0 %define kernel_binary /boot/uImage %endif # +# use 'env LIBGUESTFS_HV=/path/to/kvm libguestfs-test-tool' to verify +%define kvm_binary /bin/false +%ifarch aarch64 +%define kvm_binary /usr/bin/qemu-system-aarch64 +%endif +%ifarch ppc64 +%define kvm_binary /usr/bin/qemu-system-ppc64 +%endif +%ifarch s390x +%define kvm_binary /usr/bin/qemu-system-s390x +%endif +%ifarch x86_64 +%define kvm_binary /usr/bin/qemu-system-x86_64 +%endif +# %define guestfs_docdir %{_defaultdocdir}/%{name} # Name: libguestfs @@ -169,6 +184,8 @@ Source16: libguestfs.mkinitrd.boot-md.sh Source17: libguestfs.mkinitrd.setup-md.sh Source18: libguestfs.mkinitrd.boot-nfs.sh Source19: libguestfs.mkinitrd.setup-nfs.sh +Source20: libguestfs.mkinitrd.boot-btrfs.sh +Source21: libguestfs.mkinitrd.setup-btrfs.sh # Source1220: libguestfs.mkinitrd.1220.patch Source1210: libguestfs.mkinitrd.1210.patch @@ -205,7 +222,7 @@ License: GPL-2.0 Group: System/Filesystems Provides: %{name} = %{version} Obsoletes: %{name} < %{version} -Requires: kvm >= 1.1 +Requires: %{kvm_binary} %if %{with bash_completion} Recommends: bash-completion >= 2.0 %endif @@ -365,6 +382,7 @@ BuildRequires: sles-release BuildRequires: augeas-lenses BuildRequires: btrfsprogs BuildRequires: bzip2 +BuildRequires: cdrkit-cdrtools-compat BuildRequires: coreutils BuildRequires: cpio BuildRequires: cryptsetup @@ -383,6 +401,9 @@ BuildRequires: gawk BuildRequires: genisoimage BuildRequires: glibc BuildRequires: grep +%if %suse_version > 1210 +BuildRequires: gptfdisk +%endif BuildRequires: gzip BuildRequires: iproute2 BuildRequires: jfsutils @@ -397,9 +418,13 @@ BuildRequires: nfs-client BuildRequires: ntfs-3g BuildRequires: ntfsprogs BuildRequires: parted +BuildRequires: psmisc BuildRequires: reiserfs BuildRequires: rsync BuildRequires: strace +%ifarch %ix86 x86_64 +BuildRequires: syslinux +%endif BuildRequires: tar BuildRequires: terminfo-base BuildRequires: udev @@ -483,7 +508,7 @@ export PERLLIB=`echo $PWD/Pod-Simple-*/lib` # With QEMU in environment qemu and kvm packages are not needed at build time. # With SUPERMIN and SUPERMIN_HELPER in environment, supermin package is not needed at build time. export vmchannel_test=no -export QEMU=/usr/bin/qemu-kvm +export QEMU="%{kvm_binary}" export SUPERMIN=supermin export SUPERMIN_HELPER=supermin-helper # for configure macro below @@ -650,6 +675,8 @@ cp -avL %{S:16} mkinitrd/scripts/boot-md.sh cp -avL %{S:17} mkinitrd/scripts/setup-md.sh cp -avL %{S:18} mkinitrd/scripts/boot-nfs.sh cp -avL %{S:19} mkinitrd/scripts/setup-nfs.sh +cp -avL %{S:20} mkinitrd/scripts/setup-btrfs.sh +cp -avL %{S:21} mkinitrd/scripts/setup-btrfs.sh cp -avb /lib/mkinitrd/scripts/* mkinitrd/scripts mkdir -vp mkinitrd/setup mkinitrd/boot ln -sfvbn lib/mkinitrd/bin mkinitrd/bin @@ -738,7 +765,7 @@ bash -x \ -i initramfs.${arch}.img \ -b $PWD/mkinitrd/boot_tmp \ -m "$additional_modules" \ - -f "lvm2 dm md network nfs" \ + -f "lvm2 dm md network nfs btrfs" \ -B # mkdir -vp $RPM_BUILD_ROOT%{_libdir}/guestfs