febootstrap - Bootstrap a basic Fedora system
by Richard W.M. Jones (rjones@redhat.com)
+http://people.redhat.com/~rjones/febootstrap
----------------------------------------------------------------------
febootstrap is a Fedora equivalent to Debian's debootstrap. You can
fakeroot
- Tested with version 1.11.
- fakechroot > 2.8 or 2.8 + patch
- - NB. KNOWN NOT TO WORK WITH 2.8. You MUST apply the patch
- 'fakechroot-2.8-relchroot.patch' to the fakechroot sources
- and recompile. Hopefully this patch will be included in
- future versions of fakechroot.
+ fakechroot >= 2.9 or 2.8 + patch
+ - **** NB. KNOWN NOT TO WORK WITH 2.8 ***** You MUST apply
+ the patch 'fakechroot-2.8-relchroot.patch' to the fakechroot
+ sources and recompile. Hopefully this patch will be included
+ in future versions of fakechroot.
yum
- - Tested with version 3.2.
+ - Tested with version 3.2 (works best with 3.2.21 or above)
- Needs network access to a Fedora repository, or a local
Fedora mirror.
bash
- MAKEDEV
-
- upx
- - Ultimate Packer for eXecutables, for minimizing binaries
+ gcc
qemu
- If you want to test-run your systems.
+ libext2fs
+ /sbin/mke2fs
+ - These are part of e2fsprogs.
+
Building and installing
-----------------------
make
sudo make install
+Note, if you want to run the scripts locally without installing,
+you have to set the $PATH to the current directory, ie:
+
+ PATH=$(pwd):$PATH
+ febootstrap [...]
+
+Debugging
+---------
+
+If you get segfaults while running febootstrap or errors in the %post
+scripts, these are often caused by some incompatibility in the
+emulation provided by fakeroot/fakechroot. You can track them down by
+running the yum command explicitly. Try:
+
+ fakeroot fakechroot -s \
+ yum -y -c /tmp/repo \
+ --disablerepo=\* --enablerepo=febootstrap \
+ --noplugins --nogpgcheck \
+ --installroot=/tmp/root \
+ install "@Core"
+
+where /tmp/repo would be a file like this (change repo and arch
+parameters as appropriate):
+
+ [febootstrap]
+ name=febootstrap
+ failovermethod=priority
+ enabled=1
+ gpgcheck=0
+ mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64
+
+You can insert gdb in the appropriate place in the fakeroot /
+fakechroot / yum command.
+
Feedback and bugs
-----------------