[CC also to libguestfs mailing list] On Tue, May 17, 2011 at 08:11:10PM +0200, Guido G?nther wrote:> As to binary debs: I wonder if we can't just get away by adding the > needed packages as build-depends (so they end up installed on the buildd > before the package built) and modify febootstrap to look at the > _installed_ files instead of at the downloaded debs. > > Looking at febootstrap_debian.ml this looks possible but very likely I'm > missing something. I'm not very good at OCaml though.I guess the (non-obvious) thing you're missing is that we can't use installed configuration files, because the sysadmin may have changed them. We need the original of all files, and we get those from the *.debs. In the special case (and only in this special case) where we are building on the Debian builders, there's no sysadmin and so no one could have modified any configuration or other files. However there may still be other problems I haven't seen. How to get the list of files in each package (should be OK: dpkg -L). How to resolve the dependencies so we know we have all packages / files? With the Fedora builders, we have the *.rpm files left around and we use them. Is that not the same in the Debian case?> Is the insmod.static issue somehow resolved? Maybe filing a wishlist bug > would help?Still a bug AFAIK. In Fedora we build module-init-tools from source and we don't do anything special[1] to get insmod.static, so I'm not sure why it doesn't exist on Debian too.> Having febootstrap/libguestfs in Debian would be great, I've met so many > people asking about it's status! Roland, do you plan to work on > libguestfs? If so I'd be happy to add you to the pkg-libvirt team.Hope you can get something worked out. Let me know if you need any more help. libguestfs is legendarily hard to build ... Rich. [1] http://pkgs.fedoraproject.org/gitweb/?p=module-init-tools.git;a=blob;f=module-init-tools.spec;hb=HEAD -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones virt-p2v converts physical machines to virtual machines. Boot with a live CD or over the network (PXE) and turn machines into Xen guests. http://et.redhat.com/~rjones/virt-p2v
Hi Richard, On Tue, May 17, 2011 at 07:32:17PM +0100, Richard W.M. Jones wrote:> [CC also to libguestfs mailing list] > > On Tue, May 17, 2011 at 08:11:10PM +0200, Guido G?nther wrote: > > As to binary debs: I wonder if we can't just get away by adding the > > needed packages as build-depends (so they end up installed on the buildd > > before the package built) and modify febootstrap to look at the > > _installed_ files instead of at the downloaded debs. > > > > Looking at febootstrap_debian.ml this looks possible but very likely I'm > > missing something. I'm not very good at OCaml though. > > I guess the (non-obvious) thing you're missing is that we can't use > installed configuration files, because the sysadmin may have changed > them. We need the original of all files, and we get those from the > *.debs. > > In the special case (and only in this special case) where we are > building on the Debian builders, there's no sysadmin and so no one > could have modified any configuration or other files.Sure. I was only refering to the build servers here.> However there may still be other problems I haven't seen. How to get > the list of files in each package (should be OK: dpkg -L). How to > resolve the dependencies so we know we have all packages / files?dpkg -L should do the trick. For dependencies it seems you're using "apt-cache depends --recurse -i %s" but I didn't look closely.> With the Fedora builders, we have the *.rpm files left around and we > use them. Is that not the same in the Debian case?I don't think we can assume we have all the debs around if we build-depend on them. The packages might be already installed on the system and therefore might be already removed from /var/cache/apt/archives/. Could we build the appliance on the target system and only update it on package upgrades?> > Is the insmod.static issue somehow resolved? Maybe filing a wishlist bug > > would help? > > Still a bug AFAIK. > > In Fedora we build module-init-tools from source and we don't do > anything special[1] to get insmod.static, so I'm not sure why it > doesn't exist on Debian too.It just didn't get built and installed. I've filed a bug so we can at least update febootstrap in Debian to 3.0. (Closes: #627353)> > Having febootstrap/libguestfs in Debian would be great, I've met so many > > people asking about it's status! Roland, do you plan to work on > > libguestfs? If so I'd be happy to add you to the pkg-libvirt team. > > Hope you can get something worked out. Let me know if you need any > more help. > > libguestfs is legendarily hard to build ...In fact I find it fun to build but unfortunately lack the time to work on it. Cheers, -- Guido> > Rich. > > [1] http://pkgs.fedoraproject.org/gitweb/?p=module-init-tools.git;a=blob;f=module-init-tools.spec;hb=HEAD > > -- > Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones > virt-p2v converts physical machines to virtual machines. Boot with a > live CD or over the network (PXE) and turn machines into Xen guests. > http://et.redhat.com/~rjones/virt-p2v >
On Mon, May 23, 2011 at 02:10:17PM +0400, Nikita A Menkovich wrote:> The same way, as gcc compiles gcc :) > We could prepare deb package with images, prepared with guestfs.In febootstrap 3.x we use libext2fs to build the simple ext2 image that is used for booting. So we don't need bootstrapping. Really I think here you're solving something that has already been thought about in a lot of detail and solved. I wish I knew the root cause -- Is there some script or trigger that a Debian package is running which is causing a problem because we're not running it? -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones New in Fedora 11: Fedora Windows cross-compiler. Compile Windows programs, test, and build Windows installers. Over 70 libraries supprt'd http://fedoraproject.org/wiki/MinGW http://www.annexia.org/fedora_mingw
Apparently Analagous Threads
- [PATCH febootstrap] Some cleanups for Debian and Ubuntu
- [PATCH] Correctly build febootstrap on systems without native OCaml compiler
- builder-debian febootstrap success 6720ad28eddbcd671032c151f7219a35ba615b1b
- Re: febootstrap: no ext2 root device found
- [PATCH] febootstrap: Use contents of installed Debian packages instead of downloading and unpacking them.