Project Orbiter Web Installer

Vash

OHM Administrator
Joined
Mar 26, 2008
Messages
189
Reaction score
2
Points
0
Location
In a cave, of course.
Website
www.orbithangar.com
I've written a web installer for Orbiter and I'd like to get a few opinions from some of you out there before I post it publicly.

Right now the installer is just a 227 KB exe which guides the user through a simple installation process. The user is given the options of which packages to install, whether or not to create desktop and/or start menu shortcuts for the current user or all users, which server to download the packages from (there is also a random option which randomly selects one of the orbiter mirror servers for you), and of course the option of what directory to install Orbiter to.

Once all of the options are set, the installer downloads all selected components and unpacks them in the specified directory. There is also an uninstaller program created which simply removes the shortcuts (if they were installed) and removes the Orbiter program directory (after ample warning about what is about to be done of course).

My question for you all resides mainly in the package selection part of the installer. All installation types (of course) require the Orbiter Base package to be installed. The list of available packages is the same as you would find on an official orbiter mirror site (includes all variants of the high resolution texture packages). Here is my current setup for installation types:


  • Full L10 HiRes (default) - includes all orbiter packages, including all HiRes level 10 texture packages
  • Full Std. HiRes - includes Dragonfly textures, SDK, and the "Planets & Moons" HiRes texture package
  • Standard LowRes - includes SDK and no additional texture packages
  • Minimal - includes only the Orbiter Base package
  • Custom - self explanatory

Yes, I could add in the option for also installing "3rd Party add-ons", perhaps some of the "essentials". But I'm not sure if that should really be implemented in the installer or not, seeing as how some may see it as a preferential advantage to some add-ons over others. I'd also have to get permission for the installer to be able to direct download those add-ons if they are not hosted on my Orbit Hangar Mods web site.

Why a web installer? Martin told me himself some time ago that it would simply be impractical to make an installer which included all packages if you didn't want to install absolutely everything. Which, considering the sizes of the larger texture packages, makes perfect sense.

If you have any suggestions at all for this installer, I'd love to hear them here.
 

thomasantony

Member
Joined
Nov 19, 2007
Messages
355
Reaction score
6
Points
18
Location
USA
Website
www.thomasantony.com
I have a suggestion. The one thing I HATE about web installers is that in most of them, you have to re-download the whole thing in case you somehow loose the installation and have to re-install.

The downloaded packages have to be saved somewhere ( preferable a location chosen by the user). It should also have some kind of minimal installer that will install Orbiter from the downloaded files itself without running the web installer.

Other than that, its great. This would be a great opportunity to standardize addon package formats. Make some option for adding addons to the web installer and maybe the ability to remove them individually.
 

TSPenguin

The Seeker
Joined
Jan 27, 2008
Messages
4,075
Reaction score
4
Points
63
I would like to see the SDK not included in any predefined package.
Most people will never need it , so no need to put more strain on the servers.
Leaving it to the custom option or having an extra checkbox for it should be enough.
 

Artlav

Aperiodic traveller
Addon Developer
Beta Tester
Joined
Jan 7, 2008
Messages
5,790
Reaction score
780
Points
203
Location
Earth
Website
orbides.org
Preferred Pronouns
she/her
Sounds like a ritual - turn off your mind, start installer which will do everything for you, put out shortcuts into known places and put uninstaller in. It's probably best not to argue whether it's Good or Bad, so:

A web installer should have all the conveniences of free choice and efficiency - the download should not be redone, unless download errors are present, there should be options to not put uninstaller, shortcuts and other cloggage, it should not require any additional libraries just to run itself. It must not have a default path of C:\Program Files\Orbiter for installation.

To be really useful, it should be able to download and install all the O2009 dependencies - like VC9 runtimes expected to be needed.

There should be an option to download packages without installing.
And, of course, an explanation, that it will download 100+Mb extra to these 227Kb.
 

Arrowstar

