>>>>> On Sun, 18 Oct 2009 14:46:08 -0500, "Joseph A. Counsil" <counsil at 
>>>>> rollanet.org> said:

> w1hkj wrote:
>> Joseph A. Counsil wrote:
>>> Dave,
>>> 
>>> I'll be testing this today.
>>> 
>>> I have two minor suggestions for the Windows installer.  When I 
>>> install a new version, it prompts me to install it in a new folder.  
>>> I just edit it to always install in the same folder (.../Fldigi), 
>>> instead of a new folder every time (.../Fldigi<version number>).
>>> 
>>> Also, I found that each new version places an entry in the Windows 
>>> Add/Remove Programs list.
>>> 
>>> I suggest that you default to always install in the .../Fldigi 
>>> folder, and have the installer remove old entries in the Add/Remove 
>>> Programs list upon installation of a new version.
>>> 
>> Nope ... has to stay the way it so that you can have more than one 
>> version installed.  Especially important when you might have to revert 
>> to an earlier version still installed.

> Dave,
> O.k., I'll just keep doing it "my way" by extracting the files.  I don't 
> want to glut my system with lots of folders and add/remove entries, and 
> can revert easily if I need.

It might be possible to add an "Uninstall older versions" check button
to the installer's component selection screen.  The installer would then
find and enumerate the relevant registry keys and call the older
versions' uninstallers in quiet/automatic mode.  Apart from the registry
enumeration it would also need a way of comparing version strings; I
believe there are NSIS macros to do these things.  Or it could instead
implement a simpler "Uninstall all other versions" option.  I may do
this eventually but TBH it's a _very_ low priority item.

If anyone wants to try their hand at this: you'll need to understand the
NSIS scripting language and how to invoke makensis with the right
command line options.  See fldigi.nsi and mknsisinst.sh in the source
tree and the NSIS documentation.

You won't need to build fldigi itself from source, just put COPYING (any
text file will this name will do, it doesn't have to be the GPLv2 text),
fldigi.nsi, fldigi.exe, flarq.exe, mingwm10.dll and pthreadGC2.dll in
the same directory and run makensis to create the installer.

A makensis invocation for 3.11AR:

  makensis -V2 -NOCD -DINSTALLER_FILE=fldigi-3.13AR_setup.exe 
-DLICENSE_FILE=COPYING -DSUPPORT_URL=http://www.w1hkj.com/Fldigi.html 
-DUPDATES_URL=http://www.w1hkj.com/Downloads.html 
-DFLDIGI_DOCS_URL=http://www.w1hkj.com/FldigiHelp/index.html 
-DFLARQ_DOCS_URL=http://www.w1hkj.com/FlarqHelpFiles/flarq.html 
-DGUIDE_URL=http://www.w1hkj.com/beginners.html -DHAVE_FLDIGI 
-DFLDIGI_NAME=Fldigi -DFLDIGI_BINARY=fldigi.exe -DFLDIGI_VERSION=3.13AR 
-DHAVE_FLARQ -DFLARQ_NAME=Flarq -DFLARQ_BINARY=flarq.exe -DFLARQ_VERSION=4.3AA 
-DMINGWM_DLL=mingwm10.dll -DPTW32_DLL=pthreadGC2.dll fldigi.nsi

NSIS homepage:

  http://nsis.sourceforge.net/Main_Page


-- 

73,
Stelios, M0GLD.

Reply via email to