Tuesday, 2. June 2009, 17:48:47
opera, NSIS, installer, classic
Heh, it has been quite a few years since I actually made those builds available. Now, for the upcoming Opera 10, I looked at the code with fond nostalgia. The Opera installer was a fun way for me to learn more about skinning NSIS installers, and I loved working on it.
I really did want to see Opera Software actually use my installer, but I really doubted if they would at the time, because my installer didn't do too much over the original classic installer.
I made a list of the extra things I want to add to it, and some I don't want to bring from Opera's own installers, such as automatic association of images to Opera. That gets annoying very quickly.
Who knows? Maybe within the next few weeks I will get it done and make a new build.
Saturday, 8. April 2006, 18:26:59
browser, Microsoft, NSIS, opera
...
I have decided to change the look of the NSIS installer just a bit more, simply for more customization and to fix some bugs with appearance on Windows 9x/ME/NT4/2k... If anyone is still interested, there are new pictures of the installation process...

There were lots of cosmetic problems with the previous skinning of the Opera installer... I also added a new feature, forced CRC checking... This makes sure the installer is not corrupt, and if it is, the installation fails before it begins... In the older version, all you had to do to stop CRC check is use the /NOCRC switch... Now the installation process requires CRC checking before starting... Once again, the Welcome page is shown in this post, while the other dialogs are in the album with the cover image that looks like this welcome page...
Wednesday, 5. April 2006, 22:58:02
Programming, opera, script, scripts
...
I added in the shortcuts into the Opera Update system... Now the program will copy in the shortcuts into the root start menu and the Opera 9 Beta folder...
Wednesday, 5. April 2006, 04:16:06
opera, NSIS, browser, Programming
...
I finally completed the whole NSIS installer dynamic components! Complete with dynamic INI files depending on installation directory, and other settings are defined...
If you just run the opera installer file, which I appropriately named
o90w_<buildnumber>-nsis.exe, it will run with global profile settings... However, if you run the following:
o90w_<buildnumber>-nsis.exe --user
Instead of setting global profile settings, it will set user profile settings... I'm working on the dialog, but don't really get your hopes up yet... I think the switch is good enough...
I am doing some extensive testing on the installer, since it has reached rc9 now... If it passes my testing, I will label it as Release!
Monday, 3. April 2006, 23:24:14
Utilities, scripts, Software, Programming
...
Well, remember how I complained that I could not figure out how to get the profile options set? Well, I figured it out and now I just need to either set up a dialog for it or set a switch, and depending on what the outcome is in the
forum topic that I set up.

What the outcome is, I will program that to be the default, then I will add the appropriate switch or make a dialog, if I can get it to work...
Saturday, 1. April 2006, 04:02:11
browser, opera, Programming, Software
...
Well, I know many Opera beta testers don't like the MSI installer and would prefer NSIS over it, well... I have been analyzing the classic version and carefully documenting what it does..

Unfortunately, the only problem is I don't know how it does the profile options.

Currently, all I can do is have a global profile setup.

I do have a script, but due to legalities, all I can do is send the binaries to the Opera team, and when I do perfect the script as far as I can without access to WISE source, I may send it to the Opera team. Then, they can use it all they like... The main reasons I wanted to to do this is because I wanted to learn more about NSIS, and also I love the Opera browser; but the MSI installer, which I fear is going to be the only form of installation at final if there is no intervention, deletes all the software that is MSI based, which is A LOT of software. If the Opera team approves it after I perfect it enough, I will send the script to them with all the dependancies. I cannot distribute the Opera installer without permission from the Opera, and I will NOT ATTEMPT to ask permission, without approval of the Opera Desktop Team. I have also noticed something about it... The Opera classic installer does a lot of stubstrapping... It launches one thing and starts another using external programs, when those functions can be integrated into the installer... Although, I have never built a program using WISE, I imagine it may not be able to do all the functions by itself... Currently the filesize of the NSIS installer is 3.42MB while the WISE installer is 3.72MB.. That may not seem much, but that is when all the extra splash logos and skins are applied... I could turn all that off and use a skin that makes it look just like the WISE installer, but I think the skin is better... In my
album are screenshots of the setup pages, and the welcome page is scaled down in this post
EDIT: I sent a build to the Opera Desktop Team, it is the same build that is shown here... All that is left to do is see what they say about it, and hopefully they will post it on the site before the next weekly is released...
Monday, 27. March 2006, 02:59:03
opera, Programming, Microsoft, scripts
...
With recent builds of the Opera beta, they released the Windows Installer version of the Opera package. Unfortunately, this has lots of problems with users running Windows 9x or NT4 preSP6. What makes matters worse is that the InstallShield version that the installer is built with uses the Windows Installer 3.x series runtime, which is the first version to not support Windows 9x or NT4 completely. Windows Installer 1.0 was the only version to support NT4 preSP6, so that does not matter. Another problem is when Vista comes out. Vista will introduce new features into the Windows Installer that make it very difficult to not use. The reason is, the ability to patch installations without being an Admininstrator is very useful, but EXE based installers such as NSIS have supported this for years. Being opensource and free, there is no money really to market these things. So, they rely on users. I myself built a few installers with NSIS and find it really easy and effective. In my
previous post, I compared them, so I will not compare again. But I will explain whether NSIS would be the best choice for Opera. Opera wants to get into the corporate world, I can understand that, but I don't get why they have to put up with an installer system that goes against everything Opera stands for! NSIS is very flexible, and that flexibility could be used by the Opera installer development team to create a plugin that would allow the missing functionality to be added, then they could release the plugin as opensource so that it would be improved and continually updated. Opera can then use this plugin to create an NSIS package that would do exactly what the MSI package has that the NSIS system does not. I recently discovered though, that NSIS's silent mode can read options from an external script file, where usermode options such as Name, Company, type of installation, total silence, etc.... This could possibly allow Opera to tap into NSIS! In Chapter 4, section 12 (notated as 4.12) title "Silent Installers/Uninstallers" in the NSIS User Manual that comes with the NSIS package, there are instructions on how to create a silent installer. It also refers to creating an answers file to configure silent installations. This may be the key to letting Opera use NSIS. I think this well hidden feature of NSIS may have been overlooked for quite some time, giving the impression that it is not good for network installs. I know that this is the major feature holding Opera back, and I have given the thing that can set it free!

