Browse Source

Create symlinks for all firmware that is duplicate using rdfind

Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
main
Mario Limonciello 1 year ago
parent
commit
3e79f6b83b
  1. 10
      copy-firmware.sh

10
copy-firmware.sh

@ -9,12 +9,16 @@ prune=no @@ -9,12 +9,16 @@ prune=no
# shellcheck disable=SC2209
compress=cat
compext=
quiet=">/dev/null"
rdfind_results=/dev/null

while test $# -gt 0; do
case $1 in
-v | --verbose)
# shellcheck disable=SC2209
verbose=echo
quiet=
rdfind_results=results.txt
shift
;;

@ -115,6 +119,12 @@ grep -E '^Link:' WHENCE | sed -e 's/^Link: *//g;s/-> //g' | while read f d; do @@ -115,6 +119,12 @@ grep -E '^Link:' WHENCE | sed -e 's/^Link: *//g;s/-> //g' | while read f d; do
fi
done

$verbose rdfind -makesymlinks true "$destdir" -outputname $rdfind_results "$quiet"
find "$destdir" -type l | while read -r l; do
target="$(realpath "$l")"
ln -fs "$(realpath --relative-to="$(dirname "$(realpath -s "$l")")" "$target")" "$l"
done

exit 0

# vim: et sw=4 sts=4 ts=4

Loading…
Cancel
Save