| Index: bin/cros_package_to_live
|
| diff --git a/bin/cros_package_to_live b/bin/cros_package_to_live
|
| index d1d9480448c1290709931424eabb0ee9f4d6e5b7..6b8ec623693b52157816793c79c90a6e34ec7659 100755
|
| --- a/bin/cros_package_to_live
|
| +++ b/bin/cros_package_to_live
|
| @@ -33,8 +33,11 @@ FLAGS "$@" || exit 1
|
| TMP=$(mktemp -d /tmp/cros_package_to_live.XXXX)
|
|
|
| function cleanup {
|
| - cleanup_remote_access
|
| - rm -rf "${TMP}"
|
| + if [ "${mount_type}" = ro ]; then
|
| + remote_sh "mount -o remount,ro /" || /bin/true
|
| + fi
|
| + cleanup_remote_access
|
| + rm -rf "${TMP}"
|
| }
|
|
|
| # Make sure we have a package name
|
| @@ -62,6 +65,13 @@ fi
|
|
|
| PKGROOT="${FLAGS_build_root}/${FLAGS_board}/packages"
|
|
|
| +remote_sh "grep '\S* / ' /proc/mounts | tail -1 | awk '{ print \$4 }' |
|
| + cut -d, -f1"
|
| +mount_type=$REMOTE_OUT
|
| +if [ "${mount_type}" = ro ]; then
|
| + remote_sh "mount -o remount,rw /"
|
| +fi
|
| +
|
| for pkg in $@; do
|
| latest_pkg=$(ls -tr $PKGROOT/*/${pkg}-[0-9]* | tail -1)
|
| if [ -z "${latest_pkg}" ]; then
|
| @@ -75,12 +85,10 @@ for pkg in $@; do
|
| remote_sh "mktemp -d /tmp/cros_package_to_live.XXXX"
|
| temp_dir=$REMOTE_OUT
|
| remote_cp_to "${latest_pkg}" "${temp_dir}"
|
| - remote_sh "mount -o remount,rw /"
|
| remote_sh "mkdir -p /usr/portage/packages/${pkg_dir} &&
|
| mv ${temp_dir}/${pkg_name} /usr/portage/packages/${pkg_dir} &&
|
| env FEATURES=-sandbox emerge --usepkg \
|
| /usr/portage/packages/${pkg_dir}/${pkg_name} 1>&2"
|
| echo "${pkg} has been installed"
|
| remote_sh "rm -rf ${temp_dir}"
|
| - remote_sh "mount -o remount,ro /" || /bin/true
|
| done
|
|
|