You know, when I teased Internet ExplorerÂ
for UNIX at the end of my Solaris 7 video,  I knew I was going to get a reaction. AfterÂ
all, the mind boggles at such a strange sight  that one can only hope for a logicalÂ
explanation on why such a thing exists.  I thought much the same in 2012, when I had aÂ
brief opportunity to play with IE for UNIX via  X11 forwarding, which is how I made thisÂ
cursed screenshot. Now, nine years later,  I’ve finally taken the time to dig in, explore,Â
and explain this truly cursed piece of software.  Now, I could have just left you all hanging,Â
but you know, I’ve learned that people  enjoy watching me suffer, so let’s justÂ
rip the bandaid off and dive right into it. For anyone who’s familiar with Microsoft of theÂ
90s, it seems like IE for UNIX is something that  really just shouldn’t exist. Infact, I spentÂ
hours following trails of breadcrumbs in an  effort to ultimately piece this mystery together. As always, this is your host NCommander, and today,  we’re going to take a strange tripÂ
down a very weird and windy road. Now, I could start with the dry history, butÂ
given I’ve already flashed the goods so to speak,  let’s take a break from tradition, and let’sÂ
start with the trials and tribulations related  to installation. Now, if you watched my  Solaris 7 video, it would seem like thisÂ
would be a relatively simple task, right? Well … no, no it isn'. For that 10Â
second clip, I spent the better part  of a day tracking down system patches,Â
and then debugging multiple failures. It  all starts innocently enough with the installer,Â
which mostly wants to know if you want to make Internet Explorer your default web browser,Â
and if you want to install Outlook Express. In keeping with the pain and sufferingÂ
theme, I of course said yes here. This was,  of course, the point where it all startedÂ
going downhill. Trying to launch IE,  via the “iexplorer” command simply errors outÂ
complaining that system patches are missing. That isn’t entirely surprising,Â
since Solaris applications have  runtime patch dependencies. That being said,Â
installing updates on Solaris is … well … it’s  an experience. That’s the best way IÂ
can describe it. System updates are  distributed both as individual patches, andÂ
in large bundle known as “patch clusters’.  These are roughly equivalent to MicrosoftÂ
hotfixes and service packs respectively. To actually perform the update, the systemÂ
needs to be shutdown to single user mode,  after which, the install-clusterÂ
command can be used. This begins a very slow process in which patchaddÂ
attempts to install each part of the cluster. During this process, you get crypticÂ
error messages relating to errors 2, and 8, which is just patchadd sayingÂ
that a patch is already installed, or it’s not simply needed. After nearly an hour,Â
we’re finally ready to reboot, and try this again. With a fully patched system, one might hope thatÂ
all our problems would magically go away, right? Well, no. iexplorer now complains that ourÂ
patches are too new, and then promptly core dumps.  Then, just to add insult to injury, the systemÂ
kernel panicked. And yes, those two things  happened back to back. It’s at this point, IÂ
realized that we’re on an express bus to hell. Still, I wasn’t giving up here. ByÂ
checking the IE_host_platform log,  we can find the exact patch number and revisionÂ
that IE for UNIX seems to require. Furthermore,  in the /usr/local/microsoft folder, IÂ
found this script called mwcheck_platform,  which appears to do a more comprehensiveÂ
system check. It specifically shows which  patches are “certified” for use, and evenÂ
includes a description of what they do.  By sheer dumb luck, I was able to find an archiveÂ
of almost all published Solaris 7 patches,  including the exact revisions wantedÂ
by IE for UNIX. Finally, progress. Sorta. As it turns out, I couldn’t easily justÂ
downgrade a few patches. Instead, I needed  to do yet another clean install and then onlyÂ
install the patches listed in the check script.  After all that, we finally got something new.  I don’t think I’ve ever been more excited toÂ
see a license agreement screen in my life. That, my good folk, is what defines winningÂ
when dealing with this sort of project. We can now take a closer look at what IEÂ
for UNIX actually is. Comparing IE 5.0Â Â for Windows side by side, they look almostÂ
identical. Digging deeper begins to show that  this does appear to be a complete port of InternetÂ
Explorer, albeit with some UNIX specific changes.  For example: Microsoft appears toÂ
have split the difference between  vi and emacs users as for selecting defaultÂ
editors. I’m not sure this is a real solution  to the editor wars, but I suppose it's toÂ
Microsoft’s credit that an attempt was made. Now, I’d love to tell you how IE for UNIXÂ
performs, especially in comparison to the  Windows version, but, well, there’s aÂ
problem with that … The ugly truth is  it’s not exactly easy to evaluate a early 2000sÂ
web browser in 2021 since the web has moved on,  and very little will work “as is” . I’m actuallyÂ
amazed that microsoft.com renders at all.  nethack.org is one of the very few sites thatÂ
I know of that will render properly. Infact, IÂ Â was even able to download files which brought up aÂ
dialog box that I haven’t seen in many years. From  what I can tell, IE for UNIX seems relatively fastÂ
and responsive, as compared to Netscape, but there  are some hiccups here and there. For one, neitherÂ
FTP nor Gopher support appears to be present.  While Gopher is excusable, a lack of FTP feelsÂ
very unusual for the time period. Furthermore,  both of these work just fine in the WindowsÂ
version. I couldn’t find any mention of these  features in help or the README file, so I can’tÂ
tell if they’re supposed to be present or not. That being said, through the useÂ
of tenox’s Web Rendering Proxy,  it is, at least to an extent, possible toÂ
use IE for UNIX on the modern Internet.  The Web Rendering Proxy works by converting webÂ
pages to image maps, so this isn’t a perfect  simulation, but we can get some idea of what usingÂ
the browser might have been like in its heyday.  However, the thing I’m most interestedÂ
in has nothing to do with web browsing  in 2021. It has everything to do withÂ
2001, and those pesky “IE-only websites”. Throughout the 90s, both Microsoft andÂ
the Netscape Communication Corporation  would fight for dominance in what wouldÂ
become the first browser war. In an effort  to stack the deck in their favor, MicrosoftÂ
created proprietary alternatives to the then  existing web standard. This practice, which wouldÂ
later be called “Embrace, Extend, Extinguish” led  to certain sites that were simply incompatibleÂ
with anything beside Internet Explorer. To help illustrate what I’m talking about,Â
let’s look at a simple time and date demo on  Windows. This demo uses one of those alternatives,Â
specifically VBScript, and, as one might expect,  it failed miserably when loaded in Netscape.Â
Infact, this demo seems to be Windows specific  since it also happens to fail onÂ
Internet Explorer for Macintosh. The million dollar question thus becomes:Â
will this VBScript demo work in IE for UNIX? I’ll give you a moment to write your guesses belowÂ
… and with that, let’s get a drumroll please! *drumroll* *TADA.WAV* It works! Let’s be honest, that’s probably notÂ
the result most of you were expecting,  right? It was this, and otherÂ
seemingly platform specific behavior  that made me start taking a closer look atÂ
just what was going on behind the scenes. From what I can tell from the documentation,Â
nearly all IE specific behaviors should work  on the UNIX version. It’s even supported byÂ
the Internet Explorer Administration Kit.  The only major exception appears to be ActiveXÂ
controls, since those are specifically tied to the  processor’s architecture. There were supposedlyÂ
plans to provide a UNIX variant of ActiveX,  but I’m not certain if the necessaryÂ
SDKs ever saw the light of day. We can find more clues if we start diggingÂ
into the other part of this bundle:  Outlook Express. In truth,  any sane human would have run like the dickens,Â
but since it's me, let's dive in feet first! Upon starting oexpress, we’re immediatelyÂ
thrown to a screen that should look highly  familiar to any Internet user of theÂ
late 90s, the Internet Connection Wizard.  This isn’t a 1:1 copy however,Â
since a few screens in,  there’s a unique checkbox to use Solaris’s builtÂ
in mail spool instead of an external mail server.  This is a feature unique to Outlook Express forÂ
UNIX, since Windows has no concept of local mail.  Not long after, we’re thrown into the mainÂ
screen of Outlook Express. We’re also greeted  with two introductory emails that highlightÂ
OE’s tendency to generate large HTML emails. I spent a fair bit of time comparing this to theÂ
Windows version, and just like Internet Explorer,  it seems to be pretty much the same. One ofÂ
the few exceptions I found was a large number  of UNIX-only mail clients listed in the ImportÂ
Mail wizard, which I thought was a neat touch..  Now, I could just kill -9Â
Outlook, and be done with,  but well … I probably should try actuallyÂ
using it for real mail and news, right? *long suffering sigh*. Right, let’s get to it. Getting this to work required a fresh Ubuntu VMÂ
to work as an intermediately, complete getmail,  postfix, and quite a few other odds and ends. I’dÂ
document the process more in-depth, but honestly,  even I have a limit on how much abuseÂ
I’m willing to inflict on my viewers.  Just trust me when I say, it wasn’t easy. The end result though is that IÂ
could send myself a genuine email  sent by Outlook Express for Solaris! Yay? I guess.  Well, it at least proves that Outlook ExpressÂ
can be connected to GMai, and it’s already  given me inspiration for a new time-limitedÂ
Patreon perk, so if you want to get your  own authentic “Written by Outlook Express”Â
email, check out the link in the description. Before I can escape this horror show though,Â
there’s one other thing I should do. Beside  being a fairly mediocre mail client,Â
Outlook Express also supports newsgroups.  So, of course, I should to take it onto USENET.Â
If, by happenstance, anyone is subscribed to  comp.misc, you MIGHT have found a post I made onÂ
July 22nd, 2021, and it might have been made with  Outlook Express for UNIX. I’m not crazy enough toÂ
confirm that I actually did this though, but if IÂ Â did, then I can rest easy knowing fully exploredÂ
everything OE has to offer. That said, let me take  a moment to cleanse those unholy abominationsÂ
from my body and soul before we continue on … Ah, that’s better … I think that covers the penny tourÂ
of Internet Explorer 5 for UNIX,  but I find myself having more questionsÂ
than not. I have to assume a good part of  those watching will as well. Let’sÂ
loop back around to the how and why? For anyone who is familiar with Microsoft’sÂ
history, the idea of them having anything  to do with UNIX in the 90s seems ludacrisÂ
at best. However, this onion had layers,  so if we’re really going to understand the howÂ
and why, well, we’re going to have to peel it. As I already noted, IE for UNIX seemsÂ
to be much closer to the Windows version  than one might expect. If we take a closerÂ
look in the /usr/local/microsoft directory,  we can see a large collection ofÂ
files. If we look a bit closer,  some of these file names might look familiar.Â
In fact, they seem look a lot like the files  you’d find in the system32 directoryÂ
of any contemporary version of Windows. If you find yourself thinkingÂ
something along the lines of  “this sounds a lot like WINE orÂ
WINElib”, then have a cookie. Simply put,  Internet Explorer for UNIX was made by portingÂ
core Windows libraries to run on top of UNIX,  and no, I’m not making that up. This crime againstÂ
the natural order also wasn’t done by Microsoft. It was done by a company with an annoying similarÂ
name called Mainsoft. If you’ve heard of them,  it was likely due to a small incident inÂ
2004 where they were indirectly responsible  for one of the most famous source code leaksÂ
in history. Now, it’s said that extraordinary  claims require extraordinary proof, soÂ
let's wind this back to the beginning. In the years following the IBM-MicrosoftÂ
divorce of the early 90s, Microsoft would  involve itself in quite a few ventures, manyÂ
of which might seem odd without context.  One of these was the Windows Integrated SourceÂ
Environment, or WISE kits. Under the WISE program,  Microsoft would license the source codeÂ
to Windows to independent companies for  a variety of purposes. The best knownÂ
product created with WISE was probably  Insigna’s SoftWindows, which was a full PCÂ
emulator for Macintosh and UNIX platforms.  Insignia used WISE to allow deeper integrationÂ
between Windows and the host operating system. This is where Mainsoft enters the picture. AtÂ
least as early as 1993, Mainsoft was offering  special SDKs to ease porting Windows applicationsÂ
to many of the UNIXes of the era. From what I can  tell, Mainsoft was primarily a consulting firmÂ
specializing in building compatibility solutions.  The earliest versions of theirÂ
website have the tagline of  “Microsoft Technologies on UNIX”Â
only reinforces this belief. Those same archives are also where I foundÂ
information on their “Visual MainWin” product,  which might be a contender of one of the worstÂ
product names I’ve heard. Horrid names aside,  it appears Mainsoft’s product acted asÂ
a set of plug-ins for Visual Studio,  combined with modified and recompiled versionsÂ
of the core Windows libraries and headers.  This provided a one stop solution for easilyÂ
migrating code from Windows to UNIX. According  to the release notes, product announcements, andÂ
case studies, Mainsoft appears to offer not only  the Win32 API, but a whole host of MicrosoftÂ
technologies such as MFC, COM, and more. Mainsoft appears to support a large number of theÂ
major UNIX variants, but what really surprised me  was the fact that they even offered MainWinÂ
for Linux. We can even see Linux as a target  in this screenshot. In fact, a few of the checkÂ
scripts shipping IE for UNIX explicitly see if  they’re running on a Linux or host or not,Â
and I honestly won’t be surprised if “IE  for Linux” was something that might have existedÂ
internally at Microsoft or Mainsoft at one point. Unfortunately, besides quoting old sales material,Â
there isn’t a lot more I can say about Visual  MainWin. Without the product “in hand”Â
so to speak, it’s hard to tell just how easy it  was to port code from Windows to UNIX, or well, doÂ
anything besides speculate. Sadly, given how niche it is, it's likely VisualÂ
MainWin will never be properly archived, but  on the very offhand anyoneÂ
has it, please get in touch.  I’d love to look at it, andÂ
help get it properly preserved. That being said, we can at least contentÂ
ourselves by looking at these photos of Visual  SourceSafe for UNIX, and knowing that some ancientÂ
horrors are truly gone and forgotten, Or well ... that's what I want to say .. Well … while recording this segment IÂ
actually managed to find an evaluation copy  of VSS for UNIX. I … I can’t help but feelÂ
like I should apologize to society as a whole,  since this is probably somethingÂ
that was better left forgotten. For those who don’t know, Visual SourceSafeÂ
was a source control management system made by  Microsoft, and it’s … well the world “bad” doesn’tÂ
do it justice. Thankfully there’s a license  protection check, so unless I spend a stupidÂ
amount of time with GHIRDA or another reverse  engineering tool, it’s safely inert. Or at leastÂ
as inert as hazardous material storage gets ... That being said, in my brief examination, I foundÂ
some interesting bits and pieces that I could dig  into. That however would be for another video,Â
and we’re getting off topic. Stepping back,  none of these investigations have answered theÂ
broader question of “why does Internet Explorer  for UNIX exist”. Well, to be honest I’m justÂ
a step above grasping at straws on that bit. The closest I found to a “mission statement”Â
are a handful of quotes supposedly made by  the then executive vice president ofÂ
Microsoft, Steve Balmer in May of 1996.  Balmer states that MicrosoftÂ
wanted to compete with Netscape,  which at the time dominated 85% of the market.Â
The article also noted that not having an UNIXÂ Â version of IE was proving a problem to OEMÂ
adoption, but doesn’t eliberate further. Those of you paying attention will note that IÂ
used the term supposedly with that last statement.  It’s because I couldn’t verify that thisÂ
article actually existed. The article,  which claims to be from InfoWeek Electric, onlyÂ
exists in the form of a mailing list archive,  and some of the wording in it seems suspect to me.  I wouldn’t have even brought it up, if it wasn’tÂ
for the only methion of a rationale for IE on UNIX  that I was able to find. I’ve included a directÂ
link to the posting in the description, if you  all want to see it for yourselves. I recommendÂ
all of you to come join me in the comments for  a bit of theorycrafting, since, unfortunately,Â
I can’t provide definitive answers on this one. It’s on that note though that if youÂ
enjoyed this video, please give a like,  and consider subscribing. IfÂ
you really enjoyed this video,  consider hitting that bell or becoming aÂ
Patreon. I’ve recently been working with an  editor to improve my videos, and PatreonÂ
pledges go a long way in that regard. Also, let me know in the comments if you want meÂ
to dig deeper into the topic of the WISE kits;Â Â such a video would be much more abstractÂ
than my current fair, but it might be an  interesting dive. With that said, as always, youÂ
can follow my adventures in realtime on Twitter,  or come hang out on Discord. Until next time,  this is your host NCommander, signingÂ
out, and wishing you all a pleasant day.
Much like the Mac version, a UNIX version of IE was necessary to achieve dominance whilst pretending to play fair. As soon as IE took over the world, the UNIX and Mac versions were immediately trashed by Microsoft.
things that shouldn’t exist for me as a regular user - suckless software
This is a true abomination and I hope their download servers completely melt down.
I worked for an ISP (1999-2001) where we used Solaris, and I vividly recall installing IE on the Sparc I had on my desk. I also vividly recall that it ended up being a colossal waste of time, as I used it twice and then never opened it again.
Now its back! In pog.. errr.. I mean chromium form!