Hi I am working in Ubuntu and compiling RPMs for Fedora. That's why I install Fedora in a **chroot** environment. That works fine with Fedora 16, but fails with Fedora 17 due to the wrong "rpmlib(X-CheckUnifiedSystemdir)" dependency. I Do not upgrade and I cannot use dracut, because Fedora 17 is in a chroot and cannot boot. So the instructions at http://fedoraproject.org/wiki/Upgrading_Fedora_using_yum do **not** help. How to solve the problem? What does dracut do, why(*) does rpm fail, where does this dependency come from? How can I either fake this dependency or prevent RPM from requiring it? I need a deep inside knowledge on what's going on, what dracut does and what rpm does. What have the fedora-guys patched to get thie wrong dependency, and how can I undo it? ---- (*) I mean technically *why*, not user-view answers like "to prevent upgrades without fs-migration", this kind of answer does not help, but technical answers like "dracut creates content X in file Y, then the dependency is ignored in rpm" ---------- Background information: I use the chroots on an Ubuntu server running a Jenkins build server to build packages for all available Debian, Ubuntu, openSUSE and - as soon as possible - Fedora distributions. I setup a chroot the following way: 1. download all basic RPM files 2. unpack the RPM file into a chroot dir using rpm2cpio to get the basig filesystem 3. within the chroot, call rpm for all packages to run installation scripts an update rpm database In the attachment you find my setup chroot script "susebootstrap.sh". It is originally build for openSUSE, but also works for Fedora with correct parameters; i.e. Install Fedora 16 i686 in a chroot: URL=http://mirror.switch.ch/ftp/mirror/fedora/linux/releases/16/Fedora/i386/os \ HW="i686 noarch" OS=fedora VERSION=16 PKGS="bash rpm yum fedora-release" \ susebootstrap.sh Install Fedora 17 i686 in a chroot: URL=http://mirror.switch.ch/ftp/mirror/fedora/linux/releases/17/Fedora/i386/os \ HW="i686 noarch" OS=fedora VERSION=17 PKGS="bash rpm yum fedora-release" \ susebootstrap.sh Installing Fedora 16 works, installing Fedora 17 fails due to the "rpmlib(X-CheckUnifiedSystemdir)" dependency. The very last step fails, after echo of "... install more basic packages" the command "${CHROOT} -r -- yum -y -q groupupdate Base" fails with: --------------------------------------------------------------------------------- ... install more basic packages ERROR You need to update rpm to handle: rpmlib(X-CheckUnifiedSystemdir) is needed by filesystem-3-2.fc17.i686 RPM needs to be updated You could try running: rpm -Va --nofiles --nodigest Your transaction was saved, rerun it with: yum load-transaction /tmp/yum_save_tx.2012-09-13.08-29.pr4OBd.yumtx **** ERROR aborted. Status of last operation: 1 --------------------------------------------------------------------------------- Thank you Regards Marc
Attachment:
susebootstrap.sh
Description: application/shellscript
-- users mailing list users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe or change subscription options: https://admin.fedoraproject.org/mailman/listinfo/users Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines Have a question? Ask away: http://ask.fedoraproject.org