diff options
-rw-r--r-- | include/inject.sh | 22 | ||||
-rw-r--r-- | include/vendor.sh | 4 |
2 files changed, 15 insertions, 11 deletions
diff --git a/include/inject.sh b/include/inject.sh index 09d155fd..9354b439 100644 --- a/include/inject.sh +++ b/include/inject.sh @@ -13,7 +13,7 @@ cv="CONFIG_GBE_BIN_PATH" [ -n "$cvchk" ] && cv="$cv $cvchk" eval "`setvars "" archive boarddir IFD_platform ifdprefix tree new_mac \ - tdir board xchanged $cv`" + tmpromdir board xchanged $cv`" inject() { @@ -41,8 +41,7 @@ inject() x_ e "$archive" f && check_release check_target && patch_release - [ "$xchanged" != "y" ] || ( remktar ) || err - x_ mv "${tdir%"/bin/$board"}/bin/${relname}_${board}.tar.xz" "$archive" + [ "$xchanged" = "y" ] && remktar xnot=" NOT" && [ "$xchanged" = "y" ] && xnot="" printf "\n'%s' was%s modified\n" "$archive" "$xnot" 1>&2 @@ -81,13 +80,13 @@ patch_release() [ "$nuke" = "nuke" ] || x_ ./mk download "$board" has_hashes="n" - tdir="$tmpromdel/bin/$board" + tmpromdir="$tmpromdel/bin/$board" - remkdir "${tdir%"/bin/$board"}" - x_ tar -xf "$archive" -C "${tdir%"/bin/$board"}" + remkdir "${tmpromdir%"/bin/$board"}" + x_ tar -xf "$archive" -C "${tmpromdir%"/bin/$board"}" for _hashes in "vendorhashes" "blobhashes"; do - e "$tdir/$_hashes" f && \ + e "$tmpromdir/$_hashes" f && \ has_hashes="y" && hashfile="$_hashes" && break; : done @@ -118,7 +117,7 @@ modify_mac() x_ make -C util/nvmutil clean && x_ make -C util/nvmutil && \ x_ "$nvm" "$xbloc/gbe" setmac "$new_mac" - fx_ newmac x_ find "$tdir" -maxdepth 1 -type f -name "*.rom" + fx_ newmac x_ find "$tmpromdir" -maxdepth 1 -type f -name "*.rom" printf "\nThe following GbE NVM data will be written:\n" x_ "$nvm" "$xbloc/gbe" dump | grep -v "bytes read from file" || : @@ -132,7 +131,12 @@ newmac() remktar() { - x_ cd "${tdir%"/bin/$board"}" + ( + x_ cd "${tmpromdir%"/bin/$board"}" printf "Re-building tar archive (please wait)\n" mkrom_tarball "bin/$board" 1>/dev/null + ) || err "Cannot re-generate '$archive'" + + mv "${tmpromdir%"/bin/$board"}/bin/${relname}_${board}.tar.xz" \ + "$archive" || err "'$archive' -> Can't overwrite"; : } diff --git a/include/vendor.sh b/include/vendor.sh index 5e1c77ff..f7dce827 100644 --- a/include/vendor.sh +++ b/include/vendor.sh @@ -256,7 +256,7 @@ getvfile() { eval "`setcfg "config/vendor/$vcfg/pkg.cfg" 1`" bootstrap && [ $# -gt 0 ] && getfiles && return 0 # download - fx_ prep x_ find "$tdir" -maxdepth 1 -type f -name "*.rom" + fx_ prep x_ find "$tmpromdir" -maxdepth 1 -type f -name "*.rom" ( check_vendor_hashes ) || err "$archive: Can't verify hashes"; : } @@ -390,7 +390,7 @@ vfile() check_vendor_hashes() { - x_ cd "$tdir" + x_ cd "$tmpromdir" [ "$has_hashes" = "n" ] || [ "$nuke" = "nuke" ] || sha512sum \ --status -c "$hashfile" || x_ sha1sum --status -c "$hashfile" x_ rm -f "$hashfile" |