| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
ArchLinux used to keep its kernel in /boot/vmlinuz26 but, with
Linux 3.0, now uses /boot/vmlinuz-linux. Instead of just changing the
kernel filename and module directory, this change removes the ArchLinux
specific code, lets febootstrap find a kernel, and then computes the
module directory from the version string extracted from the actual kernel
file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Detect libz and, if present, define HAS_LIBZ and add -lz to Makefile's
LIBS variable.
Add entry on optional zlib package requirement.
Detect both uncompressed and gzipped kernel modules.
Some Linux distros (like ArchLinux) use gzipped kernel modules with
filenames like ext2.ko.gz. This change modifies the filename pattern
from (e.g.) "ext2.ko" to "ext2.ko*".
When available, use libz to read the module.
The init_module system call requires uncompressed kernel module bytes.
On some systems (e.g. ArchLinux) the modules are gzipped on disk.
Libz is used to read and uncompress gzipped disk files (*.ko.gz) or
transparently read uncompressed modules (*.ko).
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This saves over 5 seconds during the slow path construction of the
appliance.
The ext2fs_close2 API is present in the e2fsprogs 'next' branch and
will be in a later e2fsprogs release (thanks Ted Ts'o).
|
|
|
|
|
|
|
| |
downloading and unpacking them.
This also adds --use-installed switch (which for now only works for
Debian).
|
|
|
|
|
| |
This step takes a considerable amount of time (about half of the total
construction time), so separately display a timestamped message for it.
|
| |
|
|
|
|
|
|
| |
This technique copied from libguestfs/resize/Makefile.am and modified
so that it works with old ocamldep that used to add spaces at the end
of lines.
|
| |
|
| |
|
|
|
|
|
| |
Now we have src/ for febootstrap and helper/ for
febootstrap-supermin-helper.
|
|
|
|
| |
This updates commit 3ac623701e5fe5ce94b22b4f40f72ee0161d5184.
|
|
|
|
|
|
|
|
|
| |
Ubuntu 10.04 LTS has a broken apt-cache depends --recurse command
which does not in fact recurse deeply enough to find all dependencies
(this is fixed in Ubuntu 11.04).
Include a workaround for this so we can use febootstrap on old Ubuntu
versions.
|
| |
|
| |
|
| |
|
|
|
|
| |
This updates commit df569d49aa10af5995f771362ddc1400f16486e8.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
objcopy needs "output-target" and "binary-architecture" parameters
which makes it necessary to keep a list of known architectures.
The bin2s.pl script generates input for the GNU assembler which should
produce an object file that is equivalent to that produced by objcopy.
I have successfully tested the change on an amd64 Debian/unstable system.
RWMJ: Added bin2s.pl to EXTRA_DIST and updated .gitignore.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Modern kernels allow you to use the ext4.ko module to support ext2 and
ext3 access.
On Fedora, this is the default (albeit not as a module, so this code
path would not be tested yet).
|
|
|
|
| |
https://www.redhat.com/archives/libguestfs/2011-August/msg00025.html
|
| |
|
| |
|
| |
|
|
|
|
| |
This is just code tidy-up.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
In Rawhide there are two patches which create /etc/pam.d and /etc/pam.d/
febootstrap was trying to treat these as two separate directories.
Add a de-duplication step so that these names are considered the same.
We could go further than this patch (eg. removing multiple //
characters), but this patch is sufficient to fix Fedora builds.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous implementation had two problems: (I) Not all needed
kernel modules were copied to the initrd. (II) If a kernel module
depended on more than one other module, only the first dependency was
considered for the load order. Using 2.6.39-1-amd64 (Debian/unstable)
ext2.ko was not loaded and therefore the root FS could not be mounted.
The use of tsort(1) has been replaced with a set of functions that
build a DAG in memory and use that to calculate the list of modules to
be copied into the initrd and the order in which to load them.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Add module loading functionality into init.c, thus making
insmod.static unnecessary.
|
| |
|
|
|
|
|
|
|
|
|
| |
After adding a line containing "/lib/modules" to hostfiles solved the
immediate problem for me -- febootstrap-supermin-helper finished its
run.
The attached patch makes sure that febootstrap-supermin-helper always
creates this directory.
|
| |
|
| |
|
|
|
|
|
|
| |
The overhead is now 66 MB which is unfortunate. However 4 GB should
be enough for people who accidentally add kernel modules that are
hand-compiled with all the debuginfo information in them.
|
|
|
|
|
|
|
|
|
|
|
| |
The appliance root was 1GB. However the error message you got
if you overran this space was very obscure:
febootstrap-supermin-helper: ext2fs_file_write:
Could not allocate block in ext2 filesystem
This adds the name of the file that is failing, and replaces the error
message with something more meaningful.
|
| |
|
| |
|
| |
|
| |
|