summaryrefslogtreecommitdiff
path: root/flash
diff options
context:
space:
mode:
Diffstat (limited to 'flash')
-rwxr-xr-xflash53
1 files changed, 20 insertions, 33 deletions
diff --git a/flash b/flash
index 98605f7..29da4f5 100755
--- a/flash
+++ b/flash
@@ -1,6 +1,6 @@
#!/bin/bash
-# flash script: uses flashrom to flash a new libreboot ROM image onto your machine
+# flash: uses flashrom to flash a new libreboot ROM image onto your machine
#
# Copyright (C) 2014 Francis Rowe <info@gluglug.org.uk>
#
@@ -18,54 +18,41 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-## Don't add here. errors are expected.
-# set -u -e -v
-set -v
+set -u -e
# These are the tested platforms
-if [ $(uname -i) = "i686" ] || [ $(uname -m) = "i686" ]
- then
- echo "Running on i686. ok."
- sleep 5
-elif [ $(uname -i) = "x86_64" ] || [ $(uname -m) = "x86_64" ]
- then
- echo "Running on x86_64. ok."
- sleep 5
+if [ $(uname -i) = "i686" ] || [ $(uname -m) = "i686" ]; then
+ echo "Running on i686. ok."
+ arch=i686
+ sleep 5
+elif [ $(uname -i) = "x86_64" ] || [ $(uname -m) = "x86_64" ]; then
+ echo "Running on x86_64. ok."
+ arch=x86_64
+ sleep 5
else
echo "This script must be run on an i686 or x86_64 host. x86_64 is recommended."
exit 1
fi
+if [ -f "DEBLOB" ]; then
+ # In a src archive or git
+ arch=.
+fi
-# the user must be root to use flashrom
if [[ $EUID -ne 0 ]]; then
- echo "This script must be run as root"
- exit 1
+ echo "This script must be run as root"
+ exit 1
fi
-# check that the user supplied a path to a ROM image:
if (( $# != 1 )); then
- echo "Usage: ./lenovobios_firstflash yourrom.rom"
- echo "usage: ./lenovobios_firstflash path/to/yourrom.rom"
+ echo "usage: $0 path/to/yourrom.rom"
echo "You need to specify exactly 1 file"
exit 1
fi
-# if the user did supply a path, check that it exists:
-if [ ! -f $1 ]; then
+if [ ! -f "$1" ]; then
echo "File not found!"
exit 1
fi
+set -v
# Use flashrom to flash the ROM image:
-
-if [ -f "DEBLOB" ]; then
- # Means we are in src archive or git
- ./flashrom/flashrom -p internal -w $1
-elif [ $(uname -i) = "i686" ] || [ $(uname -m) = "i686" ]
- then
- # Means we are in bin archive and on an i686 host
- ./flashrom/i686/flashrom -p internal -w $1
-elif [ $(uname -i) = "x86_64" ] || [ $(uname -m) = "x86_64" ]
- then
- # Means we are in bin archive and on an x86_64 host
- ./flashrom/x86_64/flashrom -p internal -w $1
-fi
+./flashrom/$arch/flashrom -p internal -w $1