Age | Commit message (Collapse) | Author | Files | Lines |
|
Running as non-root is usually for my own dev purposes, but someone
might do this and be surprised when a directory/file that needs
permissions other than root isn't preserved.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Using --tab-file for findmnt calls is redundant if we can rely on the
defaults. Sanitize the environment from any LIBMOUNT_* variables so
that we can be sure of what file we're reading.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Doing this oddly results in findmnt never stat(2)'ing the target
directory, which might be problematic with stale NFS mounts and maybe
autofs.
Fixes FS#36629, I suppose.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Add an annoying warning in case the root device is fsck'd and about to
be mounted RO.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Shaves a trivial, but measurable, amount of time off of early userspace
at the cost of a small cache file.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This allows 'quiet rd.log=kmsg' to produce a silent boot while still
logging the full output that would have been written to the console.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This introduces support for the rd.log and rd.debug kernel command line
options, which log early userspace activity to /run/initramfs/init.log.
Code is largely inspired by Dracut's implementation of early userspace
logging, but without needless complexity and redundancies.
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>
|
|
This makes it easier to test parse_cmdline.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
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>
|