LyX/Cygwin 1.4.1
----------------

This package provides LyX version 1.4.1 built using Cygwin tools, such that
it is a Cygwin application that needs the Cygwin runtime environment.
Thus, a preliminary requirement is the installation of Cygwin. Before
installing LyX, you should install at least the following Cygwin packages
(and all other packages pulled in by dependencies):

aspell          grep          libintl1        python
coreutils       jbigkit       libintl2        sed
diffutils       jpeg          libpng          tar
gettext         libintl       libpng2

Other than the above, other packages are also needed, but you have the
option of installing native versions of them. The remaining packages
are: latex, imagemagick and ghostscript. For example, you could install
either the cygwin tetex packages or the native MikTeX one.
If you want to use the X11 version of LyX (see below), you will also
need the xorg-x11-* cygwin packages or some third party X-server.

You also need installing the fonts you find here:
ftp://ftp.lyx.org/pub/lyx/contrib/BaKoMa4LyX-1.1.zip

After you have done that, you will find instructions on how to install
LyX/Cygwin in the file INSTALL.txt.

This package contains two different flavors of LyX, one using the native
Qt/Win GUI and the other the Qt/X11 GUI. For each flavor there are two binaries:
a wrapper for launching LyX from the Windows GUI (it sets up a proper
environment for LyX and avoids having a CMD window open) and a real binary
for command line usage:

lyx-win.exe       Qt/Win, to be used from the Windows GUI
lyx-winbin.exe    Qt/Win, to be used from command line
lyx-x11.exe       Qt/X11, needs an X-server, to be used from the Windows GUI
lyx-x11bin.exe    Qt/X11, needs an X-server, to be used from the command line

When using the command line, you can also launch LyX by simply typing lyx, as
this is a symlink to lyx-winbin.exe (make sure that /usr/local/bin is in
your PATH). The wrapper program lyx-x11.exe takes care of launching the
X-server if it is not running.

For the X11 version you can use whatever X-server you prefer. However, the
configuration files are taylored for using the cygwin server XWin.
The only two files that you need tweaking to adapt them to another X-server
are /etc/lyxprofile and /usr/local/bin/startxserver.
In /etc/lyxprofile you should enter the name of the X-server as shown (when
it is running) by the command "ps -efW", whereas you should replace
/usr/local/bin/startxserver with an appropriate Bourne shell script. As it
is now, it tries to start the cygwin server XWin.

In /usr/local/share/lyx/etc/lyx.reg you will find registry entries for
associating a .lyx file to lyx-win.exe. Simply navigate to that dir using
the Windows explorer, select the file and choose "Join" or whatever is named
that entry in your locale. An easy way for opening an explorer window in the
right location when working in a cygwin shell, is using the command
"cygstart /usr/local/share/lyx/etc".


Caveats
-------

Under Tools->Preferences->Outputs->Paths you will find a checkbox labeled
"Use Cygwin-style paths". Its status (checked or unchecked) is determined
at configure time. If you use MikTeX you'll find that it is unchecked,
whereas if you use the cygwin tetex you'll find that it is checked.
Please, don't play with this checkbox if you don't know what you are
doing, or, better, simply don't play with it.

Currently, you will see win-style or cygwin-style paths in preferences
based on the checkbox status, but you should be aware that this has
also implications with the TeX engine that you use, so it is not simply
a cosmetic matter.

If I can convince the LyX developers, my plan is to make this checkbox
unrelated to the TeX engine, such as it really will be a box letting
you decide the kind of path style used by LyX. This means that, as regards
path styles (and path styles only), LyX could behave as a native win32 or
posix application.


Upgrading from LyX/Cygwin 1.4.0
-------------------------------

This should be straightforward and you need to do nothing. During the
upgrade, the file /etc/lyxprofile will not be replaced, as you may have
customized it. However, I modified it adding a new environment variable
which helps having menus correctly translated to your chosen language.
So I suggest that, after upgrading, you have a look at the new version,
located at /usr/local/share/lyx/etc/lyxprofile, in order to import the
new environment variable (OUTPUT_CHARSET) to your old version.


What's new
----------

These news are specific to the Cygwin version of LyX.

- Fixed a bug causing a crash when trying to preview a beamer document.
  The bug was not really tied to beamer, but it was triggering the crash.

- PATH prefix can now be entered in whatever style, posix or windows.

- lyxclient now works with the native Qt/Win GUI other than with Qt/X11.
  I had to patch the original Qt sources because they were crippled when
  building for the native graphics. Now LyX/Cygwin is really a few steps
  ahead of its native win32 counterpart ;-)


Known problems
--------------

- The lyxpipe doesn't work, yet. I am currently investigating the problem,
  but it seems related to the cygwin1.dll. May be newer dll versions will work.
  Issuing the command
      echo "LYXCMD:test:file-open" > /path/to/lyxpipe.in
  the file dialog opens, but then LyX hangs.


Disclaimer
----------

This package works for me but I cannot guarantee that it does for you, or
even that using it your computer will not blew in smoke ;-)

-- 
Enrico Forestieri, April 2006

