We’re on our way home, and there are mostly sea days from now on. So, I thought I’d go ahead and do a bit of work on my server code. First up, I can’t compile my servers any more because BlueSSL (which is required by the SMTP package, which my servers use to send transactional emails) won’t compile. My current working assumption is that the Ubuntu Linux image updated a header or a file location for OpenSSL and now BlueSSL can’t find it (it’s bitching about not being able to resolve an SSL function which OpenSSL says is right there. This is clearly outside my application’s domain and not under my control, and is reminding me why, exactly, open source sucks ass).
So anyway, I thought that it’s been a couple of weeks, maybe some maintainer somewhere has noticed this problem and fixed it. So I tried rebuilding my swift development docker image.
=> [linux/arm64 mirror-build 1/8] FROM docker.io/library/swift:5.8-jammy@sha256:eedcd40b29e61d3fa0fa333d 2080.2s
=> => resolve docker.io/library/swift:5.8-jammy@sha256:eedcd40b29e61d3fa0fa333d91bbf7a73da2b77150ef53c3a261 0.0s
=> => sha256:ca3138c028ed18fe151acf0260f2938290c30652ed60496b7b398626d354edce 33.82MB / 550.34MB 2080.2s
=> => sha256:a4377f1ec599c588f38e584d8c534227fec227db5a2480904d807697bf53e8a8 49.28MB / 170.66MB 2080.2s
Apparently, docker gives up if it can’t download a given image within 2080 seconds (34 minutes, 40 seconds).
You know what would be cool? Maybe an option to tell docker, “Look. I’m on a shitty small pipe that actually disconnects every two hours, so maybe you should just download little tiny chunks and cache them locally until you’ve got them all. And keep retrying, in case that two hour window just came along and I had to reauthenticate with the local network portal. Because, and I know this is surprising, not everyone in the world has access to a bitchin’ fast connection to the rest of the world, and it might take a little time.”
You know what? I might even pay money for that.