V6 WIP offline installation

I run V6 WIP on a computer that doesn’t have internet access. I install the new releases by downloading from the link mentioned in the original “Welcome to Serengeti” post and running the file as administrator. A month or so ago, when @brian changed the file from an .msi to a .exe the install failed because it was trying to use the internet anyway. I took it up with Brian offline but the issue persists as of the Jun 21 WIP.

In one of his e-mails to me, Brian said “You’re currently the only person testing my offline installer code.” Just this morning he said “The offline installer is complete. It will ship in its current form unless I get bug reports before we ship. Please me know if you see any problems with the installer going forward.”

I suggest that if you will need to use this installation method once V6 is released that you give it a try now. Even if you won’t need it but have some time to try it, I’m sure Brian would appreciate your feedback.

I heavily support option for offline installation and I believe there are more than AIW and myself who would like to have this sorted out.

1 Like

This isn’t a question about whether we should support offline installation; we are all in agreement that this is needed. Al was pointing out that we would appreciate any feedback if you think something is not working with respect to this.

Maybe a little background about what’s going on here would help:

When you download the Rhino WIP installer, you get an executable that contains several things:

  1. An installer to install Rhino
  2. An installer to install the language specified when you downloaded
  3. An installer to install the Rhino Installer Engine

In order to save download space for repeated installs, you don’t get:

  1. The .NET framework
  2. Four different, but required, Microsoft C-Runtime installers
  3. Language support for the other 12 languages you could install

So, when you run the installer on a computer that doesn’t have Internet access, two things can happen:
A) the installer determines that everything it needs (.NET framework, C-Runtimes) is already present on the computer, and continues with installation
B) the installer finds missing components, and tells you to run the installer on a computer with Internet access, click the Gear icon, and then select “download packages for offline installation”. It then gives you instructions for how to copy the installer and the appropriate packages to your offline computer.

I’ve tested this pretty thoroughly myself, and I’ve had our testing crew test it, too.

If you run into problems, please let me know - it is important to me that this work - we have quite a few customers that install without Internet access. I just only know about Al because he has been the most vocal about it lately and over the years.

We are a good example of a company that won’t be installing over the internet. I will download the first copy, but then we will save that in the server and use that to install the rest. Service releases get pushed out through a login script. We are currently at 130 computers with Rhino installed. Will this method still work with the V6 installer? If my initial download is the “offline installation” I should be fine, correct?



Thanks, Brian, for shining a little more light on the process. With respect to the WIPs, .NET and C runtimes, does each WIP require a SPECIFIC version or a MINIMUM version? In other words should we expect that each time MS releases a new version the WIP will require it, or is V6 now stable in the versions it needs?

At least in my experience, the idea of running the download on the internet connected computer to download the additional components is new. So new, in fact, that for the Jun 21 WIP I just assumed the error message box I got when I ran the download on the offline computer was the same one I got on previous recent attempts. It sure looked the same at first glance. So I can’t say for sure that it told me anything about running on a connected computer.

I think it would make sense to put a version of your process description right on the download page so the user will have the right expectations in mind as the installer goes through it’s process.

Here’s something. I ran the installer on my laptop with the internet turned off and it installed the Jun 21 WIP just as you said. Apparently everything it needed was already there. So I decided to run it again to click the gear button and see what happened. Someone else might do it in this sequence because they put it on their connected computer first and then tried their unconnected one and needed to come back for the extra downloads. Here’s what I got:

Seems like a problem. Or am I missing something?

Another thought: For this specific WIP, where the download includes this new concept, what happens if the user takes the downloaded installer directly to the unconnected computer and runs it? Presumably he still has the older “Rhino installer engine” on his computer. Will he get the old file analysis and resulting messages? Could that be what happened to me? If so, could there be some confusing results?

I’m just spitballing here.

Hi Dan, everything you describe should work just fine - I encourage you to
try it with the current installer and see if you can make it work.

Automating the installation is documented here:

It’s different from V5.

So where you show “setup.exe” in the linked writeup, that would actually be the downloaded install file with it’s name changed by the user to “setup”?
If so, it might be helpful to so state in the writeup.

You don’t need to rename the exe, but we publish with a different name each
release so it’s hard to write a document that accommodates that.

Understood. I was thinking of the customer with a script who might want to just change the filename to what’s in the script as opposed to modifying the script or having the script ask at each new release.

I downloaded the 6/28 WIP today.

I ran it on my laptop with the net turned off. It installed without any intervention beyond the usual initial responses to license acceptance and “Install”.
I then ran it again on the laptop and got the screen with the “modify” and “repair” buttons instead of the gear button. I think this is a confusing inconsistency for anyone who runs the installer multiple times. After fiddling with it for a while I realized that the modify button did the same thing as the gear button. Why should I have to mess around to discover this?

Then I moved the installer to my offline desktop and ran the installer. The first time I got this:

