The DS was the first Nintendo handheld to use a file system (as opposed to bundling in into one big file) for commercial games (called nitrofs if you are bored) and homebrew followed along from it.
flashme is the main DS firmware modifying tool but the basic installer is just that and will only install some modifications. noflashme is a stock firmware restoration tool (can even make some later models of original DS have variable brightness as they have the same chip as the DS lite) originally for flashme but also works with other custom firmwares that are out there (mostly creebome, loopy's minimal firmware and fwnitro
https://www.gamebrew.org/wiki/FWNitro https://web.archive.org/web/20071226214742/http://zzo38computer.cjb.net/Nitro2/fwnitro/ ) or corrupted firmwares. Said install tools for the other firmwares might also be an alternative installation path if this or the ppflash hardware method is not for you, though it will likely be what you need if you screw this up.
Finishing my list of fun DS firmware related tools then
https://github.com/CasualPokePlayer/fwunpack https://web.archive.org/web/20160329142229/http://chishm.drunkencoders.com/NDS_Projects/fwunpack.zip
The firmware itself uses all manner of interesting encodings, packings and compression techniques compared to what the average ROM hacker might see even in a more complicated ROM so there is that.
There are some dumpers but eh far easier to download one and edit that.
Alternatively if you just want to run the firmware as a DS file from your flash cart (it will have all the same looks and abilities) rather than flashing it then
https://gbatemp.net/threads/release-fw2nds-build-firmware-nds-from-firmware-bin.508831/ might be of some interest.
Anyway
If it is just the case that a file contained within noflashme needs to be replaced (entirely possible) then any tool that can unpack and repack a DS ROM can probably do the deed.
ndstool is the original tool and one that comes with the devkitpro toolkit for this. Standalone versions exist for all manner of platforms, though might be harder to find with the devkitpro peeps sending out C&Ds.
It is a command line tool but should be doable enough/plenty of examples around.
It was also the basis for DSLazy and DSBuff which are graphical frontends.
https://www.gamebrew.org/wiki/DSLazy
https://www.romhacking.net/utilities/1214/
nitroexplorer
https://www.pokemonhacking.com/nds-hack-tools/nitroexplorer-3/ can also do some things, it is mostly there for when ndstool fails.
crystaltile2 has unpacking and rebuilding options but eh. Also has a firmware editor for the stock firmware but we will leave that for now.
tinke, mkds course modifier and tools like it should also be able to do things here. If the size is the same then can probably even use ndsts.
Once the fwimage.bin in the noflashme tool has been replaced with FW0802D6.BIN and repacked into a nds file you get to run it.
The DS firmware has a write protection on it to stop it being written beyond the settings (name, birthday*, touchscreen calibration, favourite colour, wifi info which this might lack by the way and who knows what will go if you try to run a wifi bearing game that tries to overwrite things) but presumably as a repair option you can enable writing by bridging a couple of pins on the board for both the original and the lite family. This is pin SL1 and can be reached by opening the battery cover. DS originals are pretty easy and you can shove a bit of tin foil, screwdriver or whatever down there and it will probably work just fine. DS lites are still available but also in there is a pad that if shorted to will shut down the DS, not ideal when you are writing a firmware (presumably in this case without a minimum boot restoration feature like flashme has), so people used to use more complicated tools to bridge things (think plastic clicky pen but to short something out instead), or take off the back panel to do more easily (and have to power the thing externally).
*has anybody checked to see if that is a thing on this by the way? For those unfamiliar then there is a little easter egg and on your birthday set the firmware the startup jingle is different.