Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
This allow preservation of symlinks.
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 removes any meaning from the definitions of MODULES, BINARIES,
FILES, and SCRIPT within install hooks. It also removed the deprecated
checked_modules() function, which is replaced by add_checked_modules().
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>
|
|
Adjust the test in poll_device to look for either an unset OR an empty
2nd parameter.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Start at .1 second and double the interval, capping at 1s.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Since mkinitcpio rewrites its runtime config, we can guarantee that
these variable are sanitized of extraneous whitespace. Meld the two
calls together, ensuring that we retain the ordering, but only call
modprobe once.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This is a partial "revert" of 822a88700e since kernels as of 3.5 add
module aliases for hid devices.
Fixes FS#32575.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Similar to c257b0d7b4dd.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
lvm is a chatty bitch and wants to tell all its friends about what it's
doing. Mostly this just goes poorly with udev, but now its lvmetad as
well. Use dmsetup as a shortcut and just tear down the volumes without
worrying about the needless accounting.
Guys? GUYS?!?! GUYS IM TEARING STUFF DOWN NOW!!!11!!!111
Fixes FS#32680.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Reported-by: Jan Steffens <heftig@archlinux.org>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
FS#32605.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This gives the loop detach logic an actual chance of working.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Fixes FS#32532.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Ensure that these devices (likely FakeRAID) are clean before stopping,
to avoid leaving them in the dirty state and forcing a rebuild.
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: Eric Bélanger <snowmaniscool@gmail.com>
|
|
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com>
|
|
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com>
|
|
map() runs the first argument (a function) with each of the remaining
arguments as $1. The return value of map() is only 0 if all the calls
succeeded.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
If mkinitcpio -s is run, we still flush this cache to disk before
exiting.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
When reporting that a hook is deprecated, only show the hook name, not
the full resolved path.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
- use MANPAGES instead of DIST_EXTRA (it's only manpages anyways)
- uniformly use $(var) instead of ${var}
- consolidate manpage generate rules
- prefer cp over install when symlinks might be involved
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Using anything but /lib/modules isn't really sane, and it shouldn't be
supported. If you want to use /usr/lib/modules, then /lib must be a
symlink to usr/lib.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Mostly in favor of scoping out some variables further.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Instead of using a bash test, just source the preset file. If it fails,
exit. This patch is a bit ugly because it remove a level of indentation.
|
|
This is an ugly patch, and probably does more than I'd like it to. The
idea is that mkinitcpio adopts some sort of consistent style which I'm
actually happy with. I define 3 kinds of variables:
1) local variables: all lower case, and scoped within functions. Use
freely, as they're well contained.
2) global variables: these are known to mkinitcpio internally, but are
global in scope. They mainly carry runtime configuration and collected
data during the image generation process. These are always lower case,
but carry a leading underscore to denote that they're global.
3) "API" variables: also global in scope, but exist "outside" of
mkinitcpio -- either drawn in from the configuration file, or "exported"
to the install hooks. These are always all upper case. When introducing
new variables, extreme care must be taken to pick names that will not
conflict with the environment inherited by mkinitcpio.
A HACKING file is introduced with a similar description of the above,
and more.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
It's okay to fully resolve the symlink to add the regular file it points
to, but avoid mangling the symlink name to try and preserve relative
links.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This is the default action for lsinitcpio. Add it just for the purpose
of clarity. This change also separates out true options from 'actions'
and validates that the user only passed a single action to lsinitcpio.
Update the manpage accordingly.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Now that mkinitcpio stores the build time config file in the image, we
should have a way of easily getting it back out.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
git (at least version 1.7.12.1) does a great job of showing the absolute
wrong code moving around in this patch.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|