Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(581)

Side by Side Diff: chromeos-postinst

Issue 6795002: installer: force updating firmware in factory install mode. (Closed) Base URL: ssh://gitrw.chromium.org:9222/installer.git@master
Patch Set: Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/bin/sh 1 #!/bin/sh
2 2
3 # Copyright (c) 2009 The Chromium OS Authors. All rights reserved. 3 # Copyright (c) 2009 The Chromium OS Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 6
7 # This script is called after an AutoUpdate or USB install. The first argument 7 # This script is called after an AutoUpdate or USB install. The first argument
8 # is the partition where the new rootfs is installed or empty. If non-empty 8 # is the partition where the new rootfs is installed or empty. If non-empty
9 # the rootfs should be updated w/ the new bootloader config. If empty, the 9 # the rootfs should be updated w/ the new bootloader config. If empty, the
10 # rootfs is mounted-read only and should not be updated. 10 # rootfs is mounted-read only and should not be updated.
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 update_firmware() { 97 update_firmware() {
98 # See if we need to update firmware. NOTE: we must activate new firmware 98 # See if we need to update firmware. NOTE: we must activate new firmware
99 # only after new kernel is actived (installed and made bootable), 99 # only after new kernel is actived (installed and made bootable),
100 # otherwise new firmware with all old kernels may lead to recovery screen 100 # otherwise new firmware with all old kernels may lead to recovery screen
101 # (due to new key). 101 # (due to new key).
102 FIRMWARE_UPDATE_SCRIPT="${INSTALL_ROOT}/usr/sbin/chromeos-firmwareupdate" 102 FIRMWARE_UPDATE_SCRIPT="${INSTALL_ROOT}/usr/sbin/chromeos-firmwareupdate"
103 if [ ${FLAGS_update_firmware} -eq "${FLAGS_TRUE}" -a \ 103 if [ ${FLAGS_update_firmware} -eq "${FLAGS_TRUE}" -a \
104 -x "${FIRMWARE_UPDATE_SCRIPT}" ]; then 104 -x "${FIRMWARE_UPDATE_SCRIPT}" ]; then
105 FIRMWARE_UPDATE_MODE="" 105 FIRMWARE_UPDATE_MODE=""
106 if [ -n "${IS_FACTORY_INSTALL}" ]; then 106 if [ -n "${IS_FACTORY_INSTALL}" ]; then
107 # factory-mode 107 # factory-mode (--force must be the first parameter when being invoked)
108 FIRMWARE_UPDATE_MODE="--mode=factory_install" 108 FIRMWARE_UPDATE_MODE="--force --mode=factory_install"
109 elif [ -n "${IS_RECOVERY_INSTALL}" ]; then 109 elif [ -n "${IS_RECOVERY_INSTALL}" ]; then
110 # recovery-mode 110 # recovery-mode
111 FIRMWARE_UPDATE_MODE="--mode=recovery" 111 FIRMWARE_UPDATE_MODE="--mode=recovery"
112 elif [ -n "${IS_INSTALL}" ]; then 112 elif [ -n "${IS_INSTALL}" ]; then
113 # installation from chromeos-install 113 # installation from chromeos-install
114 FIRMWARE_UPDATE_MODE="--mode=recovery" 114 FIRMWARE_UPDATE_MODE="--mode=recovery"
115 else 115 else
116 # Default: background update by Update Engine. 116 # Default: background update by Update Engine.
117 # "--background-update" tells it not to perform any dangerous 117 # "--background-update" tells it not to perform any dangerous
118 # thing that would require/cause reboot, for example re-writing 118 # thing that would require/cause reboot, for example re-writing
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after
406 echo "marking part $LEGACY_PART_NUM bootable (new)" 406 echo "marking part $LEGACY_PART_NUM bootable (new)"
407 "${INSTALL_ROOT}"/usr/bin/cgpt boot -i $LEGACY_PART_NUM ${ROOT_DEV} 2>&1 407 "${INSTALL_ROOT}"/usr/bin/cgpt boot -i $LEGACY_PART_NUM ${ROOT_DEV} 2>&1
408 else 408 else
409 # The old gpt tool requires a -b arg to specify the PMBR bootcode. We don't 409 # The old gpt tool requires a -b arg to specify the PMBR bootcode. We don't
410 # want to change the code, so we have to extract it, then put it back. 410 # want to change the code, so we have to extract it, then put it back.
411 dd if=${ROOT_DEV} bs=512 count=1 of=/tmp/oldpmbr.bin 411 dd if=${ROOT_DEV} bs=512 count=1 of=/tmp/oldpmbr.bin
412 echo "marking part $LEGACY_PART_NUM bootable (old)" 412 echo "marking part $LEGACY_PART_NUM bootable (old)"
413 gpt -S boot -i $LEGACY_PART_NUM -b /tmp/oldpmbr.bin ${ROOT_DEV} 2>&1 413 gpt -S boot -i $LEGACY_PART_NUM -b /tmp/oldpmbr.bin ${ROOT_DEV} 2>&1
414 fi 414 fi
415 fi 415 fi
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698