Samuel Dionne-Riel
dbfbdf385b
boot/init: Add error title in addition to code
2020-11-12 23:13:20 -05:00
Samuel Dionne-Riel
889ebd4700
boot/error: Add time left for the delay
2020-11-12 23:13:20 -05:00
Samuel Dionne-Riel
bb6a7ddc5f
boot/error: Add a tangible derivation
...
This also allows us to add library files.
2020-11-12 23:13:20 -05:00
Samuel Dionne-Riel
407ff11b26
boot/error: Minimal viable changes for structured data
...
The applet isn't any more graceful yet, but this is where things can
finally get interesting.
2020-11-12 23:13:20 -05:00
Samuel Dionne-Riel
03022f2745
boot/init: Pass structured data through a file to crash handler
...
The command-line arguments are not great for structured data.
2020-11-12 23:13:20 -05:00
Samuel Dionne-Riel
aa1c2f3744
boot/init: Harmonized failure methods
...
- Code is now more of a title
- Only one code path exists to the applet
2020-11-12 23:13:20 -05:00
Samuel Dionne-Riel
e6778f8370
boot/recovery-menu: extract reboot modes
2020-11-12 23:13:20 -05:00
Samuel Dionne-Riel
bb7e9a3b7b
examples: Add testing/crash-before-switch-root
...
Can be used as a single point of failure (hah!)
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
f335005132
xiaomi-tissot: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
69f1126ffc
xiaomi-lavender: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
a3c5e85b47
sony-pioneer: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
dd80aa4110
razer-cheryl2: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
9fd1003e79
pine64-pinephone: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
7b75357cb0
oneplus-oneplus3: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
d90cd15a62
motorola-addison: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
4d71caa530
google-marlin: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
3a6326d6e0
asus-z00t: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
fcd8f6ce4b
asus-flo: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
125aaeb09e
asus-dumo: Set CONFIG_PANIC_TIMEOUT to 1
2020-11-08 18:37:13 -05:00
Samuel Dionne-Riel
ca5c116f4c
Merge pull request #237 from samueldr-wip/fix/pinephone-encryption
...
Misc. fixes for Pinephone build and encryption
2020-11-07 21:50:08 -05:00
Samuel Dionne-Riel
13d73a7115
u-boot: Use types.lines for additional commands
2020-11-07 20:25:49 -05:00
Samuel Dionne-Riel
efd902736b
pine64-pinephone: review kernel config for cryptsetup
2020-11-07 20:23:31 -05:00
Samuel Dionne-Riel
61566f3c8c
Merge pull request #236 from samueldr-wip/feature/stage-1-hung-tasks
...
stage-1: Detect hung tasks and abort boot
2020-11-07 20:18:47 -05:00
Samuel Dionne-Riel
00f81fa95c
boot/init: Handle hung tasks
...
The way we're handling them is to have a global timer that is reset at
any point a task is ran.
This gives a maximum amount of chances to any task to have its
dependencies resolve.
A minimum of 60s is given, but in reality the chances are the conditions
for trying to resolve were already present before the timeout started
counting towards that particular dependency.
Note that a long running task, when successfully ran, does not cause the
timeout to be reached.
E.g. at 10s of timeout a task is started, the loop is not executed until
the task exits. When it exits the branch followed is for a task that
ran, which means that even if the task took 70s total (which gives us 80
seconds) a timeout of 60s wouldn't apply here.
Though, please, don't make your tasks take that much time to run!
2020-11-07 20:13:31 -05:00
Samuel Dionne-Riel
d41c454514
boot/init: Add Devices dependency type
...
It's a Files dependency, but with just a bit more user friendliness when
used in an error message.
2020-11-07 20:13:31 -05:00
Samuel Dionne-Riel
31f45c5baa
boot/init: Add user-friendlier names to dependencies
2020-11-07 20:13:31 -05:00
Samuel Dionne-Riel
a819a8930e
boot/init: Cleanup failure
...
- exit after everything happened, just in case
- exit the progress display
- allow a custom delay to be set
2020-11-07 20:13:31 -05:00
Samuel Dionne-Riel
63d49f51ad
Merge pull request #234 from samueldr-wip/feature/stage-1-passphrase
...
stage-1: Add interactive LUKS decrypting
2020-11-07 20:10:21 -05:00
Samuel Dionne-Riel
a1813efdfb
testing/qemu-cryptesetup: Add a test system for LUKS
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
3f8c115ee4
examples/testing: Add subdirectory for feature testing systems
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
36aa305f27
boot/init: Add LUKS device support
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
f45b5b301c
boot/init: Implement asking user
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
eaf8fa9dde
boot/init: Long running tasks can export a label
...
With the same tooling we will be able to ask for a throbber or some
other kind of work indicator.
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
c80476a047
boot/init: Rework Progress into a "state stash"
...
This way we really only update the current state bit we want to affect.
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
e891e2f752
boot/init: Minimal changes required to continue working
...
These changes implement the different protocol changes.
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
7b477b9ca5
boot/splash: Allow textual questions to be asked
...
For now, extremely assumed to be passphrase input.
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
665d58a7cd
boot/splash: Add textarea and keyboard, allowing text input
...
The following commit will plug it into the messages queue.
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
1f93066e89
boot/splash: Ensure no funny business if given bogus progress bar values
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
5755438dfa
boot/splash: Add wrappers around text area and keyboard
...
They will, at some point, be promoted into LVGUI. For the time being
they are local as they have only been verified to work in a useful
manner for this limited use case.
2020-11-07 19:22:33 -05:00
Samuel Dionne-Riel
71149eb01d
boot/splash: Ensure cover doesn't intercept events
2020-11-07 18:26:47 -05:00
Samuel Dionne-Riel
f66c31fd7e
mrbgems: mruby-lvgui: Update with latest changes
2020-11-07 18:26:47 -05:00
Samuel Dionne-Riel
a28cd3a293
modules/luks: Init
...
This, with the upcoming luks task allows encrypted drives to work!
2020-11-07 18:26:47 -05:00
Samuel Dionne-Riel
8a47b7913b
mkExtraUtils: Allow specifying specific binaries
2020-11-07 18:26:47 -05:00
Samuel Dionne-Riel
1fb62bdf63
generated-filesystems: Allow passing raw images
...
This will be useful for some tests.
2020-11-07 18:26:47 -05:00
Samuel Dionne-Riel
c1e581d8be
Merge pull request #233 from samueldr-wip/feature/stage-1-progress
...
stage-1: Add progress tracking in splash
2020-11-07 15:51:11 -05:00
Samuel Dionne-Riel
a50f838e13
boot/recovery-menu: Add missing file
2020-11-06 16:30:22 -05:00
Samuel Dionne-Riel
d929d798fe
boot/init: auto-resize task shows a message
2020-11-06 16:30:22 -05:00
Samuel Dionne-Riel
bd030cbe73
boot/init: Add required plumbing to control the forked process
2020-11-06 16:30:22 -05:00
Samuel Dionne-Riel
9b85943be1
boot/init: Add progress tracking
2020-11-06 16:30:22 -05:00
Samuel Dionne-Riel
95b1c7b2bb
boot/splash: Fix build as it is now a proper applet
2020-11-06 16:30:22 -05:00