From 8639d428c2e9f2190ec4e4b5dd931f24a4166f36 Mon Sep 17 00:00:00 2001
From: lassulus <git@lassul.us>
Date: Thu, 23 Feb 2023 17:16:14 +0100
Subject: [PATCH] sync-containers3 syncer: use double space for faster (and
 still safe) sync

---
 krebs/3modules/sync-containers3.nix | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/krebs/3modules/sync-containers3.nix b/krebs/3modules/sync-containers3.nix
index 4a00b23ab..ed147b30e 100644
--- a/krebs/3modules/sync-containers3.nix
+++ b/krebs/3modules/sync-containers3.nix
@@ -104,7 +104,9 @@ in {
               consul lock sync_${ctr.name} ${pkgs.writers.writeDash "${ctr.name}-sync" ''
                 set -efux
                 if /run/wrappers/bin/ping -c 1 ${ctr.name}.r; then
-                  nice --adjustment=30 rsync -a -e "ssh -i $CREDENTIALS_DIRECTORY/ssh_key" --timeout=30 container_sync@${ctr.name}.r:disk "$HOME"/disk
+                  nice --adjustment=30 rsync -a -e "ssh -i $CREDENTIALS_DIRECTORY/ssh_key" --timeout=30 --inplace --sparse container_sync@${ctr.name}.r:disk "$HOME"/disk.rsync
+                  touch "$HOME"/incomplete
+                  nice --adjustment=30 rsync --inplace "$HOME"/disk.rsync "$HOME"/disk
                   rm -f "$HOME"/incomplete
                 fi
               ''}