diff --git a/BuildSourceImage.sh b/BuildSourceImage.sh index ace5232..7bbd582 100755 --- a/BuildSourceImage.sh +++ b/BuildSourceImage.sh @@ -1030,19 +1030,21 @@ sourcedriver_extra_src_dir() { local out_dir="${3}" local manifest_dir="${4}" local tarname + local tmptarname local mimetype local source_info - local counter=0 for extra_src_dir in "${EXTRA_SRC_DIR_ARRAY[@]}" do _info "adding extra source directory $extra_src_dir" _debug "$self: writing to $out_dir and $manifest_dir" - tarname="extra-src-${counter}.tar" - ((counter+=1)) + tmptarname="extra-src.tar" _tar -C "${extra_src_dir}" \ --sort=name --mtime=@0 --owner=0 --group=0 --mode='a+rw' --no-xattrs --no-selinux --no-acls \ - -cf "${out_dir}/${tarname}" . + -cf "${out_dir}/${tmptarname}" . + checksum=$(sha256sum "${out_dir}/${tmptarname}" | cut -d' ' -f1) + tarname="extra-src-${checksum}.tar" + mv "${out_dir}/${tmptarname}" "${out_dir}/${tarname}" mimetype="$(file --brief --mime-type "${out_dir}"/"${tarname}")" source_info="${manifest_dir}/${tarname}.json" jq \