On 14/03/2010 07:04, Joost Verburg wrote:
Hi all,

Today I've looked at some of the upcoming features for LyX 2.0. It looks really impressive and I think it creates an opportunity to improve the Windows releases. Let me explain.

Currently in LyX 1.6, the language features are provided using Aspell/Aiksaurus, which is a bit of a dead end. With the introduction of Enchant/MyThes support

Forget about Enchant on Windows it brings in gtk dependency and we don't want to maintain that. I've specifically introduced libhunspell so that we can reuse OpenOffice and/or Firefox dictionaries. I have created an hunspell MSVC solution to generate a dll a while ago, I will send that to you privately. Or we can port that to CMake, more on that later.

we can start using OpenOffice dictionaries and thesaurus lists, which are much better and more up-to-date. We won't have to worry anymore about maintaining our own language packs. The OpenOffice language files can simply be installed in the LyX directory.

Or LyX could directly use those installed dictionaries if they are already installed. We should have this dictionaries detection in the NSIS script for initial installation and/or in the configure script (better). This way, we can just tell the user to install the firfox addon and run reconfigure again and voilà, no need to maintain this anymore :-)


Also, some time ago I figured out a way to create completely self-contained versions of ImageMagick and Ghostscript, which are in the LyX program directory and only used by LyX. They don't require any installation or registry keys to be set and therefore work reliably, independent of other applications and without administrator privileges. This has already been included in all recent installers I created.

Combining these two things, it's possible to create a very simple and portable LyX release. We could put all the binaries in a zip file and the user can extract this and immediately run LyX with all features. The only thing that needs to done manually is to run the installer for the LaTeX system and the Metafile to EPS Converter printer if desired. And there are the LaTeX classes bundled with LyX that would have to be copied to the MiKTeX directory.

Of course the user shouldn't have to do this manually; we can also build a normal installer. But the point is that the installer code would become much more simple. We could write a script that takes the zip file release and converts this into a nice NSIS installer. And if you need to quickly edit a LyX file on somebody else's computer, the zip file itself is also a nice addition.

For the alpha releases the zip file is probably enough. In the meanwhile we could work on the script that converts the zip to an installer. This would include a setting to either generate an installer with or without MikTeX included. Even the update installer that Uwe currently maintains manually could be automatically generated by comparing the new zip with the previous one and excluding unchanged files.

This script can be written from scratch with all the relevant people involved, so finally we would have a consistent way to release Windows binaries. This would allow any developer to generate the official builds and there would be only one set of official installers.

I'm just interested to hear your opinions.

That sounds very good. Additional point: except for Uwe, we all use CMake, not Scons; it's very easy to tell CMake to put compiled files in some common directories. Also CMake has NSIS integration when used with Cpack, which can also be used to generate zip files. So please it would be a good time to standardize Windows developper (and MAC too!) on CMake.

Abdel.

Reply via email to