Probenaut
Addon Developer
Joined
May 23, 2008
Messages
1,785
Reaction score
0
Points
36
You may want to link to the Recommended Addons page here at OF.com instead of including addons. That would seem to be best. :)
 

Vash

OHM Administrator
Joined
Mar 26, 2008
Messages
189
Reaction score
2
Points
0
Location
In a cave, of course.
Website
www.orbithangar.com
I have a suggestion. The one thing I HATE about web installers is that in most of them, you have to re-download the whole thing in case you somehow loose the installation and have to re-install.

The downloaded packages have to be saved somewhere ( preferable a location chosen by the user). It should also have some kind of minimal installer that will install Orbiter from the downloaded files itself without running the web installer.

Other than that, its great. This would be a great opportunity to standardize addon package formats. Make some option for adding addons to the web installer and maybe the ability to remove them individually.

That is one thing that I will be sure to implement in the installer. It would indeed be terrible if you lose your internet connection half way through the installation process and end up having to download everything all over again. I'll set something up in it so that it will check and see if the installation files already exist before downloading them (and make sure that the file size is correct in case there was a partial/corrupt download).

Just to make sure that this is clear:
This installer is NOT meant to replace the way that orbiter is installed right now. I seriously doubt that anyone who is so subscribed to the method of downloading and extracting zip files would ever use this installer. This program is not meant for those people. This is geared towards anyone and everyone who isn't so comfortable with the process or towards anyone who wants to install everything, but just doesn't want to individually download all 20 of the separate packages and unzip them themselves (aka. lazy people like myself :p)

TSPenguin,
I'll take that into consideration.

Artlav,
What do you think the default install path should be and why do you think it should be what ever you think it should be? Isn't that simply personal preference? That is why it's changeable after all. Also, there are options in the installer to not install shortcuts. That is the only extra so-called "cloggage" that would be installed. Which, I'm not sure about you, but I always have to manually create a shortcut for orbiter anyway. It's much more convenient than having to open up windows explorer and navigate to where I installed it to just to run the game. Also, yes, the installer does inform you exactly how much space the packages you have selected will take up on your harddrive.

Arrowstar,
I'll be sure to do that.
 

Artlav

Aperiodic traveller
Addon Developer
Beta Tester
Joined
Jan 7, 2008
Messages
5,790
Reaction score
780
Points
203
Location
Earth
Website
orbides.org
Preferred Pronouns
she/her
What do you think the default install path should be and why do you think it should be what ever you think it should be? Isn't that simply personal preference?
True to some extent. Yet, the fact that nearly every single installer use that pattern of program files\company name\program name is somewhat disturbing for me. It would have been good to see something new for a change. They who don't want the default one will change it anyway, they who want the default won't change it anyway, so nothing is lost by not using the cliché.

Which, I'm not sure about you, but I always have to manually create a shortcut for orbiter anyway. It's much more convenient than having to open up windows explorer and navigate to where I installed it to just to run the game.
Well, i do not use either shortcuts or windows explorer. Preferences, once again.
 

Vash

OHM Administrator
Joined
Mar 26, 2008
Messages
189
Reaction score
2
Points
0
Location
In a cave, of course.
Website
www.orbithangar.com
True to some extent. Yet, the fact that nearly every single installer use that pattern of program filescompany nameprogram name is somewhat disturbing for me. It would have been good to see something new for a change. They who don't want the default one will change it anyway, they who want the default won't change it anyway, so nothing is lost by not using the cliché.

Well, i do not use either shortcuts or windows explorer. Preferences, once again.

The reason why nearly every program installs to program files is because that's the way Windows intends developers to have their programs installed. Hence the name of the directory "Program Files". It's sort of like the Microsoft-designated install location for programs. Of course you're not restricted to installing programs to only that location, but it is the "recommended standard".

Out of curiosity, if you don't use shortcuts or windows explorer to launch orbiter, how do you play it? Do you launch it from the command line?
 

