Sunday, March 2, 2008

First Wix Build

Today I finally completed my first Wix build, and it really wasn't too hard. I searched the net for some wix Firefox scripts and found one for Firefox 1.5.0.4. I downloaded it, and ran it. The script, if placed in the proper directory will create a .msi file that should install Firefox. After trying the .msi file and waiting for a couple of minutes it crashed. I realized there were some build errors so I went back to take a look at them.

Whether the script has some bugs, or I had a bad version of Firefox 1.5.0.4, I'm not sure. There were some file discrepencies and after fixing those the new .msi file was built. This time the script worked and I was able to make a successful firefox install.

This is great news for me. I didn't expect to be able to get it to build at all. Now I have to figure out which direction I'd like to go. Either work on the script so it works with Firefox 2.0 or start writing a program to edit the script.

More soon!

Dave

Saturday, February 23, 2008

Actually Using Wix

My last posts have discussed the many issues that I've had with installing the Wix toolset. This post will instead discuss the power and flexability that the toolset has to offer. Not only was I quickly able to create a .msi file using a small script but I actually understood a lot of what was going on.

The Wix toolset uses xml to bundle files, shortcuts, and registry entrys into a .msi file. The thing that really seemed powerful to me is the fact that you can quite simply just add lines to your script that instruct the script to include more files. Its actually quite basic, and that really is important to entry-level developers such as myself.

There are however some problems with this setup. By adding a line or two you can include a file into your .msi but what if your .msi consists of thousands of files? It would take an extensive amount of time to build a .msi line by line for a massive .msi file.

All things considered, I'm very impressed with the Wix toolset. Its easy to use and its very powerful. To read more check out my posts on the DPS911 wiki:

http://zenit.senecac.on.ca/wiki/index.php/Firefox_Deployment_Kit#Builds

Under my build 0.3 section there is a link to my Wix script and the .msi that resulted from it.

Monday, February 18, 2008

The Wix Toolset (part Deux)

I don't know what's more frustrating, wasting time trying to install programs and get the Wix Toolset to work, or figuring out that you wasted all that time for nothing.

Turns out the Wix Toolset has binaries and didn't see them. Shortly after getting the source files to work I found the binaries for the Wix Toolset.

Well atleast I have a working tool now. More later...

The Wix Toolset


Just as I was starting to run out of steam someone *cough* Dave *cough* showed me an OS tool known as the Wix Toolset. The Wix toolset is a set of tools that help a developer write .msi's using xml files. As of today, I havn't got very far with it because of a several things. Firstly I found out the hard way that the Wix toolset isn't compatible with Vista. This isn't a 1/2 hour mistake, this took me about 2-3 hours to discover just because of the 1/2 dozen packages you need to install just to use the toolset.

Once I made that discovery it was on to the next. I have an old XP laptop at my house and decided I could use it. After once again installing the couple hours of programs I was onto anther problem Turns out the Wix toolset doesn't give you very good steps to building it. I was stuck on a screen that read "Please set WIX env var". Perhaps I overlooked it but nowhere on the Wix page did it say I had to set any environment variables. So I set an environment variable to the Wix directory and it began to work (somewhat).

As if right now I'm struggling with an error message that seems to be telling me I need anther SDK. I've installed everything that the Wix build page has asked for but somehow I'm still requiring anther SDK. I've put up a screenshot of my error message in hopes that someone might be able to help me out with this.

Saturday, February 9, 2008

MSI's

Understanding that my work this semester has only been a compilation of documentation, I sat down this week trying to produce some tangible build. Here are some of the problems I'm facing as of right now. I've completed my research, I know how to push a build of Firefox over a network using a .msi file. As of recently I was able to use a .adm file to customize *some* features of the .msi install as well.

The only next thing to do is to create a tool that automates the whole process. A tool like Microsoft's IEAK that allows server admins to create a .MSI file based on fields they enter.

Thinking this was an easy task I began to install Microsoft's SDK kit for installers. Inside there is a tool called Orca. Orca is used to dissect and display the tables inside a .msi file. I decided that I would use Orca to take a peak inside the .msi file from FrontMotion. Inside I found a crazy mess of tables, some registry keys, some directory pointers and some I had no idea about. That is when I realized the true complexity of .msi files. They don't simply execute commands like a .exe, they have tables that indicate registry entries and pointers to directories to install files.

I've spend over eight hours this week trying to figure out this mess and still have very little to show for it. I was able to edit some fields in Frontmotion's .msi and I will be posting it on the wiki. I am hoping that my work will not be wasted and that by documenting this process I might be able to help someone else out that wants to attempt this task.

Pictures posted. 1) My simulated server environment



2) A screenshot of my work with Orca

Sunday, February 3, 2008

New Direction

So I've find out some new things since my last post. Turns out that I lied somewhat in my last post, I said that I figured out to install Firefox remotely without any prompts. Well turns out that is only partially true. When the user tries to use the installed edition of Firefox it then walks him/her through the installer.

I decided to go back to my mock enterprise setup and try some other things with Server 2003 and Firefox. My thoughts in my last post were to somehow combine the efforts of MKaply's CCK and Active Directory to push a customized version of firefox. There are however a couple problems with this thought. Firstly, CCK creates an .xpi file that Firefox uses to customize it's features. Until I figure out how to bundle this .xpi file with the .msi file I have then this route is a dead end.

That being said, my next task is to look into FrontMotion's .Msi file and see if I can dissect it.

Tuesday, January 29, 2008

Next Step

Seeing as my first experiment went well, I plan on building on it. My next step (which I plan to post this Thursday or Friday) will include directions on customizing an install of a remote install of Firefox. This process is going to be new to me but with some help from fellow students and a little documentation, I think it should be easy.

What I have to investigate is MKaply's CCK add-on for Firefox. I havn't been able to play with it as of yet because my computer at home is Vista and the extension isn't really Vista tested. I am planning on using both CCK and Server 03 with AD to push a customized install of Firefox over a network.

Stay tuned for details.

Dave