On Tue, 2009-09-15 at 15:47 +0545, Daniel Drake wrote: > Hi, > > A number of difficulties/unfortunate circumstances are combining and > causing me a headache. I'm looking for help/ideas on getting around > these... > > I am trying to build a customized version of the OLPC XS school server > for the OLPC deployment here in Nepal. The latest XS release is based > on F9. An F11/F12 update is on the cards, but the XS development team > is small and has more pressing priorities right now. > I have an F11 iso you could test ;) > The internet connection here at the office is too slow to make local > builds, and also the power get turned off every night. > > We do have a F11 box at the ISP which has a satisfactory internet > connection and reliable power, and we do have a speedy connection from > the office to that box. This box is also used to build other software > components for the deployment so there are multiple reasons why it > makes sense for us to run the school server build there. > > The XS build system uses revisor and the upstream version is built on > a F9 box. My problems originate from having to build our customized > version from F11. We do not have the hardware or space to install a F9 > box there, and we cannot downgrade our F11 system. > Are you just adding rpms to the install media? Or are you trying something more difficult? I have a process in mind if you're just adding rpms to the mix... > The first thing I tried is to use the F11 revisor to build the F9 XS > release. No luck - it fails on anaconda buildinstall due to big > differences in the F11 anaconda on the host system vs the F9 anaconda > in the target media. Not too surprising. > Revisor used to lie to buildinstall about the host environment, using the version_from parameter, which just calls buildinstall based on your target's version of Fedora (in /usr/lib/revisor/scripts) from: /usr/lib/python2.6/site-packages/revisor/pungi.py # setup the buildinstall call if os.access("scripts/%s-buildinstall" % self.cfg.version_from, os.R_OK): buildinstall.extend([os.path.abspath("scripts/% s-buildinstall" % self.cfg.version_from)]) elif os.access("/usr/lib/revisor/scripts/%s-buildinstall" % self.cfg.version_from, os.R_OK): buildinstall.extend(["/usr/lib/revisor/scripts/% s-buildinstall" % self.cfg.version_from]) else: buildinstall.extend(['/usr/lib/anaconda-runtime/buildinstall']) #buildinstall.append('TMPDIR=%s' % self.workdir) # TMPDIR broken in buildinstall # FIXME: Determine options from the anaconda-runtime version if self.cfg.version_from in [ "F9", "F10", "F11", "DEVEL" ]: buildinstall.append('--debug') However, I see that the older buildinstall(s) are not present any more(?)! (File a bug I guess) If you were to add the buildinstall from F9's anaconda in revisor's script directory as F9-buildinstall, then the buildinstall from F9 should be used instead of the one on the host system. > I looked into using pungi instead, but the documentation states: > "Pungi needs to run on the arch it is composing, as root, and with an > install of what it is composing, eg if you are composing Fedora 8, you > need to be running Fedora 8." > Funny, how would you build a rawhide beta/preview release? ;) just kidding... I've been able to build a lesser version of Fedora than what is running on the build host in the past, but it has been awhile since I tried. > I then tried to create a F9 chroot using mock, with the intention of > running revisor or pungi inside. This doesn't work, because mock > creates a v9 berkeley DB inside the chroot, but the libraries/apps > inside the chroot only support bdb v8. So running "rpm -qa" inside a > fresh F9 chroot on F11 gives you these errors: > mock-chroot> rpm -qa > rpmdb: /var/lib/rpm/Packages: unsupported hash version: 9 > error: cannot open Packages index using db3 - Invalid argument (22) > error: cannot open Packages database in /var/lib/rpm > And revisor and pungi fail in the same way, even though the Pungi > docs suggest this kind of thing should be possible: > https://fedorahosted.org/pungi/wiki/PungiDocs/RunningPungiInMock > Just spinning up a test release using F11 as the host to build XS-server-f9, using revisor as used in the Makefile at: http://dev.laptop.org/git/projects/xs-livecd/tree/ > Finally I tried to use db_dump on the F11 host to dump the database > using the v9 tools, to go into the chroot and use db_load to import it > using the v8 tools, but this also results in a v9 database being > loaded :( > > Any further ideas or suggestions? > Maybe, just need to know what your trying to do. Jerry -- fedora-devel-list mailing list fedora-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-devel-list