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
Samuel Dionne-Riel
cbd31a49ce
initrd: Allows wrapping init with strace
...
That wrapper script may be used with other helpers in the future.
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
228df26d6c
initrd: Refactors module for new init
...
New init coming in a separate commit
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
e5aa1ad3c6
overlay: Import mruby
2020-02-03 16:19:10 -05:00
Samuel Dionne-Riel
104c09a8a7
initrd-base: Use hardshutdown
2020-01-10 00:46:11 -05:00
Samuel Dionne-Riel
5fa2110c7b
hard-{shutdown,reboot}: remove
...
This will be replaced with a better utility.
2020-01-10 00:45:39 -05:00
Samuel Dionne-Riel
4811ac688f
Merge pull request #41 from kirelagin/stage-2-adb
...
Restart adb in stage-2
2019-12-04 19:35:19 -05:00
Samuel Dionne-Riel
2bf8158f3a
Merge pull request #58 from samueldr-wip/feature/initrd-fail
...
Add failure reporting to initrd
2019-12-04 17:18:27 -05:00
Samuel Dionne-Riel
ead09930ea
qemu-x86_64: use absolute input + mon:stdio
...
mon:stdio is the magic incantation that makes CTRL+C not quit abruptly
the VM.
2019-12-04 17:16:09 -05:00
Samuel Dionne-Riel
00c7d73781
qemu-x86_64: Use a 1080p vertical display
2019-12-04 17:16:09 -05:00
Samuel Dionne-Riel
0d21d694f6
Merge pull request #61 from samueldr-wip/feature/grow-rootfs
...
Allow rootfs to expand to the backing partition
2019-12-04 16:56:01 -05:00
Samuel Dionne-Riel
1d3149b41f
qualcomm: Add SDM660 option
2019-12-03 20:36:52 -05:00
Samuel Dionne-Riel
1fdf5e7ee7
initrd: Ensures /etc/mtab exists
2019-12-03 17:32:45 -05:00
Samuel Dionne-Riel
38850da922
initrd: Enables growing ext4 partitions
2019-12-03 17:32:45 -05:00
Samuel Dionne-Riel
83a1735084
stage-2: Use new init failure reporting
2019-12-03 15:36:13 -05:00
Samuel Dionne-Riel
4467f28daf
initrd: Adds failure reporting
...
Uses the sad-phone artwork to convey that something's wrong.
A color has to be given to help convey the issue in constrained
situations where no proper logging happens.
2019-12-03 15:36:13 -05:00
Samuel Dionne-Riel
6198805861
Merge pull request #47 from lheckemann/tissot-cleanup
...
Add support for xiaomi-tissot
2019-11-23 12:33:35 -05:00
Linus Heckemann
0cabf85b8f
initrd-loop: allow continuing boot by killing sleep
2019-11-21 20:56:49 +01:00
Samuel Dionne-Riel
bcc0f77156
Merge pull request #50 from samueldr-wip/devices/google-walleye
...
device: Google Pixel 2 (non-XL) // google-walleye
2019-11-19 14:08:56 -05:00
Samuel Dionne-Riel
e9ee3abbe3
qualcomm: Add msm8998 SoC
2019-11-18 21:18:24 -05:00
Linus Heckemann
2b300b302f
initrd: add fbterm module
...
Requires a cross-compilation fix for fbterm (nixos/nixpkgs#72107 ).
This may stop the display-manager from starting correctly, I think it
prevents X from automatically switching to the correct vt. Requires
some further investigation :)
2019-11-16 18:22:49 +01:00
Kirill Elagin
12744fa744
Use pkill to kill adb from stage1
2019-10-28 19:11:01 +01:00
Kirill Elagin
8869e2da37
Restart adb in stage-2
...
* Move adb to a separate module. It used to be in stage-1, but it is no
longer stage-1 specific, as it is now started in stage-2 as well.
* After switching to stage-2 kill the old adbd and start a new one.
2019-10-27 00:34:55 +02:00
Samuel Dionne-Riel
93436077f1
hardware-qualcomm: Add msm8996 SoC
2019-10-05 01:07:55 -04:00
Samuel Dionne-Riel
d99f4d0135
quirks-qualcomm: Enables stage-2 fb refresher
2019-09-24 23:00:02 -04:00
Samuel Dionne-Riel
c498dc1b38
initrd-usb: Fixes for adbd on asus-z00t
...
The gist of it:
* The "adb" function is not available (-22, EINVAL) on asus-z00t
* Enabling both adb and ffs breaks asus-flo
* Enabling ffs is fine with asus-flo.
So I guess it's ffs that enables adb!
2019-09-23 20:31:56 -04:00
Samuel Dionne-Riel
7b1d782893
initrd: reviews udev integration with switch_root
2019-09-23 15:45:18 -04:00
Samuel Dionne-Riel
4c4f8468f3
depthcharge: Allows kpart to be built independently
2019-09-22 15:52:10 -04:00
Samuel Dionne-Riel
3cdecd5c00
android: working system.img/boot.img output
...
Can be flashed
```
fastboot flash system result/system.img
fastboot flash boot result/boot.img
```
2019-09-21 23:21:12 -04:00
Samuel Dionne-Riel
701c01187f
initrd: adbd defaults to true only for android
2019-09-21 22:44:44 -04:00
Samuel Dionne-Riel
f9decea807
Adds back android
2019-09-21 22:42:26 -04:00
Samuel Dionne-Riel
507805e9f2
Adds back depthcharge
2019-09-21 22:41:57 -04:00
Samuel Dionne-Riel
b8c4bcda18
Adds back kernel-initrd (for qemu)
2019-09-21 22:41:33 -04:00
Samuel Dionne-Riel
327fda2329
Review build to better use system.build and be more composable
2019-09-21 22:40:24 -04:00
Samuel Dionne-Riel
a9368b3623
splash: review "loading"...
...
While it's not as useful as the other splashes, this may help showing
issues with early post-framebuffer init. E.g. network or adbd in
stage-1.
The hollow logo is simple to describe, compared to a black and white
one, compared to a full colour one.
2019-09-21 18:07:42 -04:00
Samuel Dionne-Riel
54a52b8351
splash: different splash for sthe stages
...
This is to allow platforms where the virtual console is not available to
graphically show the state of the system; is it stuck in stage-1, early
stage-2 or is it about to get into systemd's init?
This is still a big hack, though but relatively clean.
2019-09-21 17:46:09 -04:00
Samuel Dionne-Riel
66a7f812c9
depthcharge: Integrates rootfs into image build
2019-09-21 17:32:16 -04:00
Samuel Dionne-Riel
c4d16fd341
rootfs: Build using the image-builder
2019-09-21 17:32:16 -04:00
Samuel Dionne-Riel
70a967a904
modules: Integrate with NixOS...
...
Otherwise, passing configuration to the NixOS modules system would
become harder, for "outside-in" builds, and would make it harder to
integrate into a nixos-rebuild type build.
2019-09-21 17:32:16 -04:00
Samuel Dionne-Riel
4be6154021
stage-1: Hardcoded udev usage for device detection
...
This should be extracted into a self-contained module.
2019-09-21 17:32:16 -04:00
Samuel Dionne-Riel
7f236593f3
stage-2: Fixes system path detection
...
Though this is still naïve and hardcoded to the last one.
2019-09-21 17:32:16 -04:00
Samuel Dionne-Riel
acd6d41ec9
system-target: rephrase trace about cross
2019-09-21 17:32:13 -04:00
Samuel Dionne-Riel
f846f343f3
modules: misc minor refactor
2019-09-21 13:58:59 -04:00
Samuel Dionne-Riel
c1acf97334
system-target: reviews implementation
...
Since the initial implementation I learned enough to know where it was
slighly wrong. I think this fixes most of the slight wrongness.
2019-09-19 15:31:26 -04:00
Samuel Dionne-Riel
0992b0f91d
depthcharge: Inits system type with bootable partition
...
The partition holds the usual mobile-nixos initrd + the kernel.
2019-09-18 15:39:30 -04:00
Samuel Dionne-Riel
740da6f71d
hardware: inits rockchip with OP1
...
While it is an RK3399 derivative, we'll identify all devices as their
manufacturer does. Meaning that this is an OP1.
Though this seems useless at first glance, this allows us to put
conditionals on OP1 specific features or misfeatures, if any.
2019-09-18 15:37:31 -04:00
Samuel Dionne-Riel
f40c8c1f08
modules: use types.str over types.string...
...
types.string having been formally deprecated, and having a likely
unwanted behaviour.
2019-09-18 15:28:51 -04:00
Samuel Dionne-Riel
e88ba541e7
APQ8064–1AA: Use msm-fb-refresher
2019-06-09 22:16:43 -04:00
Samuel Dionne-Riel
41af579ea5
hard-*: Adds hard-shutdown script
...
On my qualcomm devices, it really shuts down the device even when
plugged into power.
2019-06-09 22:16:43 -04:00
Samuel Dionne-Riel
c7069ac2fb
WIP: system.img generation.
2019-06-09 22:16:43 -04:00
Samuel Dionne-Riel
f5095e806c
WIP: stage-2 through divining a path from nix-path-registration
...
I HATE THIS.
2019-06-09 22:16:43 -04:00
Samuel Dionne-Riel
9d703de07e
Fixes cross-compilation issues...
...
Though not in a nice manner, I'd like to know why I have to fiddle with
`system`.
2018-11-18 21:45:01 -05:00
Samuel Dionne-Riel
9edf553af2
Adds msm8953 as a known value.
2018-11-17 18:17:31 -05:00
Samuel Dionne-Riel
d71a4e8489
WIP trying to get adb to work on the z00t.
...
~ # dmesg | grep -i '\(function\|adb\)'
[ 0.972168] [hall_sensor] default report function.
[ 1.766641] android_usb gadget: Mass Storage Function, version:
2009/09/11
[ 11.983813] functions_store: android_usb: Cannot enable 'adb' (-22)
[ 12.486886] rndis_function_bind_config: rndis_function_bind_config
MAC: 00:00:00:00:00:00
That "Cannot enable 'adb'" is maddening...
2018-11-05 22:50:08 -05:00
Samuel Dionne-Riel
a522e256d3
WIP: cross building changed upstream...
...
... and now the little I understood doesn't work.
2018-11-05 20:51:27 -05:00
Samuel Dionne-Riel
93d508bedc
initrd: Fixes android-specific usb handling on non-android.
...
Issue came from hoisting what was previously in a function into the main
scope. It made the whole script `return` early on non-android devices.
2018-07-11 14:44:39 -04:00
Samuel Dionne-Riel
6be693e7b9
initrd: loop forever now defaults to false.
...
Hey, now, time to get some stage-2 action.
2018-07-11 14:44:14 -04:00
Samuel Dionne-Riel
832256ec40
initrd: Adds adbd
support in initrd.
2018-07-08 21:14:16 -04:00
Samuel Dionne-Riel
44ab8fe3ed
msm-fb-handle: Adds quirk for msm_mdss_fb.
2018-07-06 19:53:57 -04:00
Samuel Dionne-Riel
186b192e3c
msm-fb-refresher: Now not used by default.
...
That is because I would prefer all software to *just work* with `msm`
framebuffer shenanigans.
2018-07-06 19:17:38 -04:00
Samuel Dionne-Riel
4e5b870ec2
framebuffer: Removes fb.modes support...
...
It can, instead, be re-implemented as alternative commands.
2018-07-05 15:00:24 -04:00
Samuel Dionne-Riel
38bc1b125b
initrd-splash: Use builtins.path
.
2018-07-05 13:06:25 -04:00
Samuel Dionne-Riel
db81d8c50e
Reviews splash
...
All images are now good for a while.
Adds option to show the rbg-debug splash.
2018-07-05 00:52:36 -04:00
Samuel Dionne-Riel
497fae7233
Moving artwork.
2018-07-05 00:07:31 -04:00
Samuel Dionne-Riel
f9b5868c1a
stage-1: Use ply-image
for splash purposes.
...
This is upstream in-use by google for chromebooks, which means some
support for some advanced things.
This especially means animations can be handled by ply-image if so
desired.
2018-07-03 23:50:16 -04:00
Samuel Dionne-Riel
871e4aed96
fbv: Removes.
2018-07-03 23:35:35 -04:00
Samuel Dionne-Riel
beaa1664d3
hardware: Adds APQ8064–1AA SOC
2018-07-01 17:58:30 -04:00
Samuel Dionne-Riel
d4a2fa572d
Adds armv7 target + fix error message.
2018-07-01 17:43:31 -04:00
Samuel Dionne-Riel
4d717a26df
system-target: Don't cross when building on native platform.
2018-06-27 19:37:45 -04:00
Samuel Dionne-Riel
242bb764b0
Moves platforms definition in more generic hardware definitions.
2018-06-26 22:07:46 -04:00
Samuel Dionne-Riel
9d6e2a0a99
Fixes wrongly implemented assertions.
2018-06-26 22:07:14 -04:00
Samuel Dionne-Riel
b46dcd6b27
Implements running assertions.
2018-06-26 21:54:41 -04:00
Samuel Dionne-Riel
04a59a0aed
Adds mobile.system.platform
2018-06-26 21:52:09 -04:00
Samuel Dionne-Riel
cf47617e62
Reviews how overlay works and is used.
2018-06-26 20:49:15 -04:00
Samuel Dionne-Riel
6d8b2bea22
WIP : stops relying on NIX_PATH entries.
...
I don't know if there could have been issues.
Better safe than sorry.
2018-06-23 18:09:05 -04:00
Samuel Dionne-Riel
a2620c06a3
initrd-kernel: Allows embedding modules.
2018-06-23 17:45:51 -04:00
Samuel Dionne-Riel
b623007684
WIP : Builds a system image using nixos.
2018-06-23 17:11:07 -04:00
Samuel Dionne-Riel
8bf617c77a
Fixes typo with logs redirection.
2018-06-23 16:04:48 -04:00
Samuel Dionne-Riel
86157753f8
Use mkMerge
to merge multiple configs.
2018-06-20 20:18:44 -04:00
Samuel Dionne-Riel
ca0ef47b71
initrd-logger: enable = false will disable it completely.
2018-06-18 22:14:01 -04:00
Samuel Dionne-Riel
0d17ae2279
stage-1: Adds shell option.
2018-06-18 22:14:01 -04:00
Samuel Dionne-Riel
35972c5547
modules: fixes order.
2018-06-18 22:14:01 -04:00
Samuel Dionne-Riel
2ef6c5f988
initrd: Implements messages redirection.
...
This allows outputting the /init process' messages to multiple
locations, including /dev/console, any additional tty and files.
2018-06-18 21:43:58 -04:00
Samuel Dionne-Riel
6095b623f6
Adds qemu-x86_64 device.
...
Network doesn't work :/
2018-06-17 20:55:34 -04:00
Samuel Dionne-Riel
7be3b3474b
fb_modes can now be nulled.
2018-06-17 19:57:42 -04:00
Samuel Dionne-Riel
97b41b1221
Misc additions.
2018-06-17 19:57:14 -04:00
Samuel Dionne-Riel
9b1d50597f
moves systems into a folder.
2018-06-17 19:57:03 -04:00
Samuel Dionne-Riel
9e44b27e21
Finishes porting to declarative configuration.
2018-06-17 17:50:32 +00:00
Samuel Dionne-Riel
0f560d06af
WIP slowly moving everything to the options system.
2018-06-17 03:43:11 +00:00
Samuel Dionne-Riel
707d62ab81
WIP fixes framebuffer modes.
2018-06-17 00:56:44 +00:00
Samuel Dionne-Riel
a3a4a44704
WIP progress with configuration system.
...
Regression: fb.modes isn't copied anymore
2018-06-17 00:43:19 +00:00
Samuel Dionne-Riel
844313903e
WIP Migrates device configuration into the options system.
2018-06-16 23:21:41 +00:00