OLD | NEW |
1 #!/bin/bash -e | 1 #!/bin/bash -e |
2 | 2 |
3 # Script to install everything needed to build chromium (well, ideally, anyway) | 3 # Script to install everything needed to build chromium (well, ideally, anyway) |
4 # See http://code.google.com/p/chromium/wiki/LinuxBuildInstructions | 4 # See http://code.google.com/p/chromium/wiki/LinuxBuildInstructions |
5 # and http://code.google.com/p/chromium/wiki/LinuxBuild64Bit | 5 # and http://code.google.com/p/chromium/wiki/LinuxBuild64Bit |
6 | 6 |
7 if ! egrep -q "Ubuntu 8.04|Ubuntu 8.10" /etc/issue; then | 7 if ! egrep -q "Ubuntu 8.04|Ubuntu 8.10" /etc/issue; then |
8 echo "Only Ubuntu 8.04 and 8.10 are currently supported" >&2 | 8 echo "Only Ubuntu 8.04 and 8.10 are currently supported" >&2 |
9 exit 1 | 9 exit 1 |
10 fi | 10 fi |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 fi | 94 fi |
95 | 95 |
96 sudo apt-get update | 96 sudo apt-get update |
97 | 97 |
98 # We initially run "apt-get" with the --reinstall option and parse its output. | 98 # We initially run "apt-get" with the --reinstall option and parse its output. |
99 # This way, we can find all the packages that need to be newly installed | 99 # This way, we can find all the packages that need to be newly installed |
100 # without accidentally promoting any packages from "auto" to "manual". | 100 # without accidentally promoting any packages from "auto" to "manual". |
101 # We then re-run "apt-get" with just the list of missing packages. | 101 # We then re-run "apt-get" with just the list of missing packages. |
102 echo "Finding missing packages..." | 102 echo "Finding missing packages..." |
103 new_list="$(yes n | | 103 new_list="$(yes n | |
104 sudo apt-get install --reinstall \ | 104 LANG=C sudo apt-get install --reinstall \ |
105 ${dev_list} ${lib_list} ${dbg_list} \ | 105 ${dev_list} ${lib_list} ${dbg_list} \ |
106 $([ "$(uname -m)" = x86_64 ] && echo ${cmp_list}) \ | 106 $([ "$(uname -m)" = x86_64 ] && echo ${cmp_list}) \ |
107 2>/dev/null | | 107 2>/dev/null | |
108 sed -e 's/^ //;t;d')" | 108 sed -e '1,/The following NEW packages will be installed:/d;s/^ //;t
;d')" |
109 | 109 |
110 echo "Installing missing packages..." | 110 echo "Installing missing packages..." |
111 sudo apt-get install ${new_list} | 111 sudo apt-get install ${new_list} |
112 | 112 |
113 # Install 32bit backwards compatibility support for 64bit systems | 113 # Install 32bit backwards compatibility support for 64bit systems |
114 if [ "$(uname -m)" = x86_64 ]; then | 114 if [ "$(uname -m)" = x86_64 ]; then |
115 echo "Installing 32bit libraries that are not already provided by the system" | 115 echo "Installing 32bit libraries that are not already provided by the system" |
116 echo | 116 echo |
117 echo "While we only need to install a relatively small number of library" | 117 echo "While we only need to install a relatively small number of library" |
118 echo "files, we temporarily need to download a lot of large *.deb packages" | 118 echo "files, we temporarily need to download a lot of large *.deb packages" |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
238 sed -e 's/[.]so[.][0-9].*/.so/' | | 238 sed -e 's/[.]so[.][0-9].*/.so/' | |
239 sort -u); do | 239 sort -u); do |
240 [ "x${i##*/}" = "xld-linux.so" ] && continue | 240 [ "x${i##*/}" = "xld-linux.so" ] && continue |
241 [ -r "$i" ] && continue | 241 [ -r "$i" ] && continue |
242 j="$(ls "$i."* | sed -e 's/.*[.]so[.]\([^.]*\)$/\1/;t;d' | | 242 j="$(ls "$i."* | sed -e 's/.*[.]so[.]\([^.]*\)$/\1/;t;d' | |
243 sort -n | tail -n 1)" | 243 sort -n | tail -n 1)" |
244 [ -r "$i.$j" ] || continue | 244 [ -r "$i.$j" ] || continue |
245 sudo ln -s "${i##*/}.$j" "$i" | 245 sudo ln -s "${i##*/}.$j" "$i" |
246 done | 246 done |
247 fi | 247 fi |
OLD | NEW |