On Wed, Aug 26, 2009 at 11:11 AM, RobS <[email protected]> wrote:

>
> On Aug 25, 10:42 am, "Edward K. Ream" <[email protected]> wrote:
> > Last night I retrieved the code in leoDist.leo that created the NSIS
> > installer.  It was in Leo 4.4; there may be a later version.  Imo, Leo
> > does need this installer, and it would be worth significant work to
> > make it happen.
>
> Looking at the other threads, it seems you have a lot on your plate.
> I'm new to Leo, but I'm familiar with NSIS and other windows
> installers, and I'd be happy to take charge of the installer for Leo,
> or help out in any way you like.


Many thanks for this offer.

Yesterday I did some work on a script that will create the .nsi installer
script from the output of

bzr ls >  bzr-manifest.txt

The script is in test.leo: it's called create leo.nsi.

This script and other data is now in leoDist.leo on the trunk at rev 230.
Here is the checkin log:

QQQ
Added stuff to leoDist.leo for RobS.

- The create leo.nsi script from test.leo
- The node bzr-manifest.txt from test.leo
- The Leo 4.x installer (from Leo 4.4.5) tree from the 4.4.5 version of
leoDist.leo
QQQ

Notes:

- The "Make Stuff (doesn't work well, to be deleted)" contains a failed hack
to create a .exe file by literally pasting the .zip file created by bzr to a
python-version-specific .exe distutils file.  It kinda worked, but didn't
really handle the registery and other issues correctly.  Feel free to ignore
it.

- The Leo 4.x installer (from Leo 4.4.5) tree is the basis of the old nsis
installer.  The major problem with this approach is that all files in the
distribution had to be entered by hand.  This is too awful now that it's so
easy to add and delete files from the repository.

The subtree called "Keeping installer/uninstallers in synch" contained all
this horrid work.  These nodes were cloned to the section "<< Section Leo
>>", which also created and destroyed directories by hand.

- The point of the "create leo.nsi" script is to automate the process of
specifying files in the .nsi file.  At present, this script just uses print
statements to show what code should be included in leo.nsi.
Run the script on a smallish version of bzr-manifest.txt call
small-bzr-manifest.txt.  Using a small test file makes debugging easier.
Also, there are performance problems in putFiles, as you will see.

The idea is that the create leo.nsi script will eventually write leo.nsi as
follows:

1.  Write leading boilerplate.
2.  Write the files/directory specific stuff following the proof-of-concept
code in the present "create leo.nsi" script.
3. Write trailing boilerplate.

Steps 1 and 3 are straightforward: in essence, just copy stuff from @@thin
leo-4-3-nsi.

I hope this general plan is clear enough.

Thanks for the help, and feel free to ask questions.

Edward

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to