I ran it again, clicking the gear button and unchecking the two checkboxes about automatic downloads and statistics and then “install now”. I got this:

I then went back to the laptop, put it back online and ran the installer again, pushed the gear and then “offline installation” without selecting any additional languages beyond the default english. It proceeded to download all the MS stuff as well as all the language packs, while showing a progress bar that made it look like it was about 5-10% complete when it was (later discovered) nearly done. Then I had to do a global search to discover the location of the redist folder because the download completion message box made no mention of where it was placed. I know Brian knows, but I sure didn’t.

Edit 7/1: If I paid attention and remembered what I’d seen, I would have recalled seeing the comment on the second message, point 4 to the effect that it will put it in the same folder as the installer. In my defense, however, it WAS several minutes in a dazed, confused and aggravated state between that message and the download complete one. I think repeating it in the download complete box wold be a good move - especially for guys like me.

I haven’t tried to do the offline install with the redist yet, but I wanted to get these thoughts down while they were still fresh.

Edit 7/1: I did the install using the recommended method and it worked OK. @brian: apparently I got the downloads while the MS stuff was still all there.

I think it would make a lot of sense, if offline installation is to be anything more than an afterthought, if the http://www.rhino3d.com/download/rhino/wip page simply had a place to check if the install is intended to be an offline one. It wouldn’t be any skin off anyone’s teeth and would allow the initial download to include the redist stuff with it. Or have the same “offline installation” button that the installer does.

Edit 7/1: In addition I think it would be a good idea for the downloaded installer to determine if the internet is available before giving the user any error messages. I think this would best be accomplished by trying to perform a simple internet task with a short (3-5 sec) timeout. If it doesn’t time out it knows right away it’s got a connection and can use the “internet available” code path. If it does, then it should put up a dialog box that says something like “No internet connection found. Will this be an offline installation?” If the answer is yes, then it knows to follow the offline code path. Options can then be tailored by default for each scenario. If the answer is no, then it knows to wait longer or retry or go into the “supposed to be internet, but internet not found” code path.

I also don’t get why all the language packs are downloaded. Is this a bug? Probably not as serious an issue as when I thought it was only 5-10% done, but is it necessary? It seems to me that any offline installing individual will know which languages he or she wants and will find the others superfluous. But maybe I’m wrong.

Edit 7/1: BTW it downloaded 12 language folders. Is this the right number? Also they all seem to be around 40-60 MB except pt-pt which is 3.5. Is this right, or did I stop the download too soon? The install went OK in spite of it, but it was english only.

This is pretty typical behavior, but maybe the buttons are not descriptive enough. When a program is not installed, the installer lets you install it. When the program is installed, the installer lets you change the features that are installed, or remove the program.

This is due to Microsoft deleting the redistributable files that the installer is trying to download. There’s a workaround here and a fix in the next build.

Good idea.

Nope. It’s by design. When you’re doing the final install, you could pick any number of languages to install - I can’t tell that during the download phase.

In essence that’s what does happen. It’s just that you’re using the “not online” method, so you’re getting the additional screen to help you see what you need to do next.

Yes, that’s the correct number. English is embedded, and you got the other languages. The smaller pt-pt is probably a bug… I’ll look into it.

I think that just moves the problem around. I’m open to the idea of having a “download everything embedded in one installer” option to eliminate all these instructions. Given my experience with customers reading, understanding, and choosing the correct option, my hopes are low that it’d actually work right. In practice, what would likely happen is that busy people who don’t want to think (that’s like 99.8 of us) would download the default installer, get to their “offline” computer, and it would fail. The installer would say “It looks like your computer isn’t connected to the internet. To download our offline version, Click Here, (kidding - you’re offline - copy this URL and go somewhere else and download again.)”

But in the mean time, there’d be a bunch of extra text that everyone has to read and think about, and that most people can completely ignore. Those situations are hard, because when given a choice, we need to communicate to people what the choices are, why they care, and help them make the correct choice. It turns out that is harder than you might think, because we’re mostly all in a hurry and don’t want to read.

That’s my point. The problem is moved to a point further upstream - at the headwaters, actually - from which one of two downloads can occur and simplify the operator’s participation in a pre-determined process. I won’t try to dismiss your essentially correct assessment of the usual operators (including myself), but I really think that the download page, with the right visual design, can be made both attention getting and simple enough that practically any operator will make the selection appropriate to his/her needs. Getting the wording right for the two choices may take some finessing, but maybe you can put Bob on it. :slight_smile:

Having the choice on the download page has the added major (IMHO) advantage of presenting the operator right from the start with the knowledge that there are two different techniques available for installation depending on whether the target machine is connected to the internet or not. This forces him to think about it and the choice he makes sets his expectations and allows you to pre-configure the installation flow for the chosen method. It will eliminate, or at least reduce, the use of that famous utterance heard on cockpit voice recorders of automated aircraft around the world: “What’s it doing now???”

Fundamentally I agree with you. Thanks for the feedback.