Samuel Dionne-Riel
e0ca6d43d6
cross-workarounds: Disable udisks for cross-builds
...
From https://hydra.nixos.org/eval/1581751
1580f35dfb
accidentally introduced udisks
in the build.
A local test build of the default "dummy" system disk image wasn't done,
thus the failure not found.
2020-04-23 00:01:33 -04:00
Samuel Dionne-Riel
fd66311f9f
qemu-x86_64: Use qemu EDID support
...
This removes the need for the gnarly hack we were using to get a custom
resolution.
2020-04-22 22:48:30 -04:00
Samuel Dionne-Riel
c7a121fbae
quirks: Add msm-dwc3-otg_switch quirk
2020-04-13 17:44:28 -04:00
Samuel Dionne-Riel
467702a853
quirks: Add qualcomm wcnss-wlan quirk
...
This quirk assumes the firmware has been set appropriately in the NixOS
configuration, using something akin to:
```
hardware.firmware = [
pkgs.my-device-firmware
];
```
2020-04-09 22:27:15 -04:00
Samuel Dionne-Riel
1580f35dfb
nixos-integration: Use initrd.enable = false
...
That new option allows us to remove the crutch of pretending to be a
container.
Pretending to be a container had a couple drawbacks, they are now
irrelevant.
The dummy outputs could be re-worked to instead use out own stage-1
infra, but I prefer using dummies for now, for better insulation.
2020-04-09 22:27:15 -04:00
Samuel Dionne-Riel
2e28977e49
qualcomm quirks: Reformat descriptions
2020-04-06 18:32:45 -04:00
Samuel Dionne-Riel
eba0021c87
initrd-ssh: Reformat option description
2020-04-06 18:32:45 -04:00
Samuel Dionne-Riel
fb64a005de
Allow evaluating without NixOS.
...
We are now splitting the concerns more clearly, by making `baseModules`
the reason we are evaluating NixOS, rather than wholesale always
including it into the modules.
2020-04-06 18:32:45 -04:00
Samuel Dionne-Riel
2f28151fd2
doc: Add depthcharge notes
2020-04-04 21:04:33 -04:00
Samuel Dionne-Riel
4f6659933f
android: Add device notes
2020-04-04 20:30:57 -04:00
Samuel Dionne-Riel
02ab2066ce
system-types: Move in discrete directories
2020-04-04 19:56:56 -04:00
Samuel Dionne-Riel
75a0d1a7db
devices-metadata: Generate metadata using the modules system
2020-04-04 15:19:44 -04:00
Samuel Dionne-Riel
2cd23f3370
Merge pull request #114 from danielfullmer/vendor-ro
...
initrd-vendor: mount vendor read-only
2020-04-03 20:22:56 -04:00
Samuel Dionne-Riel
c37da93225
modules/internal: Init
2020-03-30 23:49:28 -04:00
Daniel Fullmer
d142490aa0
initrd-vendor: mount vendor read-only
2020-03-29 15:23:26 -04:00
Samuel Dionne-Riel
558907989b
systems/u-boot: Fix eval with release.nix
...
The "default" output was missing.
2020-03-28 22:53:48 -04:00
Samuel Dionne-Riel
1483a3bcb4
system-types: Add "none" system type for evals
...
I'm not sure why it doesn't matter on Hydra, and when using `nix-build`,
but it does matter for `nix-env`.
2020-03-28 22:53:48 -04:00
Samuel Dionne-Riel
ad4c5f811a
hardware-allwinner: Configure initial gap
2020-03-28 16:40:10 -04:00
Samuel Dionne-Riel
df75b6debd
systems/u-boot: Allow configuring the initial gap
2020-03-28 16:40:10 -04:00
Samuel Dionne-Riel
5227e3a462
hardware: Add Allwinner A64 SOC
...
This file was introduced when working on the devkit. The R18 will be
kept for now, even though no devices use it for now.
2020-03-28 16:40:10 -04:00
Samuel Dionne-Riel
6d3e26a14d
hardware: Add Allwinner R18 SOC
2020-03-28 16:40:10 -04:00
Samuel Dionne-Riel
3036ffe0ab
system-types: Init u-boot system type
...
This system type assumes the target will boot using a u-boot based
bootloader.
2020-03-28 16:40:10 -04:00
Samuel Dionne-Riel
eba58e13ed
initrd: Fix regression from removal of _module
2020-03-19 16:57:08 -04:00
Samuel Dionne-Riel
a6d221c72c
Merge pull request #97 from samueldr-wip/feature/hydra
...
Add release.nix for hydra consumption
2020-03-13 22:52:25 -04:00
Samuel Dionne-Riel
bd37657b16
Add workarounds to enable minimal rootfs cross-compilation.
...
This alone does not make the rootfs it makes useful.
2020-03-13 22:45:48 -04:00
Samuel Dionne-Riel
4ac71a9722
kernel-initrd: vm is the default build artifact
2020-03-13 19:44:08 -04:00
Samuel Dionne-Riel
3b5fe89b7c
depthcharge: disk-image is the default build artifact
2020-03-13 19:44:08 -04:00
Samuel Dionne-Riel
97cca51825
android: android-device is the default build artifact
2020-03-13 19:44:08 -04:00
Samuel Dionne-Riel
7a30a6f3c1
system-target: Stop relying on builtins.currentSystem
2020-03-13 19:43:34 -04:00
Samuel Dionne-Riel
987be3bf59
hardware: Add generic ARM platforms
...
Will be used by the release.nix configurations. Though these may be just
as useful as the x86_64 one is!
2020-03-13 14:56:21 -04:00
Samuel Dionne-Riel
99d626dc1a
module-list: Remove now removed module
2020-03-10 14:17:22 -04:00
Samuel Dionne-Riel
281f546bff
stage-2-splash: Init re-purposed module
...
This resets the VT for platforms with VTs.
If a console is attached to that VT the logo will be covered by text as
it begins showing up on the VT.
The current way to "opt-out" of VT messages during stage-2 is to opt-out
of console messages on the VT.
2020-03-09 19:57:31 -04:00
Samuel Dionne-Riel
6692f6d6f4
boot/init: Use the new error reporting applet
2020-03-09 19:45:49 -04:00
Samuel Dionne-Riel
b2f4aecdd4
boot/error: Init error reporting applet
2020-03-09 19:44:27 -04:00
Samuel Dionne-Riel
9a92d10289
initrd-splash: Remove dead code
2020-03-09 17:48:52 -04:00
Samuel Dionne-Riel
c35116cdcd
boot/init: Use the new boot/splash applet
2020-03-09 17:34:31 -04:00
Samuel Dionne-Riel
426f31113d
boot/splash: Init splash applet
2020-03-09 17:31:03 -04:00
Samuel Dionne-Riel
741eba11ac
Merge pull request #90 from samueldr-wip/feature/initrd-meta
...
initrd: Add `initrd-meta` build output, with ncdu metadata
2020-03-08 18:06:28 -04:00
Samuel Dionne-Riel
8a71c8dd85
initrd: Add initrd-meta
build output, with ncdu metadata
...
This can be used to sift through the files in stage-1, and hopefully
pare it down when it bloats.
2020-03-08 17:49:12 -04:00
Samuel Dionne-Riel
9ab16a6c66
initrd: Add udev rules for input devices
...
Otherwise, there is no trivial way to dinstinguish a trackpad from a
touchscreen.
2020-03-08 17:01:31 -04:00
Samuel Dionne-Riel
e121b722a7
Merge pull request #86 from samueldr-wip/feature/boot-gui/simulator-fixes
...
Boot GUI: Simulator fixes
2020-03-02 14:04:10 -05:00
Samuel Dionne-Riel
74f3dc5711
android-devices: Output a flash-critical.sh
script
...
This script will flash the "critical" bits to the device.
Though note that this will flash both A/B slots unconditionally.
Similarly, this will flash both the boot and recovery partitions.
2020-03-02 14:02:05 -05:00
Samuel Dionne-Riel
12c9d29f58
boot/init: Use the newly split script-loader
2020-03-01 23:27:56 -05:00
Samuel Dionne-Riel
2b2d2ad7ea
boot/applets: Add key-held utility
2020-02-29 16:10:00 -05:00
Samuel Dionne-Riel
e326b38b4b
system-types/android: Output recovery.img
...
That recovery image unconditionally assumes it's running as recovery
2020-02-29 16:10:00 -05:00
Samuel Dionne-Riel
3acc3ee63d
initrd: Add boot_as_recovery to config
2020-02-29 16:10:00 -05:00
Samuel Dionne-Riel
cab9a214b2
initrd-boot-gui: Add to initrd
2020-02-28 23:14:09 -05:00
Samuel Dionne-Riel
c487e0d7d3
initrd: Implement split loader/script
2020-02-28 23:14:09 -05:00
Samuel Dionne-Riel
8bb0ba8bc4
qualcomm: Rely on refresher, lvgl does not play well with handle.
2020-02-28 23:14:09 -05:00
Samuel Dionne-Riel
7dd8408dd9
initrd: Fix early logging
...
We're now starting `bootlogd` first thing, this in turn allows it to
capture all logs. Though, this does mean that `sh` is back in the
critical path of the system. Anyway, it was never exactly out.
2020-02-03 21:58:21 -05:00
Samuel Dionne-Riel
a53f7cf463
initrd: Expose extraUtils
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
290d2ff757
initrd: Fix strace packaging
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
bcda887e7a
initrd-usb: ffs -> adb for ADB
...
It looks like it didn't matter for some device, but may be an issue for
`google-marlin`.
I'm not sure where the `ffs` feature name came from.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
53413080cc
initrd-usb: Follow AOSP init order more closely
...
This is part of what may be required to fix ADB on google-marlin.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
57a7de2610
initrd-usb: Only enable when a mode is available
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
bdd234fc0e
initrd-shell: Allows using a shell on failure...
...
This needs to be plugged into the init via duck-typing.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
2356bd2947
adb: Disables by default
...
This was a bit rude! There are security consideration in making adb
available!
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
f30f2e0e5e
adb: Implement as a boot/init task
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
4289996f3c
initrd: System.write for USB gadget tasks
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
8d3833691b
initrd: Setup ffs aliases before mounting functionfs
...
It turns out to be required for some devices.
Namely, google-marlin.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
74a1a190ca
initrd-usb: Force device to declare mode
...
The detection cannot be done reliably. Some android_usb devices
(motorola-addison) have gadgetfs available, while some gadgetfs devices
will have the android_usb path available.
Anyway, this is probably better to explicitly declare the mode to use.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
cd963d2b59
boot/init: Allow crashing to bootloader
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
eee5b2d608
boot-initrd: Removes outdated option
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
4cc403e3cd
initrd-vendor: Stop assuming there is a vendor partition
...
Older devices will not have a vendor *partition*.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
57a18403bd
initrd-usb: Implement android_usb gadget in task
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
d913324948
initrd: make bootConfig deeply mergeable
...
With JSONValue from:
* https://github.com/NixOS/nixpkgs/pull/75584
2020-02-03 16:19:10 -05:00
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
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
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
b932adb0d2
Fixups in modules from changes to boot/init
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
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
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
aa8e5f22bf
initrd: Use same mounting logic as NixOS
...
Well, at least the same data for the mounting logic
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
d4571cf9aa
boot/init: Use boot.specialFileSystems
...
This is an internal configuration from NixOS. This is what is used by
the NixOS stage-1 to mount the special filesystems.
It would be dumb not to rely on the same!
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
952183b400
initrd: Re-instate shelling-out / shell location
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
1d8d4c8f52
initrd: Add configuration file for boot/init
...
This allows a single boot/init build to be re-used across devices, and
more importantly, across rebuilds when only configuration changes.
This also removes the need to hardcode some annoying paths that are
better served through configuration, to their natural store paths.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
fbe905b266
initrd-kernel: Pre-seed symlinks for modules and firmwares
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
2a366b2cae
initrd: Allow redirecting output to /dev/kmsg
...
Though this is a bit buggy and less than ideal.
A better solution would be a custom wrapper that only handles
redirecting. This is, anyway, something that would be required to
redirect all logging to all consoles.
2020-02-03 16:19:10 -05:00