1
1
mirror of https://github.com/NixOS/mobile-nixos.git synced 2024-12-15 19:23:01 +03:00
Commit Graph

677 Commits

Author SHA1 Message Date
Samuel Dionne-Riel
eb29edda6d initrd-ssh: Port to a boot/init task. 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
c4ec0480fd initrd-network: Port to a boot/init task 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
c868bcea46 boot/init: Add network interface dependencies 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
711a521f54 boot/init: Allows dependencies as an OR 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
15964966b6 boot/init: Mounts will only wait for absolute paths 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
e41e35a84b boot/init: Fix mounting special filesystems with devices 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
776b8bf151 initrd-vendor: init module
This is required for some devices, as some features only work when
firmwares are loaded on some devices.

Here, `google-walleye` `gsi.rndis` usb gadget requires the IPA firmware.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
6354a156dd boot/init: Add Dir.children monkey patch 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
50a04bd651 initrd-usb: Implement gadgetfs usb gadget
This has only been tested with google-walleye, with gsi.rndis.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
b47ffc14e4 initrd-usb: Prepare for gadget handling task 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
3b16a080f7 initrd: Make bootConfig a tangible internal option 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
5b3b72870b initrd-shell: Remove with. 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
43c25fe059 initrd-loop: Remove
We'll see what will be done in a bit.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
333ae6b6da initrd-logs: Add bootlogd multiplexer/logger support. 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
3379bc5954 initrd-fbterm: Port to new stage-1 init 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
50849b0598 bootlogd: Init at 2020-01-02 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
b932adb0d2 Fixups in modules from changes to boot/init 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
cd74c94fde boot/init: De-hardcode /mnt 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
7dff001d75 boot/init: Prefer running UX tasks first
This ensures graphical progress is shown ASAP when dependencies are
equally likely to run.

Otherwise, when the graphical step was ready, and switchroot about to
run, the shell step could run before the splash. This means that, in
practice, a long running task like e2fsck could have prevented the
splash to show. It doesn't make sense to make the other tasks depend on
a splash task!

There is no intention to implement any other special-cased ordering. If
there is the need to, it might mean that there is a deficiency in the
design.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
a3c8cd78e8 boot/init: Sort tasks before running them
This is partly to reduce the amount of loops it needs to run, but mainly
to control the order rather than rely on the order they were added in.

The control of order seems weird in a dependency-based system, but it'll
be used mainly for one thing in the next commit...
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
bdee7cf0e0 boot/init: Removes SingletonTask special dependency
Instead, rely on targets.

Additionally removes the "Boot" special dependency which only made sense
when it was expected that having no dependency was an error.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
046dcdc8ea boot/init: Register singleton tasks only once 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
fad472bd06 initrd: Removes dead code from initrd-kernel
This already is part of boot/init
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
368bc33019 initrd: Implement loop with a task 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
7f0ba7de38 initrd: Remove framebuffer options
This is now all moved to boot/init tasks.

Furthermore, I don't think we ever want to *disable* starting the
framebuffer stuff. What's really needed is detecting *what kind* of
graphics subsystem to use, and this can't happen at eval time.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
b5e3397783 (broken) removes initrd-order
This allows my staging area to become a bit cleaner.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
56cdb1abca initrd: Implement shell with a task 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
62b7b47117 boot/init: Add System.spawn porcelain 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
0361ccad00 init: Allow adding tasks to boot/init 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
687a100da4 quirks: Implement qualcomm framebuffer quirks as tasks 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
4c40fa259f initrd: Removed telnet
It wasn't used either
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
e032363fc5 qemu-x86_64: remove dependency on initrd-order 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
2a9ff72358 initrd: Review splash to only embed images
This still needs to be somewhat re-thought
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
5b13d6b4a8 initrd: minor cleanup 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
2deed250eb initrd: Remove initrd-udev 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
2185771cba initrd: Remove stage-2 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
9119ea40f9 initrd: Remove nc shell
This wasn't really used anyway...
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
12918e0f58 initrd: Remove logger module
This, anyway, needs to be re-thought entirely with the new init.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
3f6d523e51 initrd: Removes growpart module
This needs to be re-done entirely.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
a81afccbb8 cleanup: Move initrd-fail settings in boot/init 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
d93f0387f6 cleanup: remove initrd-devices
It has been reimplemented in boot/init
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
a6f2195921 boot/init: Return the symlink itself for the generation
Reading the symlink gives a relative path. That's no good in this case.

There is no actual need to resolve the symlink.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
01e298eafc boot/init: Make failure to splash not fatal
That is, some devices, notable google-walleye, fail to show the splash
for yet unknown reasons.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
30dd9259af boot/init: Fixup bug with System,pretty_command change
The prettified command ended up missing from the debug log.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
b887db59c5 boot/init: Add SwitchRoot task 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
75454e4ba5 boot/init: Add System.exec and System.which 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
962b36ec97 boot/init: Implements Target tasks 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
6234128c00 boot/init: misc cleanups 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
36ec2f0bf9 rootfs: autoResize here rather than hardcoded in initrd 2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
3c9b5057c0 boot/init: Handles generic mounting
This implements reading the configuration to know about mount points.
2020-02-03 16:19:10 -05:00