Description
Andreis Vinogradovs ( slepnoga )
2010-01-28 11:57:54 UTC
Its much more than a library. Its an actual "appliance" device. It will require to build a mini version of your distro and booting that inside of qemu and then it attaches the disk image inside of it. Inside the distro image it has a little daemon that listens for requests from the host system's guestfs speaking applications. Its got a GIANT dependency list and will be quite involved to build. I found a libguestfs ebuild at the rion overlay: http://gpo.zugaina.org/app-emulation/libguestfs I tried to emerge it, seems broken though... It depends on fakechroot, febootstrap, rpm and yum. So I guess this ebuild will require rpm packages from the redhat distros like fedora. I do not think it's a good approach... However, it'll be really great to get libguestfs emerged in gentoo. Waiting for update to this request.. This might be of interest to packagers: http://libguestfs.org/download/binaries/REUSING-THE-APPLIANCE.txt Of course this means using the binary blob that we supply (basically it's a Fedora-based appliance). However this is way easier than any other build method. An ebuild-based method would require someone from Gentoo to write an appliance builder similar to debirf or febootstrap, and this is no simple task. (In reply to comment #3) > I found a libguestfs ebuild at the rion overlay: > > http://gpo.zugaina.org/app-emulation/libguestfs > > I tried to emerge it, seems broken though... > It depends on fakechroot, febootstrap, rpm and yum. So I guess this ebuild will > require rpm packages from the redhat distros like fedora. I do not think it's a > good approach... > > However, it'll be really great to get libguestfs emerged in gentoo. Waiting for > update to this request.. > zugaina collect all overlay. This ebuild in rion overlay and mantained by me. I have not come up with ways to install it :( Created attachment 251619 [details]
libguestfs-1.5.21.ebuil
Very small and experimental ebuild
Created attachment 251621 [details]
disable-debootstrap-configure.ac.patch
Comment 6 ebuild looks good to me. Comment 7 is really an upstream bug, you shouldn't need that patch. I have noted it here: https://bugzilla.redhat.com/show_bug.cgi?id=645869 Gentoo maintainers should be aware of this moderate CVE which affects libguestfs <= 1.5.21: https://www.redhat.com/archives/libguestfs/2010-October/msg00036.html CVE-2010-3851 libguestfs: missing disk format specifier when adding a disk A patch to fix this is done (we are still testing it) and will be in 1.5.22. Comment on attachment 251621 [details] disable-debootstrap-configure.ac.patch upstream fix this bug, see https://bugzilla.redhat.com/show_bug.cgi?id=645869#c1 Created attachment 252713 [details]
libguestfs-1.5.26.ebuild
Created attachment 252715 [details, diff]
Patch, that fixes automagic (not completely ready though)
Created attachment 253533 [details, diff]
Patch that completely removes automagic.
After three days of hard work i've done this. Hope it's no errors.
Created attachment 253535 [details]
Experimental ebuild for libguestfs-1.7.1
Ebuild for libguestfs-1.7.1. dev-perl/Sys-Virt and dev-ml/xml-light are in 'rion' overlay (available in layman)
Patch in previous comment is example, please look at this place for updates: http://code.google.com/p/slepnoga/source/browse/#hg/portage/app-emulation/libguestfs Maxim, I have converted your patch in comment 13 and pushed it upstream. http://git.annexia.org/?p=libguestfs.git;a=summary There are some differences from your patch however: (1) The options have the opposite sense (--disable-<feature>): --disable-fuse Disable FUSE (guestmount) support --disable-ocaml Disable OCaml language bindings --disable-perl Disable Perl language bindings --disable-python Disable Python language bindings --disable-ruby Disable Ruby language bindings --disable-haskell Disable Haskell language bindings --disable-php Disable PHP language bindings (2) If you specify --enable-<feature> then it auto-detects the feature and will not be fatal if the feature is not present. So this is slightly different from what you did where you changed the feature detection to fail if the feature was not found. (3) I did not implement --disable-inspector nor --disable-tools. That is because we will probably rewrite some of these tools in another language (ie. not Perl) soon, so this will all change. (4) I did not change po4a handling, but did make your change to po-docs/ja/Makefile.am so it should work if po4a is not available. libguestfs 1.7.3 will include all of these changes, plus the missing generated files, so I hope that it will be suitable for Gentoo. However if there is anything which is still missing / not working in 1.7.3 then let me know. Created attachment 253719 [details]
libguestfs-1.7.3.ebuild
Created attachment 253721 [details, diff]
1.7.3.patch
Created attachment 255373 [details]
libguestfs-1.7.12.ebuild
Created attachment 255375 [details, diff]
remove-root-check.patch
Created attachment 255397 [details]
libguestfs-1.7.13.ebuild
This might be interesting ... I have changed the way the appliance is built (simplified it in fact), so that now all that is needed are a few simple package manager operations in order to build a supermin appliance on any distro. Unfortunately it is focused currently on binary distributions (we have written back ends for Fedora, Debian/Ubuntu and ArchLinux so far). But it may be possible to adapt these for source distros like Gentoo. https://www.redhat.com/archives/libguestfs/2010-December/msg00012.html https://www.redhat.com/archives/libguestfs/2010-December/msg00015.html #346753 block to build aplance - yum not work correctly Created attachment 262383 [details]
libguestfs-1.7.19.ebuild
I use 1.7.19 version more than 2 months
Created attachment 275455 [details]
libguestfs-1.8.7
Created attachment 275457 [details]
/libguestfs-1.10.3
Created attachment 275459 [details]
1.8/disable_php_in_makefile.patch
Created attachment 275461 [details]
1.8/configure.ac_all.patch
Created attachment 275463 [details]
1.10/configure.ac_all.patch
Created attachment 275465 [details]
1.10/disable_php_in_makefile.patch
Created attachment 291839 [details]
libguestfs-1.8.13.ebuild
1.8.15 version finally added to tree with hard mask. Thanks. |