Age | Commit message (Collapse) | Author | Files | Lines |
|
This is needed for the --recursive flag.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Without this flag set, errors in install_modules are ignored, and
mkinitcpio potentially exits without complaining about build problems
when foolish people run out of disk (presumably after using /tmp as a
build directory).
Fixes FS#35037.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Add this as an abstraction for the various places firmware might exist.
Additionally, don't complain about missing firmware unless *none* of it
can be found -- and even then, only throw a warning.
NB: this means that users building images without the autodetect hook
and a rudimentary hook like "block" will see warnings which are going
to cause panic, chaos, and upheaval. I fully expect that this will
result in extra non-work for me in the form of closing invalid bug
reports.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
I don't have any particular use case for this, but it might be nice to
have this available in the future.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Linux 3.9 adds a filesystem alias in the supporting module in the form
of fs-$filesystem. While this is mainly aimed at security/paranoia, it
does mean that we can make better use of the fact that we always resolve
filesystem as aliases to filesystem modules. Do an additional lookup in
add_if_avail to resolve the new alias in addition to the filesystem
name itself.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This also removes a check which would have otherwise hidden a missing
firmware error from the user. FS#34255.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
libarchive 3.1 supports LZO now, so we no longer need this indirection
everywhere.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
add zsh completion for lsinitcpio and mkinitcpio
Signed-off-by: Daniel Wallace <danielwallace@gtmanfred.com>
|
|
Instead of rummaging through /lib for kernel versions, just use the
validated versions from the hunt through /boot.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
to $(DESTDIR)/usr/share/mkinitcpio to avoid use in mkinicpio -P.
Signed-off-by: Sébastien Luttringer <seblu@seblu.net>
|
|
As a logical extension, allow the -p option to be specified multiple
times in order to process several presets at once.
Original-patch-by: Sébastien Luttringer <seblu@seblu.net>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Relegate this and the other lib64 symlink to x86_64, too, since we have
no business creating this on i686.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
823e24 wasn't really correct, since running 'tput setaf 0' effectively
sanity checks the terminfo as well as checking existance. However, it
does nothing to affirm that the terminal is capable of supporting
colors.
Moreover, *never* fall back on the hardcoded escapes as doing so implies
that we've found a broken terminfo and we have no idea what the terminal
is capable of doing.
This reverts commit 823e2454176d4381cd3acc30481e9d84cdc298b1.
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This leaves bash completion with a duplication, but this is intentional
to avoid pulling in the entire functions file and worrying about
pollution.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Found via apron.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Due to using PATH lookups for hooks, we can't possibly end up with a
broken symlink. The build will just error out on the hook not being
found.
Found via apron.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
It's possible, though unlikely, that someone expecting a variable of the
name, e.g. "rhs" or "lhs" to be propagated from the kernel cmdline could
be sadly let down because of the local scoping. Give our localized vars
names less likely to clash.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Specficially, abort when a user tries to run lsinitcpio on a kernel
image.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
The kernel defines an offset at a fixed location within the bzImage
which we can use to find the kernel version string. Since this is fairly
important, reimplement the algorithm (which file almost surely uses)
using low level tools to avoid the possibility that file may break or
change its output, critically wounding mkinitcpio.
Note that this change leaves 'file' in use for lsinitcpio compression
detection.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Some of these modules have modaliases which can be picked up by
whitelisting.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Make the hook a bit more generic by including non-usb keyboard drivers.
This should mean that any keyboard will now work in the initramfs.
In addition to fixing some uncommon setups requiring additional keyboard
modules, this would allow us to no longer build in the atkbd module (and
hence i8042) in our stock kernels, which will remove an ugly error message
on boot for systems without the i8042 controller.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Broken by ac8499c08279b05d.
FS#32935.
https://bbs.archlinux.org/viewtopic.php?id=153982
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Append generated files afterwards. This preserves symlinks, and probably
other things too.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Denote deprecation with unicode superscript footnote markers. Yes, this
inherently limits us to 9 deprecation notices in its current form, but
there really shouldn't ever be so many deprecated items at once.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This function no longer expects an argument.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Remind myself why we can't merge these so I'm not tempted to do this
again in the future.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Removal of the old API (f85d28014134076) exposed the fact that a build
hook returning an error would increment the builderrors. This isn't
really wanted -- we don't want to declare a hard "pass/fail" for a hook,
as the functions we actually care about passing/failing are the add_*
functions which are of real concern (and already caught).
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Pedantic, but at least this makes us consistent with mkinitcpio.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Separate out the printing from these flags to separate functions and
examine each hook more closely, pointing out where it might be
deprecated, and what should be used in place of it.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Declaring our lookup paths like normal colon delimited PATHs lets us
reuse them for builtins like source and type to do the same work that
this function previously did.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This still isn't really ideal, but attempting to detach loops while
they're still mounted will definitely fail. Ideally, the loop device is
in autoclear mode and dropping its refcount to 0 on umount will cause
the backing file to be detached from the loop.
Of course, this all gets way too complicated for userspace to handle
when dealing with the sort of rat's nest of loop devices that ArchISO
sets up. The kernel doesn't help us out here by populating things like
holders/ and slaves/, but I'm not sure it could.
Maybe there's a better way...
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Don't make any assumptions about the compression on modules and scan the
passed in module list for telltale extensions. This has the benefit of
doing nothing when modules are uncompressed, and adds support for
decompression of XZ modules.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Declaring _modpaths as an associative array allows us to forego the
printf|sort -u|xargs cp pipeline as we can guarantee that the array is
already prepared.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Add this as a default in the config file.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
As the autodetect hook gets better with every kernel release, we can
"afford" to remove the needless segregation of block device driver hooks
and simply merge all the "vanilla" or "unstacked" block device drivers.
This should make a lot of setups, like usb or virtio, easier as you
won't need to remember to add the hook.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|