Discussion:
LyX cannot compile any document after babel update
Uwe Stöhr
2014-06-12 23:00:29 UTC
Permalink
I noticed the last days on several PCs that LyX becomes unusable when one updates MikTeX. The reason
is that babel was heavily modified for TeXLive 2014. babel requires now to install a package
containing the *.ldf file for every language. Unfortunately one must have admin privileges to do
this if MiKTeX was once also installed as admin.

This is a major problem for LyX because it becomes unusable. For example at my work MikTeX was
installed as admin and also the updates are installed as admin while the normal PC user has of
course no admin privileges.

Moreover, also users without permanent Internet access will get problems. Take e.g. the case that
LyX was installed together with MiKTeX in an Internet Café. Then people go at home to use it - the
cannot download the missing ldf-files.

The way I see to avoid this is that I add the language package to a file that is called by the
chklatex.ltx files so that they will be instaled when LyX is reconfigured, hoping that that time the
Internet connection is still there.

Any thoughts?

regards Uwe
Jean-Marc Lasgouttes
2014-06-13 09:06:20 UTC
Permalink
Post by Uwe Stöhr
I noticed the last days on several PCs that LyX becomes unusable when
one updates MikTeX. The reason is that babel was heavily modified for
TeXLive 2014. babel requires now to install a package containing the
*.ldf file for every language. Unfortunately one must have admin
privileges to do this if MiKTeX was once also installed as admin.
This is a major problem for LyX because it becomes unusable. For example
at my work MikTeX was installed as admin and also the updates are
installed as admin while the normal PC user has of course no admin
privileges.
Well, LyX does not become "unusable", people have to update miktex when
they use a new language, which is not something one does every week.
It is not my fault if we depend on this "fantastic" feature instead of
installing the correct set of packages from start.

We have two solutions:

1/ continue our usual hackish/lazy method, and add 90 new entries
corresponding to ldf files in our chkconfig.ltx script. This will only
be a 50% increase to the 185 package we already check for no real reason
(OK, maybe LyX actually needs to check for 30). Yuck.

2/ or finally spend one hour reading about the miktex package manager.
From 10 minutes of googling, I would say that
a) If you are super-lazy, calling from the installer
mpm --install-some=my_list_of_packages
will install all the required packages in an ugly text interface.
It will not be worse than before, probably much faster, and we'll
stop polluting the rest of LyX because of miktex idiosyncrasies.

b) if you feel at last that enough is enough, use the miktex sdk via
nsis to show some kind of progress bar while installing the
packagies. This is probably not rocket science and would offer
your users the user interface they deserve.

Concerning solution 2/a), I want to highlight that your current
preferred solution looks like:
LyX Installer -> LyX -> LaTeX -> MikTex installer (one instance per file)
while the clean solution (probably 5 lines of code plus a list of
packages) would look like
LyX Installer -> MikTex installer (one instance)

Can you guess which one is faster? That would also avoid that the
installer has to launch LyX, which is a 100% bad thing.


So, what is your choice? Every time I do this kind of proposal, it looks
like my message falls into a black hole :)

JMrac
Richard Heck
2014-06-13 14:38:46 UTC
Permalink
Post by Jean-Marc Lasgouttes
Post by Uwe Stöhr
I noticed the last days on several PCs that LyX becomes unusable when
one updates MikTeX. The reason is that babel was heavily modified for
TeXLive 2014. babel requires now to install a package containing the
*.ldf file for every language. Unfortunately one must have admin
privileges to do this if MiKTeX was once also installed as admin.
This is a major problem for LyX because it becomes unusable. For example
at my work MikTeX was installed as admin and also the updates are
installed as admin while the normal PC user has of course no admin
privileges.
Well, LyX does not become "unusable", people have to update miktex
when they use a new language, which is not something one does every week.
It is not my fault if we depend on this "fantastic" feature instead of
installing the correct set of packages from start.
1/ continue our usual hackish/lazy method, and add 90 new entries
corresponding to ldf files in our chkconfig.ltx script. This will only
be a 50% increase to the 185 package we already check for no real
reason (OK, maybe LyX actually needs to check for 30). Yuck.
I'm particularly opposed to this, because it slows down installation and
reconfiguration on every platform, including those whose TeX
installations are not purposefully borked.

As far as I can see, this is a Windows installation issue, and it should
be handled that way. If Uwe wants to do it this way and add a bunch of
new entries to chkconfig.ltx, then he can do that, but it should not be
done in the main codebase, where it affects everyone, but only in the
packaging code.

That said, I agree that the other options would be much better.

Richard
aparsloe
2014-06-13 23:02:54 UTC
Permalink
Post by Jean-Marc Lasgouttes
So, what is your choice? Every time I do this kind of proposal, it
looks like my message falls into a black hole :)
JMrac
What did we do before we had black holes? They crop up everywhere these
days, discs of fragmented messages swirling around their (right-click?)
event horizons. Has no one any faith in Hawking radiation?

Andrew

Loading...