Scarecrow

Member
Joined
Feb 10, 2008
Messages
272
Reaction score
1
Points
18
Location
USA
If we're moving to web installers, I highly recommend a system that works similarly to yum (http://en.wikipedia.org/wiki/Yellow_dog_Updater,_Modified). That way, all you need to do is command something like:

vmwi install xr-2-ravenstar

...and then Vash's Magical Web Installer would check in with all the repositories, find xr-2-ravenstar.zip, resolve all the dependancies, download it, install it, and be done with it. There could also be a graphical interface, for the less command line oriented people. Obviously, this would require that all the managers of the addon repositories install a second, standardized interface, and that all popular addons go into one of these repositories (or addon developers with their own sites could install vmrs, Vash's Magical Repository Software, on their own servers). This would be a lot of work for people besides Vash too, but with a concerted community effort, it could be pulled off, I think.

Edit: and very hypothetically, if a Linux version ever exists, someone (like me, perhaps...) could make a program that converts zipped up addons into .rpm or .deb format for distribution through yum or apt.
 

TSPenguin

The Seeker
Joined
Jan 27, 2008
Messages
4,075
Reaction score
4
Points
63
Out of curiosity, if you don't use shortcuts or windows explorer to launch orbiter, how do you play it? Do you launch it from the command line?

Maybe he uses Total Commander, like me. Or any other program, that let's him interface with his file system in a manner that doesn't hurt as much as the explorer. Also, several good shells have been portet to windows, like bash for instance.
 

James.Denholm

Addon ponderer
Joined
Feb 8, 2008
Messages
811
Reaction score
0
Points
0
Location
Victoria, Australia
Total Commander ftw! Anyway.

Vash, can I suggest there be an option (maybe not in the first release) to make the install JSGME friendly? Only an option, of course, as I don't suppose that everyone uses JSGME.

For those who don't know what JSGME is: http://www.users.on.net/~jscones/software/products-jsgme.html

It's like a handy little mod (or, in this case, addon) enabler. Very cool, only a real pain to set-up initially...
 

Vash

OHM Administrator
Joined
Mar 26, 2008
Messages
189
Reaction score
2
Points
0
Location
In a cave, of course.
Website
www.orbithangar.com
If we're moving to web installers, I highly recommend a system that works similarly to yum (http://en.wikipedia.org/wiki/Yellow_dog_Updater,_Modified). That way, all you need to do is command something like:

vmwi install xr-2-ravenstar

...and then Vash's Magical Web Installer would check in with all the repositories, find xr-2-ravenstar.zip, resolve all the dependancies, download it, install it, and be done with it. There could also be a graphical interface, for the less command line oriented people. Obviously, this would require that all the managers of the addon repositories install a second, standardized interface, and that all popular addons go into one of these repositories (or addon developers with their own sites could install vmrs, Vash's Magical Repository Software, on their own servers). This would be a lot of work for people besides Vash too, but with a concerted community effort, it could be pulled off, I think.

Edit: and very hypothetically, if a Linux version ever exists, someone (like me, perhaps...) could make a program that converts zipped up addons into .rpm or .deb format for distribution through yum or apt.

I see where you're going with that, but I'm really not trying to make this a "move to webinstallers" or a "move to installers" of any kind. This little project is just designed to be supplementary to the standard way of installing orbiter. There is indeed a whole world of hurt I could get myself into out there if I wanted to turn this into some kinda movement. :p

TSPenguin,
Ah yes, I forgot to mention explorer replacements. But then again, I somehow doubt that people who are savvy enough to use those in the first place are ever going to use this installer. And they still work on more or less the same basic principle that windows explorer does. It's just a (usually) better implementation of it.
 

tgep

