[Pkg-libvirt-maintainers] Bug#648291: libguestfs0 depends on zfs-fuse, causing removal of zfsutils

Craig Sanders cas at taz.net.au
Thu Nov 10 10:47:48 UTC 2011


Package: libguestfs0
Version: 1.14.1-2

I only just heard about libguestfs tonight, thought it sounded very
useful and less hassle than calculating partition offsets for loopback
mounts. went to install it, and it wanted to remove zfsutils (a locally
compiled debian version of the ubuntu zfsonlinux ppa with a slightly
modified debian/control file) in favour of zfs-fuse. ummm, no thanks.

e.g. 

# apt-get -d -u install guestfish guestmount python-guestfs
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  augeas-lenses cryptsetup febootstrap jfsutils libaugeas0 libconfig8 libcryptsetup1 libguestfs0 libhivex0 scrub vim-tiny zerofree zfs-fuse
Suggested packages:
  augeas-doc busybox augeas-tools kpartx
The following packages will be REMOVED:
  zfsutils
The following NEW packages will be installed:
  augeas-lenses cryptsetup febootstrap guestfish guestmount jfsutils libaugeas0 libconfig8 libcryptsetup1 libguestfs0 libhivex0 python-guestfs scrub vim-tiny zerofree zfs-fuse
0 upgraded, 16 newly installed, 1 to remove and 151 not upgraded.
Need to get 0 B/5,101 kB of archives.
After this operation, 14.1 MB of additional disk space will be used.
Do you want to continue [Y/n]? n
Abort.



I suggest changing that dependency from 'zfs-fuse' to 'zfs-fuse | zfsutils'.
zfsonlinux doesn't exist in debian (yet), but most debian users who
install zfsonlinux will probably take the easy path that i did and
recompile the ubuntu packages.

native kernel zfs IS already in debian/kfreebsd, so might help with
compatibility there.


alternatively, it would probably be much better to change the Depends
to Recommends or Suggests for 'unusual' filesystems like zfs, cryptfs, reiserfs,
jfs, ntfs, probably even xfs. same for lvm2 (anyone using zfsonlinux or
zfs-fuse and probably btrfs is extremely unlikely to be using LVM).

ext2/3/4 is pretty much guaranteed to be installed on almost every
debian systems, btrfs is the upcoming 'standard' fs for linux but the
others are typically only installed by people who really need/want them.

Suggets or Recommends seems more appropriate than Depends for everything
beyond the bare minimum of what libguestfs0 actually needs.

e.g. gparted doesn't Depend on the tools or libs for all file-systems
that it supports, it just suggests them:

  Package: gparted
  [..]
  Suggests: xfsprogs, reiserfsprogs, reiser4progs, jfsutils, ntfsprogs, dosfstools, yelp, kpartx, dmraid, dmsetup



BTW, looking at that depends line below there are a few other odd and
possibly excessive dependencies. e.g. does it really need to specify
vim-tiny? i already have vim installed. and does libguesfs0 really
require qemu-kvm to run, or is it just a convenience? not a problem for
me, i mostly use kvm...but i imagine Xen users won't really want it
installed. and are scrub or zerofree or parted required if all you want
to do is mount or examine or clone a vm's disk?

and i can't figure out if febootstrap is needed for basic functionality
or if it's only needed for specific kinds of image manipulation?

Depends: libc6 (>= 2.7), libhivex0, libmagic1, libpcre3 (>= 8.10), libvirt0 (>= 0.1.1), libxml2 (>= 2.7.4), debconf (>= 0.5) | debconf-2.0, febootstrap (>= 3.2), qemu-kvm (>= 0.13), bsdmainutils, btrfs-tools, cryptsetup, diffutils, iproute, libaugeas0, ntfs-3g, ntfsprogs, reiserfsprogs, udev, vim-tiny, xz-utils, zfs-fuse, binutils, cpio, dosfstools, file, jfsutils, lsof, lvm2, module-init-tools, net-tools, parted, procps, scrub, strace, xfsprogs, zerofree



craig

ps: as a short term workaround i could probably modify the
debian/control file so that the zfsonlinux zfs-dkms or zfsutils package
falsely claimed that it Replaces and/or Provides zfs-fuse, but that
might cause other weird dependancy problems.

-- 
craig sanders <cas at taz.net.au>





More information about the Pkg-libvirt-maintainers mailing list