The old Windows client installer scripts

The old Windows clientinstaller makes use of building blocks which are already present in the TeX Live installation, viz. the TeX Live Perl libraries and the built-in hidden Perl installation. It should work with the editions of TeX Live editions from 2011 until 2015. With the w32client.diff patchfile for the w32client perl script, contributed by Rainer Walke, it can be made to run under the 2016 edition.

The zipfile w32client.zip contains the following:

w32client
The client installer Perl script
w32client.bat
A batchfile running the above Perl script, using the private built-in Perl
w32unclient.vbs
The client uninstaller vbscript
README
Contains additional details.

All changes are made for the user, not for the workstation. This implies that in a roaming profile setup the configuration is available from any computer on the network, and that the user needs no particular rights on the workstation.

Customizations

Although it should work as-is, the file w32client offers some customization options:

Changes in the old client installer

You can also still download zipfiles for 2013 and for 2011 and for 2010 and for 2009.

Requirements of the network installation

The prototype script assumes a standard directory layout:

parent---YYYY
   |       |
   |       +---bin---win32
   |       +---texmf (not for 2013 or later)
   |       +---texmf-dist
   |       +---texmf-config
   |       +---texmf-var
   |       +---tlpkg
   |
   +---texmf-local

or

parent
   |
   +---bin---win32
   +---texmf (not for 2013 or later)
   +---texmf-dist
   +---texmf-config
   +---texmf-var
   +---tlpkg
   |
   +---texmf-local

The w32client scripts assume that they are in the root of the installation, i.e. in parent\YYYY or in parent if there is no year component.

Sticking to such default directory layouts minimizes configuration hassles: all files can be located relative to the binaries, without environment variables beyond the searchpath.

Bugs and caveats

UNC paths

The 2013 version of w32 client scripts mostly work from a UNC path. However, when double-clicking the batchfile you will get a warning such as

'\\server\share'
CMD.EXE was started with the above path as the current directory.
UNC paths are not supported.  Defaulting to Windows directory.

However, installation will proceed as intended. You can avoid this warning by providing a shortcut to w32client.bat which specifies a Start in: directory with a drive letter.

Search path

If a workstation already has a locally installed TeX and if its binaries are on the system path, then the locally installed TeX will be found first. This cannot be fixed by only changing the user path.

Even if the searchpath cannot be fixed generally, it can be fixed for individual shortcuts, by prepending its searchpath with the TeX Live binaries. E.g. the TeXworks shortcut will always find our TeX Live first. The installer also creates a shortcut for a command prompt with such a modified searchpath.

Local policies

Windows system administrators have a rich array of tools for restricting user's rights. Check whether everything works, not just for yourself, but also for the target group.

Dviout help

Dviout help may be inaccessible because of restrictive internet permissions. Users can copy TeX Live Root\tlpkg\dviout\dvioute.chm to their local harddisk and open this copy, or you can ask the sysadmin to do something about it.

Roaming

Windows does not include every piece of user configuration in the roaming profile. In particular, file associations are only stored on the workstation itself. Possible workarounds:

XeTeX font caches

If different clients have different fonts, you may consider letting users have individual font caches. See the README in the zipfile for details. Be aware that generating a font cache can be a time-consuming process. If you specify the generation of a per-user font cache while XeTeX is not installed, this action will be quietly skipped.

Copyright (C) 2011, 2012, 2013, 2014, 2015, 2016, 2017 Siep Kroonenberg
s i e p o _ at _ c y b e r c o m m _ dot _ n l

Last revised on June 11 2017