serpent-os / moss

The safe, fast and sane package manager for Linux
https://serpentos.com
71 stars 9 forks source link

boulder: Fix emul32 incompatibility with dlang boulder #223

Open ReillyBrogan opened 2 months ago

ReillyBrogan commented 2 months ago

The Rust elf library returns EM_386 for x86 ELF objects, while we used x86 as the ISA with the dlang boulder. This results in emul32 packages that are not compatible with packages already in the volatile repo.

To "Fix" this make sure we use x86 for all dependencies, while also adding each dependency twice as both x86 and 386. This ensures that newly built packages are compatible with existing ones while also allowing us to switch fully to 386 once every existing emul32 package has been rebuilt. We can also just drop the duplicate 386 provide if we decide to use x86 instead without any repo issues.