| Commit message (Expand) | Author | Age | Files | Lines |
| * | nixos/systemd-initrd: deprecate strip•••It only saved ~1MiB of initramfs size, but caused a few issues
like unloadable kernel modules.
| Gerg-L | 2025-05-08 | 1 | -26/+0 |
| * | make-initrd-ng: fix file permissions•••We want to strip the write bit from files after we copied them.
XOR is not the right operator for this, since if the bit is 0 in both
the actual permissions and the mask, then the result will be a 1.
So in practice, we were assigning write permissions for group and others
to all files and we were only stripping the write permissions of the
owner (since the owner had write permissions, and so the result of the
XOR is 0).
The correct thing to do is to AND with the maximum permissions that we
want to maintain (which is the inverse of what we want to strip), so
that only those bits are preserved and the others are always set to 0.
| r-vdp | 2025-05-08 | 1 | -1/+1 |
| * | make-initrd-ng: Restore stripped file permissions•••Previously, all initrd ELFs would be made *world-writable*.
This commit sets the write bit for the file owner exclusively, and
removes it when done. It also sets the umask so that files don't
implicitly become writable for other users by mistake.
Fixes: https://github.com/NixOS/nixpkgs/security/advisories/GHSA-m7pq-h9p4-8rr4
Reported-By: sudoBash418 <sudobash418@gmail.com>
| sudoBash418 | 2025-04-13 | 1 | -3/+14 |
| * | make-initrd-ng: also print json itself if it fails to parse•••The current error message is hard to debug because the error is in the
nix store:
> Error: failed to parse JSON in
"/build/.attr-1s42g1c76fxb77skzq0b4wdhcrg8jmzb54czmxvh1qm7psgsbcni"
>
> Caused by:
> missing field `source` at line 1 column 102
>
> Location:
> src/main.rs:329:10
| Jörg Thalheim | 2024-08-02 | 1 | -1/+6 |
| * | nixos/make-initrd-ng: dlopen ELF notes | Will Fancher | 2024-07-21 | 1 | -22/+111 |
| * | nixos/make-initrd-ng: Pass contents as JSON | Will Fancher | 2024-07-21 | 1 | -13/+16 |
| * | systemd-stage-1: Use specific fs packages | Will Fancher | 2023-10-19 | 1 | -1/+1 |
| * | makeInitrdNGTool: better errors•••It's extremely frustrating seeing "Error: Os { code: 13, kind:
PermissionDenied, message: "Permission denied" }" without any hint as to
where exactly that occurred.
This commit fixes that by adding context to most errors.
| Cole Helbling | 2023-05-25 | 1 | -23/+44 |
| * | make-initrd-ng: support wrapped executables | Lily Foster | 2023-02-20 | 1 | -1/+15 |
| * | makeInitrdNG: make stripping fully optional•••Now the tool will only strip binaries if a strip executable is passed
via the STRIP environment variable. This is exposed via the strip
option for makeInitrdNG and the NixOS option boot.initrd.systemd.strip.
| Linus Heckemann | 2022-08-02 | 1 | -8/+10 |
| * | make-initrd-ng: use goblin instead of shelling out to patchelf and friends | K900 | 2022-08-02 | 1 | -50/+48 |
| * | make-initrd-ng: rustfmt | K900 | 2022-08-02 | 1 | -10/+27 |
| * | makeInitrdNG: Strip more and remove output•••This strips all elf files as far as possible and removes a lot of
unnecessary output. Also wrap in the binaries instead of relying on
$PATH.
| Janne Heß | 2022-05-01 | 1 | -7/+15 |
| * | make-initrd-ng: init | Will Fancher | 2022-03-22 | 1 | -0/+208 |