octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GSoC project about binary packaging


From: PhilipNienhuis
Subject: Re: GSoC project about binary packaging
Date: Wed, 3 Jul 2013 13:47:04 -0700 (PDT)

Anirudha Bose wrote
> On Wed, Jul 3, 2013 at 8:19 PM, Patrick Noffke <

> patrick.noffke@

> >wrote:
> 
>> On Wed, Jul 3, 2013 at 5:02 AM, PhilipNienhuis <

> pr.nienhuis@

> >
>> wrote:
>> >
>> > So the good thing for cross-compiling is that it is a lot faster
>> (>12-14
>> hrs
>> > natively vs. a little over 2 hours cross, on the same core-i5 machine,
>> for
>> > Octave + all dependencies).
>> >
>>
>> I'm not sure what impact this has on the choice of installer.  We
>> still want to support both native and cross builds, right?  If you're
>> getting at the fact that msi-tools is a subset (not sure what that
>> means, exactly) of WiX, then yes, this is a possible concern.
>>
>> >
>> > Could you tell us what advantages and disadvantages .msi files have
>> compared
>> > to an .exe installer?
>> >
>>
>> I don't have any experience with NSIS, but one guy on stackoverflow
>> suggests that .msi files should be used for "corporate" deployment.
>> See the answers from saschabeaumont in the two following links:
>>
>>
>> http://stackoverflow.com/questions/1903145/nsis-vs-wix-vs-anyother-installation-package
>>
>> http://stackoverflow.com/questions/458900/free-software-for-windows-installers-nsis-vs-wix
>>
>> I think he's referring to IT environments that lock down users from
>> installing (and do automatic installs), but I'm not sure why .exes
>> can't be used in this case.  Would that possibly be a concern for
>> Octave (i.e. do we want Octave to be deployed in such environments)?

Yep, sysadmins seem to be keen on .msi.

In a previous setting (a software developing partnership) I had long
discussions with the actual developer (my job was the documentation) about
.msi - he was very pro, at the time I was a bit opposed. 
To be honest, I forgot the fine details; I guess it may have been about not
being able to extract individual files (which can be done from many .exe
installer files using plain unzip SW, depending on the used compression
methods, but not so easy from .msi files).


>> Here is another guys's take on WiX vs. other (non-MSI) installers.
>> His basic point is that uninstalls are more reliable with MSIs.
>>
>> https://groups.google.com/forum/#!msg/firebreath-dev/Ddee0DQL764/9PoPHtdTRR8J

That post emphasizes Windows registry issues; now one of the great assets of
Octave is that it doesn't need to actively set registry entries during
installation.

Anyway, even with MSI uninstallers, menu's moved around in Start Menus etc
can't be tracked; in fact any post-install setup (like user setup, e.g.
LibreOffice personalization menus etc) cannot be tracked and consequently,
cannot be uninstalled. That is equally valid for msi and exe installers.

On Windows, Octave is (currently) confined to one big subdirectory.
Uninstalling merely comprises wiping that one subdir.
Post-install stuff (%USERPROFILE%\.config, Start Menu items, ....) is free
game. If it has been moved around later on, bad luck. If not, chances are
that the uninstaller finds them and can wipe them. 
But then again, %USERPROFILE%\.config can also be used and referenced by
other Octave installations that the user wants to keep.

All in all I think we need not have high ambitions as regards bells and
whistles of a Windows UNinstaller. Just wiping the Octave install dir and
having a try to wipe the original Start Menu folder and Desktop shortcuts
should do.


>> One disadvantage of going the MSI route is the steep learning curve
>> (though I can help get us started), and, as you point out, there is
>> already some work done around NSIS for Octave.  I also could not
>> figure out how to run another MSI from within an MSI.  I've read that
>> you need a "bootstrapper," but I couldn't figure out how to do this in
>> the time I spent on my project.  My solution was to package the MSI
>> within my MSI and require the user to run it after installing my MSI.
>>
> 
> Indeed. I found the tutorials somewhat difficult to follow. I have written
> a basic installer using NSIS for Octave which does nothing other than dump
> the files in the installation directory. Can you provide a similar basic
> XML file to help me understand WiX?
> 
> We need some more features in the installer like checking for JRE, adding
> environment variables after the installation, letting the user choose
> between OpenBLAS and reference BLAS, and installing octave-forge packages.
> How do you propose to do these using WiX?
> 
> 
>> I also though I read somewhere that you could deploy both 32- and
>> 64-bit binaries within the same MSI, but this turns out to not be
>> possible.

I wonder if .msi is really worth the trouble. But if it is required for
corporate environments (from political POV a somewhat valid reason I'd say)
we might perhaps need to supply one as well.

Philip




--
View this message in context: 
http://octave.1599824.n4.nabble.com/GSoC-project-about-binary-packaging-tp4654636p4655175.html
Sent from the Octave - Maintainers mailing list archive at Nabble.com.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]