- Remove rollback protection on unprivileged installs
- Unaligned pointer cast when scanning .dynamic sections
1. Remove rollback protection on unprivileged installs
2. Unaligned pointer cast when scanning .dynamic sections
mere dev build (and unprivileged mere install) aborted when installing a
dependency from a remote repo: after the package was successfully built,
verified, and admitted to the store, the install tried to write rollback
state into /mere/cache/repos/<...>/rollback_state.kdl — a root-owned path
— and failed with a FileSystem error ("failed to update rollback state").
scanElfMetadata read the .dynamic section into a byte buffer via allocator.alloc (1-byte aligned), then @alignCast'd each entry to *Elf64_Dyn. @alignCast asserts the type's 8-byte alignment and panics in safe builds when the buffer base isn't 8-byte aligned — which it isn't guaranteed to be. This crashed `mere dev build` during package artifact scanning (hit while packaging pixman). Read d_tag and d_val by offset with std.mem.readInt instead, matching how the rest of elf.zig parses ELF structures. No alignment assumption, and endianness is explicit (native_endian, already guaranteed by the scan's earlier endian guard).
No due date set.
No dependencies set.
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?