I am at the point where I'm screaming F**K OFF OPEN SOURCE DEVELOPERS WHY CAN'T YOU GET YOUR SH*T TOGETHER
I'm using Windows 8.1 and 10 on my machines. (8.1 because of this). My username on one machine is 'Márton', my given name.
I love LaTeX and have been using the MiKTeX distribution. But recently MiKTeX has been surprising me with new (and often breaking) bugs every week.
At the core of the issues are two things:
-
MiKTeX's package manager. It has the ability to download packages on the fly, so if you're compiling a document and it has
\usepackage{foobar}
in it, foobar.sty
(and all related documentation etc.) is automatically downloaded during compilation. There is also an updater tool that can update all installed packages and binaries.
What the package manager doesn't really provide is dependency on a certain version. So if, right now, I freshly install MiKTeX, and start compiling a certain document, it will crash and give me errors about 'undefined control sequence' or 'attempt to index a nil value' because the on-the-fly downloaded latest packages use primitives that are only available with a newer version of the binary I'm running.
Also it's getting more and more frequent that the package manager or updater leaves the system in an inconsistent state. For example it installs a new version of some package in some folder under AppData, but continues using a six years old outdated version in some other location. Once a package gets renamed, the updater doesn't find it, and you have to launch a different app, the Package Manager GUI, perform an operation called 'synchronize package database', then find and manually uninstall and reinstall the problematic package. This week the updater cr*pped out completely when trying to update some cache. Some weeks earlier, my latest and fully updated distribution didn't work because the latest stable versions of two interdependent packages were not compatible.
- Some of the binaries and tools don't correctly handle Windows paths so they try to access C:\Users\Márton, C:/Users/M├írton/ and other such nonexisting folders. Or they actually create them and put stuff there, then throw an error when trying to find it later. One of the offending components for some time was the logger, which is included in all tools so whatever it is I was doing, the first thing I would see was an error message from the logger.
So I went to a tex.stackexchange chatroom to express my frustration (and those are some very helpful and kind folks over there, believe me), and they recommended I try TeX Live, the other distribution. I went and installed it. Here's how the installer looks like:
Talk about UX. WTF is the "PATH setting in registry"? Also the window allows resizing, but the content does not resize, and only the vertical scrollbar appears. Now the first thing I notice during installation is that it takes several seconds for this window to minimize after I press the minimize button, even on this relatively powerful machine. Turns out it's written in Perl/Tk.
The first thing I do after installation is check out the supposedly neat GUI tools that came with it. No luck:
I installed it in D:\Program Files. It did not even give me a F*CKING WARNING that it will F*CKING fail if I dare install it to a path with spaces. Even though C:\Program Files is the F*CKING DEFAULT LOCATION for programs on windows.