From 90c3bb4dc0c455df131af548a15d4cf875a86708 Mon Sep 17 00:00:00 2001 From: Siep Kroonenberg Date: Sat, 29 Mar 2008 13:37:40 +0000 Subject: More edits BachoTeX paper, plus screenshot git-svn-id: svn://tug.org/texlive/trunk@7220 c570f23f-e606-0410-a88d-b1316a301751 --- Master/tlpkg/doc/install08gui.png | Bin 0 -> 37605 bytes Master/tlpkg/doc/tlinst-BT08.tex | 74 ++++++++++++++++++++++++++++---------- 2 files changed, 55 insertions(+), 19 deletions(-) create mode 100644 Master/tlpkg/doc/install08gui.png (limited to 'Master/tlpkg/doc') diff --git a/Master/tlpkg/doc/install08gui.png b/Master/tlpkg/doc/install08gui.png new file mode 100644 index 00000000000..44895895d96 Binary files /dev/null and b/Master/tlpkg/doc/install08gui.png differ diff --git a/Master/tlpkg/doc/tlinst-BT08.tex b/Master/tlpkg/doc/tlinst-BT08.tex index 4789924a1c2..ed65204c511 100644 --- a/Master/tlpkg/doc/tlinst-BT08.tex +++ b/Master/tlpkg/doc/tlinst-BT08.tex @@ -41,6 +41,15 @@ \newcommand{\tlu}{\texttt{texlua}} \newcommand{\kpse}{\texttt{kpathsea}} +% from l2tabuen: +\tolerance 1414 +\hbadness 1414 +\emergencystretch 1.5em +\hfuzz 0.3pt +%\widowpenalty -10000 +\vfuzz \hfuzz +%\raggedbottom + \hypersetup{pdftitle={A new installer for \tl}, pdfauthor={R. Kotucha, S. Kroonenberg, N. Preining}, @@ -101,7 +110,7 @@ \label{sec:intro} In this paper we introduce the new \tl\ installer. Its creation was -necessitated by the brand-new package infrastructure -- described +necessitated by the new package infrastructure, which is described elsewhere in these proceedings. However, there is more news, also from a user's point of view. In @@ -109,8 +118,9 @@ particular: \begin{itemize} \item It will be possible to install \tl\ from the internet. \item The Windows version is much more in line with Unix versions. -\item There is just one installer, which can run either in text mode - or in GUI mode. +\item There is just one installer, which can run either in text + mode, emulating the former install-tl.sh shell script, + or in GUI mode, emulating the former tlpmgui. \end{itemize} \section{\tlu} @@ -120,25 +130,27 @@ scripting language. When called as \tlu, it acts as a standalone Lua interpreter, customized for a \TeX{} environment. This is a very attractive scripting solution: \begin{itemize} -\item no discrepancies between versions: \tlu{} scripts should - simply match the \TeX{} version they are part of. -\item \tlu{} has \kpse\ compiled in. In a \tlu{} script the - location of a particular file can be determined very fast. +\item no version worries: \tlu{} scripts should simply match the + \TeX{} version they are part of. +\item \tlu{} has \kpse\ compiled in. In a \tlu{} script \kpse{} + file searching happens within the same process, which can speed + things up a lot. \item An embedded scripting language is immune from the kind of bloat suffered by popular scripting languages such as \pl{} and Ruby. \end{itemize} -Under Windows, |.texlua| files are made executable by the installer. +Under Windows, the |.texlua| extension is made an executable file +type. \section{Install \tl\ from the Internet}\label{texlua} It is now possible to install \tl\ from a remote server. Thanks to -the new infrastructure, the package database which is needed by the -installer in order to determine which packages have to be downloaded -and how to install them is a single file. +the new infrastructure, the package database which tells the +installer which packages have to be downloaded and how to install +them, is a single file. Two installers for network downloads are provided. |install-tl.tar.gz.| supports UNIX only. |install-tl.zip| -additionally contains a tiny subset of \pl\ for Windows which is +additionally contains a small subset of \pl\ for Windows which is required to bootstrap the system. The latter works on all platforms supported by \tl. The sole reason for providing a separate package for UNIX is its significantly smaller size. @@ -182,20 +194,44 @@ To prevent interference with any pre-existing \pl, we make it invisible to the system by not placing it on the searchpath and by not creating or changing any \pl-related settings. Instead, the \tl\ \pl\ scripts are called via wrapper scripts that know how to -find Perl and that create the necessary environment variables for -the hidden \pl{} for the duration of the job. In the case of the -installer itself, the wrapper is a simple batchfile (but not so -simple that it would have worked under earlier Windows -versions). But in most cases, the wrapper is written in \tlu; see -section \ref{texlua}. +find Perl and that create the environment variables it needs for the +duration of the job. In the case of the installer itself, the +wrapper is a simple batchfile (but not so simple that it would have +worked under earlier Windows versions). But in most cases, the +wrapper is written in \tlu; see section \ref{texlua}. + +Most likely, there won't be a Bourne-compatible shell either. But in +the new \tl, most shell scripts have been replaced by \pl- and +\tlu{} scripts, which also work under Windows. So we just about got +rid of \texttt{.exe} files replacing Unix scripts. \subsection{\gs} \tl{} for Windows also includes a hidden copy of \gs, another -fixture of Unix systems that is usually absent under Windows. The +fixture of Unix systems that is usually absent from Windows. The most important batch files provided by \gs\ have been ported to \tlu{}, see \ref{texlua}. +\section{Testing with virtual machines} +We do much of our testing with virtual machines. With programs such +as VirtualBox or VMware you can run a guest operating system as a +program inside a host operating system. + +Even if host and guest are the same operating system, it is a huge +advantage that the host will be unaffected, and that the guest is +free from the idiosyncrasies of the host, which is after all your +own highly tuned private workstation. + +Normally, the filesystem of the guest is on a virtual disk, which is +a very large file on the host system. An installation can simply be +reverted by making a fresh copy from backup of this very large file. + +The guest can access the \tl{} files via e.g. a shared folder or +Samba, using a virtual network interface. An internet install can be +simulated with a webserver or ftp server on the host, also via a +virtual network interface. These server programs can simply use the +\tl{} working copy. + %\bibliographystyle{arstexnica} %\bibliography{atsample} -- cgit v1.2.3