Internet Explorer in Linux with IEs4Linux

Explorer Unleashed


IEs4Linux lets web developers who work in Linux install Internet Explorer in just a couple of minutes to test their websites without booting Windows.

By Hendrik Heuer

Nina Hoff , Fotolia

Web designers who work in Linux often find it difficult to test their work with all of today's popular browsers. One factor that adds difficulty is that Microsoft's Internet Explorer (IE) is not available in a native version for Linux. Unfortunately, Internet Explorer, which is known for its quirky interpretation of web standards, is so widespread that web designers can't afford to ignore it.

The Wine run-time environment lets you run IE on Linux, and thus test your own web pages without needing to boot Windows, but the task of configuring Wine is often time consuming and difficult. IEs4Linux is a quick helper for getting IE working on a Linux system.

Wine Inside

The Microsoft browser is an integral part of Windows and thus draws heavily on the Windows Application Programming Interface (WinAPI).

Wine is designed to handle WinAPI references, but installing Internet Explorer to work directly with Wine is still pretty much an adventure. Your mileage will depend on the version of Wine you use, but whatever happens, there are numerous DLLs to prepare.

IEs4Linux not only removes the need for all this extra configuration, it also supports the parallel installation of multiple versions of IE.

Ironically, Windows itself will not support the use of more than one version of Internet Explorer. In a blog, Microsoft advises customers to run different browser versions in separate virtual environments [1].

How IEs4Linux Works

IEs4Linux is a collection of shell scripts that automatically download the compressed .cab packages for the programs from the Microsoft website, modify the configuration files, and use Wine to install the software. The stable version of the script currently installs versions 5.0, 5.5, and 6 of Internet Explorer. The current beta version additionally supports the new Internet Explorer 7.

Legal Situation

The Internet Explorer license requires you to own a valid Windows license (Windows 95 or newer) to use Internet Explorer. The license terms [2] do not explicitly require you to run the product on Windows.

In other words, it is sufficient to own various Windows operating systems. Because of hardware bundling, a strategy that Microsoft has used for years to market its products, many households are likely to have an unused Windows license already.

Flash

If necessary, IEs4Linux will also install the Adobe Flash 9 plugin. If you will be enabling this option during the install, make sure you read and accept the Flash license before you start running the script [3].

Installation

For the install, you can choose between the text-based installer that comes with the stable version [4] and the GUI-based dialog that was introduced with the beta software [5]. Before launching the installer, openSUSE 10.x users will need to install Wine; Ubuntu "Dapper Drake" and "Edgy Eft" users need both Wine and Cabextract.

The packages are available from the Universe repository, which you may need to enable in the Synaptic or Adept package manager. Mandriva users can run RPMDrake to install Wine.

The next step is to unpack the tarball (tar xvzf ies4linux-2.0.5.tar.gz) and to launch the text-based installer for the stable version of IEs4Linux. To do so, launch the ./ies4linux script in the new directory created by the last step and answer the prompts.

A GUI (Figure 1) simplifies the installation process for the IEs4Linux beta. The software proved stable in our lab.

Figure 1: A new IE4sLinux GUI further simplifies the task of installing Internet Explorer in Linux.

To use the GUI, you additionally need the Kommander or Python-gtk packages, which your package manager should have. After launching the GUI, select the version of IE you will be using. The Advanced button lets you install experimental support for Internet Explorer 7.

Troubleshooting

If the installer fails to download a package, you can manually download the package and drop it into the ~/.ies4linux/downloads directory.

If the download fails to launch, the issue may be a DNS server that is unable to resolve download.microsoft.com to an IP address. In this case, just enter ping download.microsoft.com and make a note of the IP address. Then, working as root, add the IP address to your /etc/hosts file:

IP_addr download.microsoft.com

Replace IP_addr with the address you noted from the ping command.

Using IE

To launch one of the various Internet Explorer versions, type ie5, ie55, ie6, or ie7. When using Internet Explorer, remember that the IEs4Linux developers weren't interested in supporting a full-fledged browser.

The project caters to the needs of web designers, and it restricts use to testing of websites. Functions such as bookmarks, which explicitly target end users, are not supported by IEs4Linux.

Internet Explorer 7

The current beta version has experimental support for Internet Explorer 7. Because of the restrictions of the Wine interface, you can't actually install the complete browser, but the developers have found a way to help programmers test their work with the new browser interface. To do so, they linked the IE7 rendering engine with the IE6 GUI.

Because this workaround is very new and experimental, there are currently many restrictions to using Internet Explorer 7 for testing. For example, you can't use the program to access SSL-encrypted websites, it will not render Flash animations, and cookies, which many sites use for session management, are not currently supported.

Quick Alternative

IE Netrenderer [6] by Geotek Network Services provides a quick alternative to rendering graphical websites in Internet Explorer for test purposes. In contrast to Internet Explorer on Wine, IE Netrenderer doesn't actually let you use and interactively test the content on the page; what it does do is let you identify major layout errors and gather an initial impression of your page.

Conclusions

The IEs4Linux project, which was founded by Sérgio Lopes, a Brazilian student, turns out to be a convenient and fast alternative to installing IE manually. The program finally gives Linux web designers the ability to test their own websites in Internet Explorer without booting Windows - and without having to master the complexities of Wine.

Internet Explorer on Wine will be particularly useful to web developers who draw heavily on technologies such as AJAX (Figure 2) and need to test complex layouts.

Figure 2: IEs4Linux is particularly useful for testing interactive websites, such as this Javascript demo from the Dojo toolkit.
INFO
[1] MSDN IEBlog: http://blogs.msdn.com/ie/archive/2006/11/30/ie6-and-ie7-running-on-a-single-machine.aspx
[2] IE license: http://www.microsoft.com/msdownload/ieplatform/ie/license.txt
[3] Adobe Flash license: http://www.adobe.com/products/eulas/players/flash/
[4] Installing IEs4Linux: http://www.tatanka.com.br/ies4linux/page/Installation
[5] Installing IEs4Linux beta: http://www.tatanka.com.br/ies4linux/news/
[6] IE Netrenderer: http://ipinfo.info/netrenderer/