I just hope someone from the Opera Desktop Team actually looks at this post and sees it... I doubt it though, they have lots of work to do anyway...
Thursday, 9. February 2006, 01:02:53
Programming, script, scripts, Software
...
Many of you know that Windows Installer is the preferred method of distributing software, according to Microsoft. However, Windows Installer has the serious flaw of requiring the OS to support the Windows Installer Runtime. This can be a problem on older operating systems, such as Windows 95 Gold and Windows NT SP0-SP3. Making new versions of Windows Installer has caused a bigger problem. Windows Installer 2.0 runs only on Windows 98, Windows NT SP6a, Windows 2000, and Windows XP. Windows Installer 3.1 only runs on Windows XP SP2. Windows Installer 4.0 is currently planned to only be released to Vista because it has Vista-specific features in it, however all packages written for 4.0 automatically backport to 3.1. This system is similar to the .NET framework, but that is in reverse. Anything written for .NET Framework 1.0 works on all versions, while those written for .NET Framework 1.1 only work on 1.1 and 2.0, and finally, those written for 2.0 work only on 2.0. For .NET Framework, nothing is wrong, because most libraries needed to allow programs to function can be redistributed individually, without failure or royalties. But, Windows Installer is a more difficult problem. If your program is designed to work on all Win32 systems, then you cannot use Windows Installer. You could use something such as Inno Setup or Nullsoft Scriptable Install System. Both are very good, but I believe that NSIS is much more versatile and expandable, due to its widespread support and many various plugins to make it more professional. The only thing NSIS is missing is Visual Studio plugins. At least for VS6 it would be good, since the InstallShield for VC++6 is very bad. Also, many installers that I built with that version of InstallShield do not work on XP due to the old structure of the installer. If you do not want to shell out $300+ for a good installer with universal support and still have a professional look, I recommend three things in combination: NSIS, HM NIS Edit, and ExperienceUI SDK. All three together allow you to build installers that look as good as the latest InstallShield installers, but with smaller overhead and much more flexibility. I see more good coming from open-source each day. NSIS is currently at 2.14 release, HM NIS Edit is at 2.0.3, and ExperienceUI SDK is at 1.1 release. The major advances in all three make things easier for the lower budgeted programmers to make nice installers for their projects. I think that Inno Setup should get its fair end of praise. Inno Setup is designed to be very similar in style to InstallShield, and does a good job of it. Inno Setup's ability to go silent install is very useful for automated runtime installs, making it as good as an automated Windows Installer installation. However, NSIS has advanced SILENT ONLY capabilities, forcing network install styles. Inno Setup already has 64-bit installations, while most others do not yet have this capability. I think NSIS may be able to be recompiled to build 64-bit installs, but I am not quite sure on that. InstallShield has one advantage that would make someone who needs this feature to shell out for it: The ability to make cross-platform installers. InstallShield can make RPMs for Linux apps and binary installers for Windows, MSI files for Windows Installer, and more. That would be the only reason I would shell out for it, if I had a program developed cross platform and need easy installer development. However, recently I came across another installer: InstallerBuilder Enterprise... This version does the one thing that would have tied me to InstallShield, albeit I really do not have anything of the sort...
Saturday, 4. February 2006, 02:00:52
Microsoft, browsers, Software
Most of you are aware that Internet Explorer, the world's most popular and insecure browser is getting a huge makeover with IE7. Also, you may know that IE7 was only available to developers with TechNet or MSDN subscriptions, along with Microsoft Windows Vista CTPs. Well, that changed on January 31, when the IE Team decided to release the Internet Explorer Beta 2 Preview. Well, I tested the program and I am happy to say that the program has finally been separated from the OS, however, the engine is not. What this means is that the program has no access to local hard drive, but through some strange DLL file coding, it is still the explorer shell by means of a "classic mode" that keeps the exact look and styles of the older IE6. It also means the older engine is most likely used. Of course, to most people, it looks as if the program was not separated from the shell at all.... It is kind of true, yet it is not. But, it is as close as you will get to splitting IE from Windows until someone comes up with something for Vista, which from what I have seen requires IE for much more than any other OS I have seen, of course, that is M$ trend... Of course, Opera is MUCH better than it, for many reasons, but since this is an Opera community, I don't have to say them!
Sunday, 29. January 2006, 23:59:39
blogging, blog
I finally decided to join the blogging world and just talk about various tidbits on technology. As everyone knows, Weblogs (blogs) are places where people freely discuss ideas, thoughts, news, etc. and see how people respond... Blogs can be made by anyone and commented on by anyone... It is another form of free expression on the internet... I believe blogs are a great way to allow the freedom of expression to spread! What do you think?
P.S. This is why Google.CN does not have a blogsearch