aboutsummaryrefslogtreecommitdiff
path: root/cnf
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2019-10-21 16:59:43 +0200
committerMichał Górny <mgorny@gentoo.org>2019-10-21 20:07:40 +0200
commit03c54e340073620f489ca85bca94267a198174fe (patch)
treec2a897fd8999dc2297b9798f1f3f92e948895e7f /cnf
parentFilenameHashLayout.get_filenames: force UTF8 encoding for iglob argument (diff)
downloadportage-03c54e340073620f489ca85bca94267a198174fe.tar.gz
portage-03c54e340073620f489ca85bca94267a198174fe.tar.bz2
portage-03c54e340073620f489ca85bca94267a198174fe.zip
make.globals: Change FETCHCOMMAND_RSYNC to --copy-links
Change FETCHCOMMAND_RSYNC to use '-Lt' over '-a'. Notably, this replaces --links with --copy-links option, i.e. makes rsync copy underlying files when symlinks are met. This is important since we do not transfer symlink targets, therefore '-l' ends up creating dangling symlinks. This also removes most of the other options that are irrelevant or even undesirable to distfile fetching, that is: - '-r' since we always fetch a single file, so recursive operation is unnecessary - '-p', '-o', '-g' since we want to apply our permissions and ownership for distfiles rather than copying the one from mirrors, - '-D' since we do not expect any devices or specials in distfiles. Copying timestamps is preserved in case it's helpful in determining whether files need to be refetched. Bug: https://bugs.gentoo.org/698046 Reviewed-by: Zac Medico <zmedico@gentoo.org> Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'cnf')
-rw-r--r--cnf/make.globals4
1 files changed, 2 insertions, 2 deletions
diff --git a/cnf/make.globals b/cnf/make.globals
index 9eeb7a01e..50511e812 100644
--- a/cnf/make.globals
+++ b/cnf/make.globals
@@ -38,8 +38,8 @@ PORTAGE_TMPDIR="/var/tmp"
FETCHCOMMAND="wget -t 3 -T 60 --passive-ftp -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
RESUMECOMMAND="wget -c -t 3 -T 60 --passive-ftp -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
-FETCHCOMMAND_RSYNC="rsync -avP \"\${URI}\" \"\${DISTDIR}/\${FILE}\""
-RESUMECOMMAND_RSYNC="rsync -avP \"\${URI}\" \"\${DISTDIR}/\${FILE}\""
+FETCHCOMMAND_RSYNC="rsync -LtvP \"\${URI}\" \"\${DISTDIR}/\${FILE}\""
+RESUMECOMMAND_RSYNC="rsync -LtvP \"\${URI}\" \"\${DISTDIR}/\${FILE}\""
# NOTE: rsync will evaluate quotes embedded inside PORTAGE_SSH_OPTS
FETCHCOMMAND_SSH="bash -c \"x=\\\${2#ssh://} ; host=\\\${x%%/*} ; port=\\\${host##*:} ; host=\\\${host%:*} ; [[ \\\${host} = \\\${port} ]] && port= ; exec rsync --rsh=\\\"ssh \\\${port:+-p\\\${port}} \\\${3}\\\" -avP \\\"\\\${host}:/\\\${x#*/}\\\" \\\"\\\$1\\\"\" rsync \"\${DISTDIR}/\${FILE}\" \"\${URI}\" \"\${PORTAGE_SSH_OPTS}\""