- Jan 31, 2025
-
-
No longer used in pmaports, so let's remove it here. See: pmaports!5995 Closes #24
-
- Jan 23, 2025
-
-
All OMAP Kindles (except otter) rely on a certificate verification exploit to chainload a patched copy of u-boot which loads unsigned images. Add support for prepending the exploit header to boot.img. Certificate size is parameterized to account for amazon-soho using a smaller header than the other bowser devices. For reference: - 1024: tate, jem, otter2 - 848: soho
-
- Dec 24, 2024
-
-
Newbyte authored
The minimal initramfs was replaced by making initramfs-extra an opt-in feature. Suggest doing this instead for small boot partitions. See pmaports!5636 [ci:skip-build]: already built successfully in CI
-
Newbyte authored
This way one doesn't have to conduct shotgun surgery whenever the suggested approach to this changes.
-
- Oct 30, 2024
-
-
Clayton Craft authored
This was moved to /usr/bin
-
Clayton Craft authored
-
- Oct 15, 2024
-
-
Connor Eliffe authored
-
- Aug 07, 2024
-
-
sd-boot allows loading efi drivers on boot. Add a special directory to load drivers from. [ci:skip-build]: already built successfully in CI
-
[ci:skip-build]: already built successfully in CI
-
- Jul 23, 2024
-
-
Clayton Craft authored
This adds a smaller summary at the beginning of CONTRIBUTING.md with some helpful info for folks who are submitting and/or reviewing patches. I also added a reference in the README to this doc, to notify/remind folks (like me) who sometimes don't make it past the readme. [ci:skip-build] already built successfully in CI
-
[ci:skip-build] already built successfully in CI
-
- Jul 22, 2024
-
-
Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
- Jun 24, 2024
-
-
Some chromebooks have a small kernel partition which barely fits the depthcharge image, and in certain cases is too small for the depthcharge image. Add support for compressing the kernel in the depthcharge image which fixes this issue. Not every chromebook supports compressed kernels, so a deviceinfo variable is added to specify the compression type (either lzma or lz4). If the variable is unset, compression will not be used.
-
- Jun 20, 2024
-
-
Clayton Craft authored
fixes #31
-
Clayton Craft authored
-
- Jun 18, 2024
-
-
Clayton Craft authored
Fixes issues where we try to flash a boot.img that is larger than the target partition size
-
- May 30, 2024
-
-
[ci:skip-build]: already built successfully in CI
-
-
The dtbTool and dtbTool-sprd programs require the dtb directory as an argument. These programs tend to combine multiple devicetrees. We can't determine for whether the directory has devicetree blobs for a single device, or multiple devices. It's safer to copy the target dtb over to a temporary directory, and pass that directory as an argument to dtbTool.
-
- May 03, 2024
-
-
Stop hardcoding `in-pmbootstrap` to check chroot status in favor of comparing the current root inode ID to the root inode ID of the `init` process (PID 1)
-
- Apr 18, 2024
-
-
- Apr 17, 2024
-
-
Clayton Craft authored
Used for sorting multiple entries under esp/loader/entries. See: https://uapi-group.org/specifications/specs/boot_loader_specification/#type-1-boot-loader-entry-keys
-
Taken from https://gitlab.com/postmarketOS/pmaports/-/blob/7aa0c329eded5f198b05daf8bbc32a100d677b82/main/postmarketos-update-depthcharge-kernel/update-depthcharge-kernel.sh This is to more easily let other distributions re-use boot-deploy. Right now, boot-deploy has a hard dependency on these external scripts for certain functionality, which is a problem as they're packaged in pmaports which isn't a great repository to use as source in packages for other distributions. As such, just integrate these scripts directly into boot-deploy. Given their small size and close semantic function to the rest of boot-deploy there is no greater benefit in keeping them in separate files.
-
Taken from https://gitlab.com/postmarketOS/pmaports/-/blob/7aa0c329eded5f198b05daf8bbc32a100d677b82/main/postmarketos-update-kernel/update-kernel.sh This is to more easily let other distributions re-use boot-deploy. Right now, boot-deploy has a hard dependency on these external scripts for certain functionality, which is a problem as they're packaged in pmaports which isn't a great repository to use as source in packages for other distributions. As such, just integrate these scripts directly into boot-deploy. Given their small size and close semantic function to the rest of boot-deploy there is no greater benefit in keeping them in separate files. Closes https://gitlab.com/postmarketOS/boot-deploy/-/issues/3
-
Future code uses certain echo flags which we want to support.
-
- Apr 11, 2024
-
-
Clayton Craft authored
Fixes generating extlinux config when the system does not use a dtb, by making sure this variable is initialized. The failure happened later when this var was used to create the config.
-
- Feb 17, 2024
-
-
Clayton Craft authored
The Linux kernel supports live patching CPU microcode on boot, something we should definitely support. This patch adds support to grub and sd-boot / bootloader spec config. A new function is added to list out ucode in a directory (currently just the output dir, which is almost always /boot). It's very basic at the moment, it makes some pretty big assumptions about the name of the ucode patch file (i.e. currently expects it to match *ucode.img) This if fine for the ucode fw filenames that Alpine Linux / pmOS support. These things can/should be improved later if we need to support more situations. For context/background, see: https://gitlab.com/postmarketOS/pmaports/-/issues/2370 Earlier versions of this patch tried to preserve writing the whole configs for each bootloader in one call to `cat`, e.g. by generating the list of lines to add ucode files, but it was a bit unruly (extraneous newlines and formatting was inconsistent)
- Feb 15, 2024
-
-
Clayton Craft authored
This fixes a problem where the kernel-dtb check in bootimg testing failed, because the work dir only had artifacts from mkinitfs and not from boot-deploy.
-
Clayton Craft authored
This is already tested implicitly by the bootimg test
-
Clayton Craft authored
If find doesn't turn up any files, then this check was always passing, which is obviously wrong :) There's a comment about using find to support globbing, but shell globing works and using `test -e` is simpler than trying to get `find` to do what we want.
-
Since MR 50 vmlinuz-dtb is treated as ephemeral and is only accessible in the workdir, adjust the path for our validation. Signed-off-by:
Caleb Connolly <caleb@connolly.tech>
-
- Jan 26, 2024
-
-
For some kernels in postmarketOS it will be useful to support systemd-booting (via a chainloaded bootloader like u-boot) as well as supporting the existing bootloader which only supports a GZIP compressed kernel image. To enable this usecase, check to see if a version of the kernel file with the `.efi` extension exists and prioritise using it for systemd-boot. Signed-off-by:
Caleb Connolly <caleb@connolly.tech>
-
When appending the dtb to the kernel, we would also copy the resulting file to /boot, however there is no use for this and it takes up precious space (the default size of /boot is 128M). Stop copying it there. Signed-off-by:
Caleb Connolly <caleb@connolly.tech>
-
Add tests that run boot-deploy in the context of a real rootfs and validates the behaviour. Signed-off-by:
Caleb Connolly <caleb@connolly.tech>
-
- Jan 16, 2024
-
-
Add support for generation of dt.img in boot-deploy. The type is defined in `deviceinfo_bootimg_qcdt_type'. Valid values are "qcom", "exynos" and "sprd".
-
- Dec 10, 2023
-
-
-
Some devices may have multiple possible bootloaders where it may be benefitial to ship both an androidboot image and some kind of filesystem based config. In this case the dtb should be deployed despite being appended to the kernel blob.
-
To allow for user-modifiable deviceinfo values, the source_deviceinfo was introduced to the system. Make use of it, if it exists.
-
- Nov 17, 2023
-
-
My Amazon Echo Dot (2nd gen) has a boot.img with no header on the ramdisk. These changes account for that situation by allowing the kernel and ramdisk header labels to be specified separately instead of being hardcoded together.
-