Skip to content

Commit

Permalink
Add edge support
Browse files Browse the repository at this point in the history
  • Loading branch information
xdissent committed Aug 21, 2015
1 parent 827286c commit 0416b6a
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 16 deletions.
30 changes: 18 additions & 12 deletions README.md
Expand Up @@ -4,7 +4,7 @@ Overview
Microsoft provides virtual machine disk images to facilitate website testing
in multiple versions of IE, regardless of the host operating system.
With a single command, you can have IE6, IE7, IE8,
IE9, IE10 and IE11 running in separate virtual machines.
IE9, IE10, IE11 and MSEdge running in separate virtual machines.

[![Click here to lend your support to ievms and make a donation at pledgie.com!](http://pledgie.com/campaigns/15995.png?skin_name=chrome)](http://pledgie.com/campaigns/15995)

Expand All @@ -20,11 +20,13 @@ Just paste this into a terminal:
Requirements
============

* VirtualBox (http://virtualbox.org), select 'command line utilities' during installation
* VirtualBox > 5.0 (http://virtualbox.org), select 'command line utilities' during installation
* Curl (Ubuntu: `sudo apt-get install curl`)
* Linux Only: unar (Ubuntu: `sudo apt-get install unar`)
* Patience

**NOTE** Use [ievms version 0.2.1](https://github.com/xdissent/ievms/raw/v0.2.1/ievms.sh) for VirtualBox < 5.0.


Installation
============
Expand All @@ -33,13 +35,13 @@ Installation

**2.)** Download and unpack ievms:

* To install IE versions 6, 7, 8, 9, 10 and 11 use:
* To install IE versions 6, 7, 8, 9, 10, 11 and EDGE use:

curl -s https://raw.githubusercontent.com/xdissent/ievms/master/ievms.sh | bash

* To install specific IE versions (IE7 and IE9 only for example) use:
* To install specific IE versions (IE7, IE9 and EDGE only for example) use:

curl -s https://raw.githubusercontent.com/xdissent/ievms/master/ievms.sh | env IEVMS_VERSIONS="7 9" bash
curl -s https://raw.githubusercontent.com/xdissent/ievms/master/ievms.sh | env IEVMS_VERSIONS="7 9 EDGE" bash

**3.)** Launch Virtual Box.

Expand Down Expand Up @@ -80,7 +82,7 @@ environment variable. For example, you can set a download speed limit:
Disk requirements
-----------------

A full ievms install will require approximately 48G:
A full ievms install will require approximately 69G:

Servo:.ievms xdissent$ du -ch *
11G IE10 - Win7-disk1.vmdk
Expand All @@ -97,18 +99,21 @@ A full ievms install will require approximately 48G:
11G IE9 - Win7-disk1.vmdk
4.7G IE9 - Win7.ova
4.7G IE9_Win7.zip
3.4M ievms-control-0.1.0.iso
10G MSEdge - Win10-disk1.vmdk
5.1G MSEdge - Win10.ova
5.0G MSEdge_Win10.zip
3.4M ievms-control-0.3.0.iso
4.6M lsar
4.5M unar
4.1M unar1.5.zip
48G total
69G total

You may remove all files except `*.vmdk` after installation and they will be
re-downloaded if ievms is run again in the future:

$ find ~/.ievms -type f ! -name "*.vmdk" -exec rm {} \;

If all installation related files are removed, around 37G is required:
If all installation related files are removed, around 47G is required:

Servo:.ievms xdissent$ du -ch *
11G IE10 - Win7-disk1.vmdk
Expand All @@ -117,17 +122,18 @@ If all installation related files are removed, around 37G is required:
1.6G IE7 - WinXP-disk1.vmdk
1.6G IE8 - WinXP-disk1.vmdk
11G IE9 - Win7-disk1.vmdk
37G total
10G MSEdge - Win10-disk1.vmdk
47G total


Bandwidth requirements
----------------------

A full installation will download roughly 7.5G of data.
A full installation will download roughly 12.5G of data.

**NOTE:** Reusing the XP VM for IE7 and IE8 (the default) saves an incredible
amount of space and bandwidth. If it is disabled (`REUSE_XP=no`) the disk space
required climbs to 74G (39G if cleaned post-install) and around 17G will be
required climbs to 95G (49G if cleaned post-install) and around 22G will be
downloaded. Reusing the Win7 VM on the other hand (also the default), saves
tons of bandwidth but pretty much breaks even on disk space. Disable it with
`REUSE_WIN7=no`.
Expand Down
24 changes: 20 additions & 4 deletions ievms.sh
Expand Up @@ -343,6 +343,8 @@ install_ie_win7() { # vm url md5
build_ievm() {
unset archive
unset unit
local prefix="IE"
local version="${1}"
case $1 in
6|7|8)
os="WinXP"
Expand All @@ -367,15 +369,28 @@ build_ievm() {
archive="IE9_Win7.zip"
fi
;;
EDGE)
prefix="MS"
version="Edge"
os="Win10"
unit="8"
;;
*) fail "Invalid IE version: ${1}" ;;
esac

local vm="IE${1} - ${os}"
local vm="${prefix}${version} - ${os}"
local def_archive="${vm/ - /_}.zip"
archive=${archive:-$def_archive}
unit=${unit:-"11"}
local ova=`basename "${archive/_/ - }" .zip`.ova
local url="http://virtualization.modern.ie/vhd/IEKitV1_Final/VirtualBox/OSX/${archive}"

local url
if [ "${os}" == "Win10" ]
then
url="https://az792536.vo.msecnd.net/vms/VMBuild_20150801/VirtualBox/MSEdge/Mac/Microsoft%20Edge.Win10.For.Mac.VirtualBox.zip"
else
url="http://virtualization.modern.ie/vhd/IEKitV1_Final/VirtualBox/OSX/${archive}"
fi

local md5
case $archive in
Expand All @@ -384,6 +399,7 @@ build_ievm() {
IE8_Win7.zip) md5="21b0aad3d66dac7f88635aa2318a3a55" ;;
IE9_Win7.zip) md5="58d201fe7dc7e890ad645412264f2a2c" ;;
IE10_Win8.zip) md5="cc4e2f4b195e1b1e24e2ce6c7a6f149c" ;;
MSEdge_Win10.zip) md5="c1011b491d49539975fb4c3eeff16dae" ;;
esac

log "Checking for existing OVA at ${ievms_home}/${ova}"
Expand Down Expand Up @@ -477,10 +493,10 @@ check_ext_pack
check_unar

# Install each requested virtual machine sequentially.
all_versions="6 7 8 9 10 11"
all_versions="6 7 8 9 10 11 EDGE"
for ver in ${IEVMS_VERSIONS:-$all_versions}
do
log "Building IE${ver} VM"
log "Building IE ${ver} VM"
build_ievm $ver
done

Expand Down

0 comments on commit 0416b6a

Please sign in to comment.