I tried this, just for fun. I am using Ubuntu.
It worked for me. I am using one of those tiny 'zero' C3 boards.
However, I used esptool to do the flashing.
I did not manage to get the WebInstaller to work for a local file. But, I have never done that before, so it could be user error on my side.
Back in Sep 2025, I failed to "apt install esptool", so I got it this way:
# All methods (WebSerial, miniterm, esptool) can be temperamental. If you can't access the port, try re-plugging the USB.
# Seems I don't need to hold-Prog and Reset. It seems to be able to enter programming mode itself, though I don't know how.
esptool -p /dev/ttyACM0 flash-id
esptool -p /dev/ttyACM0 erase-flash
esptool -p /dev/ttyACM0 write-flash 0 .pio/build/tasmota32c3/firmware.factory.bin
Hope this helps
Andrew