I have created a script which migrates our Yarn Berry yarn.lock into a bun.lock. The only remaining challenge is the checksum. It seems Yarn's checksum is base64 vs Bun's SHA-512, but they're hashed on different things so a conversion cannot work.
Setting the Bun integrity checksum to "" gets an install to execute, but unfortunately I cannot find a way to force Bun to recalculate new checksums for all existing packages.
I do not wish to nuke my yarn.lock as we have quite a mature monorepo project and, quite frankly, a nuke introduces a seemingly endless list of bugs/regressions.