use scripts runRemoteClient and runRemoteDaemon in ../scripts
TODO:
-- IMMEDIATE CONCERNS --
Make downloads happen in parallel. Fix the massive hack in serverStartDownload.go
Make downloads start automatically when the daemon restarts
Make downloads cancellable (using 'context'?)
-- General ugliness --
downloading a file overwrites (without first deleting) the extant file at that path in ~/Downloads
. This leads to some hella confusing behavior. Delete the file first!
Universally replace []uint16 with []range wherever possible
Have the sender maintain a set of 'unacked' messages to retransmit at the end
Chunk size needs to be globally constant... 🤦♂️
Use merkel trees to 'patch' the chunks if they don't match
have the receiver close the connection instead of relying on a sender-side timeout
Local Dev notes:
use fn + f5 to run the client with debugging enabled in daemon mode