summaryrefslogtreecommitdiff
path: root/Meta/build-root-filesystem.sh
diff options
context:
space:
mode:
authorGunnar Beutner <gbeutner@serenityos.org>2021-07-30 18:22:40 +0200
committerAndreas Kling <kling@serenityos.org>2021-07-30 23:50:29 +0200
commitdff8b3d2d9b89176af41f795c8e4a45176f8927b (patch)
tree03d17cef4f1dcc05a0775c6126c9805cfaa28d60 /Meta/build-root-filesystem.sh
parent9ea8aa7ffe213167c1bb93b7b7257a501f45e11c (diff)
downloadserenity-dff8b3d2d9b89176af41f795c8e4a45176f8927b.zip
Meta: Make rsync a hard dependency and remove the fallback code
Previously we'd fall back to using cp if rsync wasn't available. Not only is this considerably slower it also breaks when some of the files in the target directory are symlinks because cp tries to dereference them. Fixes #8672.
Diffstat (limited to 'Meta/build-root-filesystem.sh')
-rwxr-xr-xMeta/build-root-filesystem.sh21
1 files changed, 9 insertions, 12 deletions
diff --git a/Meta/build-root-filesystem.sh b/Meta/build-root-filesystem.sh
index 185c9b31db..64006129de 100755
--- a/Meta/build-root-filesystem.sh
+++ b/Meta/build-root-filesystem.sh
@@ -32,19 +32,16 @@ fi
umask 0022
printf "installing base system... "
-if command -v rsync >/dev/null; then
- if rsync --chown 2>&1 | grep "missing argument" >/dev/null; then
- rsync -aH --chown=0:0 --inplace "$SERENITY_SOURCE_DIR"/Base/ mnt/
- rsync -aH --chown=0:0 --inplace Root/ mnt/
- else
- rsync -aH --inplace "$SERENITY_SOURCE_DIR"/Base/ mnt/
- rsync -aH --inplace Root/ mnt/
- chown -R 0:0 mnt/
- fi
+if ! command -v rsync >/dev/null; then
+ die "Please install rsync."
+fi
+
+if rsync --chown 2>&1 | grep "missing argument" >/dev/null; then
+ rsync -aH --chown=0:0 --inplace "$SERENITY_SOURCE_DIR"/Base/ mnt/
+ rsync -aH --chown=0:0 --inplace Root/ mnt/
else
- echo "Please install rsync to speed up image creation times, falling back to cp for now"
- $CP -PdR "$SERENITY_SOURCE_DIR"/Base/* mnt/
- $CP -PdR Root/* mnt/
+ rsync -aH --inplace "$SERENITY_SOURCE_DIR"/Base/ mnt/
+ rsync -aH --inplace Root/ mnt/
chown -R 0:0 mnt/
fi
SERENITY_ARCH="${SERENITY_ARCH:-i686}"