Tutorial Publisher
Tutorial Publisher
Joined
Apr 3, 2008
Messages
510
Reaction score
0
Points
0
Location
Next to the Stennis Space Center
I see a lot of potential here. This looks like a fast easy way to set up a clean instal on a new system or on a secondary system such as a laptop to use for testing new add ons. I have extensive SDK files in my main Orbiter because I got involved in developement so, for me, I'd like to see the SDK files included.

I'm a bit up in the air about the planets/moons supliment because to be honest, I so rarely visit them but they do give a user extra versatility.

One item I would most definately like to see included is OrbitSound 3.5. Even if a ship uses basic Orbiter sounds, I still have radio freqs. I like to use and a selection of my favorite mp3s for those longer tripas beyond Earths orbit.
 

Scrooge McDuck

Addon Developer
Addon Developer
Joined
Mar 18, 2008
Messages
515
Reaction score
30
Points
28
Location
The Netherlands
Website
orbitermap.no-ip.org
This sounds like a good idea Vash (though as you say as an 'alternative way' of installation, keeping the separate zip files available).

Do you use Inno, or a custom setup application?
About the SDK: I'd say just add a check box, so you can select to install it or not with all of the Orbiter setup types.

BTW, I'm not sure if it was mentioned but I think that it would theoretically be possible to make an interface/connection with the OrbitHangar server from within this installer application.. So maybe even addons could be selected/included for download by browsing/searching for them?
Though the installation of addons itself would be hard as a lot of addons require a custom way of installing instead of just extracting.

[edit]
Just noticed that integration of addon search/download was already mentioned here. So yes indeed, maybe it's better to simply keep it for Orbiter itself.
[/edit]

regards,
mcduck
 

Vash

OHM Administrator
Joined
Mar 26, 2008
Messages
189
Reaction score
2
Points
0
Location
In a cave, of course.
Website
www.orbithangar.com
Do you use Inno, or a custom setup application?
About the SDK: I'd say just add a check box, so you can select to install it or not with all of the Orbiter setup types.

I used NSIS (Nullsoft Scriptable Install System). I had tried making one using Inno a couple of years ago, but I ran into a lot of problems when it came to be able to set up a page to allow users to select which mirror to download from or to choose one randomly. I just started writing the installer all over again from scratch on Thursday. I finally got all the kinks worked out on Friday, and now I'm just looking for any final touches to add before releasing it. It came out to be a little more complex code wise than I thought it would be. The final result is some 633 lines of NSIS code.
 

Scrooge McDuck

Addon Developer
Addon Developer
Joined
Mar 18, 2008
Messages
515
Reaction score
30
Points
28
Location
The Netherlands
Website
orbitermap.no-ip.org
Ah ok, sounds good too.
I've been using Inno for some time now, also with custom code (Pascal). I know Inno from itself has no web-install features, but it can make use of DLL's, so that means you can do nearly anything. Just out of interest, back when you tried Inno, did you use a DLL for the downloading code, or put it into the code script itself?

Anyhow, the NSIS way sounds fine if it works :)
 

Vash

OHM Administrator
Joined
Mar 26, 2008
Messages
189
Reaction score
2
Points
0
Location
In a cave, of course.
Website
www.orbithangar.com
Ah yes, that was the problem that I had run into with Inno. I was using a dll for downloading files with inno, but in order to be able to customize the whole process to allow server selection and random server selection, I was going to have to learn Pascal. At the time, that just wasn't very appealing.

I'm actually using a separate dll with NSIS for the file downloads as well, but the built-in support for customization with NSIS code is much better. I already know C++, Java, and C#. For whatever reason, Pascal just didn't appeal to me as a new language that I should learn if the only use I'm going to have for it is to write a single installer.
 

Hielor

Defender of Truth
Donator
Beta Tester
Joined
May 30, 2008
Messages
5,580
Reaction score
2
Points
0
Another option I would suggest would be to have Earth (and maybe moon) L10 textures only. A lot of people may not want all the L10 textures for all the planets and moons, since they may spend most of their time in LEO.
 
Top