Age | Commit message (Collapse) | Author | Files | Lines |
|
This means that no "setup" of the initramfs is requried on boot,
and this should make testing a lot eaiser by just chrooting into
the ramfs to check if it works.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Add compat symlinks from /bin, /sbin and /usr/sbin, so nothing is lost.
This will make sure that it is not possibly to install two different
versions of the same binary in PATH.
The main usecase of this is that we want to be able to override any
symlink provided by busybox by adding a binary by the same name. With
this patch we don't have to worry in case the busybox symlink and the
binary we add are in different directories; the last binary to be added
always takes precedence.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
This lets the config file be an override for any files or binaries added
by hooks.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Now that we're including symlinks to busybox on the prebuilt image, this
display needs a bit of tidying up.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Since we now silently overwrite instead of silently failing on existing
files and symlinks, we have a lot of sodeps which are overwritten by
various binaries -- udevd and udevadm being one example. Nip this in
add_binary by doing our own check and preventing addition of
pre-existing files in the $BUILDROOT.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This goes in hand with an earlier commit which changed behavior to
silenltly overwrite files rather than silently fail.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Now we fail silently if the file exists, which means there is no easy way to overwrite binaries.
I think it makes the most sense to do the following:
1) add all the busybox stuff as a basic system;
2) overwrite some of the links with any binaries we add to base hook;
3) allow users to write their own hooks to overwrite even more stuff.
This can now be done by this hook.
v2: make sure we are able to overwrite a symlink pointing to a directory
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Maybe something went wrong with depmod after a kernel install, or the
user grabbed a kernel directory for an old kernel. Either way, if you're
using an initramfs, there's a very high probability that you'll have at
least 1 module on it.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
I think this error is more confusing to most people than it needs to be,
and it's not really accurate any longer. Generalize the message and
inform the user that we simply couldn't find the root device.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
These are all root owned, so we don't need to be concerned about DoS
attacks via these FS's.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This is mainly for avoid this:
[ramfs /]# mount /dev/md0 /mnt/a
[ramfs /]# mount -o bind /mnt/a /mnt/b
[ramfs /]# mount -o bind,remount,ro /mnt/b
warning: can't open /etc/fstab: No such file or directory
[ramfs /]#
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
This feature was present in archiso_pxe_nbd for a long time.
it avoids to configure more than one device (if present) by ipconfig
with the same parameters.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
* ipconfig cmd writes a file in /tmp that is ready for direct evaluation.
We can use this instead of parsing the output, to do this some variable
renames are needed.
* Add /tmp as part of "base" layout since this can be used by others hooks/cmds.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
The only downside is on systems where devtmpfs is not enabled
will see and error message, anyway /dev will be tmpfs as fallback like now.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This is a much better solution than busybox's, as it will move our API
filesystems and /run for us.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Do variable name validation via the case labels rather than via PEs.
This frees up the fallthrough case to simply ignore things we don't
understand (and not exist).
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Provides /sbin/fsck and any helper binaries to the image. If processed
after the autodetect hook, only the helper for the root FS is added.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This adds support for fsck'ing root at bootstrap if the fsck binary and
necessary helpers are included.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Rather than immediately defaulting to /dev/root, attempt to resolve the
major/minor pair back to a block device. If we can't do this properly,
then fallback to /dev/root.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This allows a caller to pass in a device by name and get a /dev node
returned. Note that this is heavily limited in that only the root device
can be identified by major:minor.
This might break init's API, if such a thing exists.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Providing this means we no longer need blkid for FS detection, as mount
will do this for us. Adds a slight bloat to the image, in exchange for a
huge convenience. Messaging is changed to assume that /bin/mount will
provide useful feedback for us on failure.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Beyond stylistic cleanup, add a conditional to ensure that we don't
show the 'waiting for device' message if it already exists.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
We'll use this as a channel to communicate with later userspace.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Remove this ancient relic. It's not been needed in a very long time.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
- change scavenging of /lib/modules to avoid grabbing extramodules dirs
- add missing options for lsinitcpio and mkinitcpio
- use _filedir for completing -b
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Two bugs: operands were swapped in call to _add_symlink, and missing
operand in call to _add_dir.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
* Directly assign ro or rw to the rwopt rather than using readwrite as an
intermediary
* Use a default expansion to cut out an if block in determining the root
fstype.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
We always need this in early userspace, so add it as part of the build
process instead of forking at runtime.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
- usb_id and path_id are now builtin functionality of udevadm
- /sbin/udevd moves to /lib/udev/udevd
- update dev PKGBUILD to reflect version requirement
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Missed this when I migrated the manpage in 5d635b6d.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Fixes FS#26427.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
- Always call this function. At worst, just return the current kver.
- Do all our error reporting from within the function.
- Add an additional check for existance prior to allow for a more
appropriate error message when we encounter a situation such as /boot
not being mounted.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
cc36db45 was a bit too strict about localizing variables and blew out
TMPDIR, which might be a legit variable sourced from the calling
environment. Restore this behavior with a bit of refactoring, and
additionally add in a check to make sure the temporary directory is
writeable before proceeding.
Fixes FS#26373.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This is an admin command, not a config file.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This is required for busybox 1.19.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Done as part of FS#25788.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
As it turns out, the mountpoint toy from util-linux isn't really at
feature parity with sysvinit's. In particular, and with respect to
v2.20:
- It throws false negatives when /proc isn't mounted. Rather, it should
fall back on using stat(2), as is the basis for sysvinit's tool.
- when /proc is mounted with as source of 'none', it segfaults on a null
dereference.
Patches have been sent upstream to resolve these issues, but in the
meantime, we're mounting /dev and /proc for very specific reasons.
Instead of relying on a fork/exec to figure out if these API FS's are
mounted, use a simple bash test to see if these specific needs are
available within the FS.
One of many possible fixes for FS#26344.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
An empty file will be created in any case, does not cause any harm, but for correctness.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|