github NextendoNetwork/Prelude-Nro v3.3.5
Prelude v3.3.5 (build 57)

3 hours ago

Fixes an update failure introduced in v3.3.3: some consoles showed "cannot write to SD" even though the update had already downloaded.

What went wrong — and it was our mistake

v3.3.3 changed what the updater replaces: instead of a fixed path, it now replaces the file you actually launched. That was the right fix for the updater never replacing anything, and it works.

But the code around it assumed overwriting was always safe "because the current build runs from RAM". That assumption was free while the file being replaced was not the one running — and it stopped being free the moment we changed exactly that. Depending on your homebrew loader, the running .nro can stay open: the delete fails, the rename cannot overwrite on FAT32, and opening it for writing is refused. You get an error with a perfectly good update already sitting on your card.

We should have caught that when we made the change. Sorry.

What changed

Replacing now tries three ways instead of one: overwrite in place without deleting first, then delete-and-rename, and as a last resort the old fixed location. That last one recreates the duplicate v3.3.3 removed — a deliberate trade: an update installed in the wrong place beats an update lost.

The updater also writes what it did to sdmc:/prelude_trace.txt (codes 60–64). It had no logging at all, which is why this had to be reasoned out instead of simply read. If it ever fails again, that file answers it.

Which one do I install?

  • On v3.3.3 or v3.3.4 — press update inside Prelude. If it fails with the SD error, install this one by hand.
  • On anything older — install by hand, as with v3.3.3.

Don't miss a new Prelude-Nro release

NewReleases is sending notifications on new releases.