Difference between revisions of "Installation"

From Wiki
Jump to navigation Jump to search
 
(92 intermediate revisions by 8 users not shown)
Line 1: Line 1:
__NOTOC__
 
Since April 2019, there is a new implementation of ConTeXt, named '''ConTeXt [[LMTX]]'''. It is tuned for LuaMetaTeX, the lean and mean successor of LuaTeX TeX engine (see [https://tug.org/TUGboat/tb40-1/tb124hagen-lmtx.pdf article]).
 
 
 
= Download =
 
= Download =
 
   
 
   
Line 8: Line 5:
 
<li>
 
<li>
 
===  Windows ===
 
===  Windows ===
* X86 [http://lmtx.pragma-ade.nl/install-lmtx/context-mswin.zip 32bits]
+
* X86 [https://lmtx.pragma-ade.com/install-lmtx/context-mswin.zip 32bits]
* X86 [http://lmtx.pragma-ade.nl/install-lmtx/context-win64.zip 64bits]
+
* X86 [https://lmtx.pragma-ade.com/install-lmtx/context-win64.zip 64bits]
* ARM [http://lmtx.pragma-ade.nl/install-lmtx/context-windows-arm64.zip 64bits]
+
* ARM [https://lmtx.pragma-ade.com/install-lmtx/context-windows-arm64.zip 64bits]
 
</li>
 
</li>
  
 
<li>
 
<li>
  
=== MacOS ===
+
=== macOS ===
* X86 [http://lmtx.pragma-ade.nl/install-lmtx/context-osx-64.zip 64bits]
+
* X86 [https://lmtx.pragma-ade.com/install-lmtx/context-osx-64.zip 64bits]
* ARM [http://lmtx.pragma-ade.nl/install-lmtx/context-osx-arm64.zip 64bits]
+
* ARM [https://lmtx.pragma-ade.com/install-lmtx/context-osx-arm64.zip 64bits]
 
</li>
 
</li>
  
Line 23: Line 20:
  
 
=== GNU/Linux ===
 
=== GNU/Linux ===
* X86 [http://lmtx.pragma-ade.nl/install-lmtx/context-linux.zip 32b]|[http://lmtx.pragma-ade.nl/install-lmtx/context-linux-64.zip 64b]
+
* X86 [https://lmtx.pragma-ade.com/install-lmtx/context-linux.zip 32bits]
* ARM [http://lmtx.pragma-ade.nl/install-lmtx/context-linux-armhf.zip 32b]|[http://lmtx.pragma-ade.nl/install-lmtx/context-linux-aarch64.zip 64b]
+
* X86 [https://lmtx.pragma-ade.com/install-lmtx/context-linux-64.zip 64bits]
* Musl [http://lmtx.pragma-ade.nl/install-lmtx/context-linuxmusl.zip 64b]
+
* ARM [https://lmtx.pragma-ade.com/install-lmtx/context-linux-aarch64.zip 64bits]
 +
* Musl [https://lmtx.pragma-ade.nl/install-lmtx/context-linuxmusl-64.zip 64bits]
 
</li>
 
</li>
  
Line 32: Line 30:
  
 
=== FreeBSD ===
 
=== FreeBSD ===
* [http://lmtx.pragma-ade.nl/install-lmtx/context-freebsd.zip 32bits]
+
* 14.0 [https://lmtx.pragma-ade.com/install-lmtx/context-freebsd-amd64.zip 64bits]
* [http://lmtx.pragma-ade.nl/install-lmtx/context-freebsd-amd64.zip 64bits]
 
 
</li>
 
</li>
  
 
<li>
 
<li>
  
=== OpenBSD6.7 ===
+
=== OpenBSD ===
* [http://lmtx.pragma-ade.nl/install-lmtx/context-openbsd6.7.zip 32bits]
+
* 7.4 [https://lmtx.pragma-ade.nl/install-lmtx/context-openbsd-amd64.zip 64bits]
* [http://lmtx.pragma-ade.nl/install-lmtx/context-openbsd6.7-amd64.zip 64bits]
 
 
 
<li>
 
 
 
=== OpenBSD6.8 ===
 
* [http://lmtx.pragma-ade.nl/install-lmtx/context-openbsd6.8.zip 32bits]
 
* [http://lmtx.pragma-ade.nl/install-lmtx/context-openbsd6.8-amd64.zip 64bits]
 
 
</li>
 
</li>
 
</ul>
 
</ul>
Line 61: Line 51:
 
= Installation =
 
= Installation =
  
# Create a download directory (e.g., downloads/context)
+
The general steps to install ConTeXt LMTX are as follows:
# Download the relevant archive for your platform into the download directory (see above)
+
 
#* For example, 64-bit Linux:
+
# Create a directory for ConTeXt.
#*# <code>cd downloads/context</code>
+
# Download the platform-specific archive file into the ConTeXt directory.
#*# <code>wget http://lmtx.pragma-ade.nl/install-lmtx/context-linux-64.zip</code>
+
# Unpack the archive.
# Unpack the archive, some files will appear
+
# Execute the install program, which downloads the distribution.
#* UNIX/MAC: <code>unzip context-linux-64.zip</code>
+
# Update the PATH environment variable.
# Execute the install program, which will take care of downloading the distribution:
+
# Generate cache
#* WINDOWS: <code>install.bat</code>
+
# Optionally, delete the archive file.
#* UNIX/MAC: <code>sh install.sh</code>
+
 
# Add ConTeXt to your system PATH:
+
See the next sections for instructions specific to various platforms.
#* WINDOWS:
+
 
#** run <code>setpath.bat</code>
+
== GNU/Linux ==
#* UNIX: use the PATH instructions provided at the end of <code>install.sh</code> with:
+
 
#** Bash shell <code>echo 'export PATH=...thepathinstructions...:$PATH'  >> ~/.bashrc</code>
+
The steps in this section show how to download and install ConTeXt for a 64-bit Linux system. Change the archive file download link as needed for your target platform. Open a new terminal then run the following commands:
#** Zsh shell <code>echo 'export PATH=...thepathinstructions...:$PATH'  >> ~/.zshenv</code>
+
 
#** Sh/Ksh shell <code>echo 'export PATH=...thepathinstructions...:$PATH'  >> ~/.profile</code>
+
# <code>mkdir $HOME/context</code> and <code>cd $HOME/context</code>
#** Tcsh/csh shell <code>echo 'set path = ($path ...thepathinstructions...)' >> ~/.cshrc</code>
+
# <code>wget https://lmtx.pragma-ade.com/install-lmtx/context-linux-64.zip</code>
#* MAC:
+
# <code>unzip context-linux-64.zip</code>
#** Same as for UNIX. MacOS Catalina (10.15) defaults to `Zsh`, earlier versions defaulted to `Bash`
+
# <code>sh install.sh</code>
 +
# Update the PATH environment variable by using the path instructions displayed when the install program finishes. The instructions will vary depending on the type of shell being used:
 +
#* <kbd>'''Bash:   '''</kbd> <code>echo 'export PATH=...instructions...:$PATH'  >> ~/.bashrc</code>
 +
#* <kbd>'''Zsh:    '''</kbd> <code>echo 'export PATH=...instructions...:$PATH'  >> ~/.zshenv</code>
 +
#* <kbd>'''Sh/Ksh:  '''</kbd> <code>echo 'export PATH=...instructions...:$PATH'  >> ~/.profile</code>
 +
#* <kbd>'''Tcsh/csh:'''</kbd> <code>echo 'set path = ($path ...instructions...)' >> ~/.cshrc</code>
 +
#* For example, if ConTeXt was downloaded into `$HOME/context` on a system running bash, then the following line would update the PATH environment variable: <code>echo 'export PATH=$HOME/context/tex/texmf-linux-64/bin:$PATH' >> ~/.bashrc</code>
 +
# Then generate the cache with <code>mtxrun --generate</code>.
 +
# <code>rm context-linux-64.zip</code>
 +
 
 +
== macOS ==
 +
 
 +
The instructions for MacOS are the same as for Unix, but note that:
 +
 
 +
* MacOS versions from Catalina (10.15) and newer use '''Zsh''' by default.
 +
* MacOS versions before Catalina use '''Bash''' by default.
 +
* You might need to de-quarantine the binaries (and sometimes every created PDF):
 +
** <code>sudo xattr -r -d com.apple.quarantine bin/mtxrun</code>
 +
** <code>sudo xattr -r -d com.apple.quarantine tex/texmf-osx-64/bin/*</code>
 +
 
 +
== Windows ==
 +
 
 +
Complete the following steps to set up ConTeXt on Windows:
 +
 
 +
# Create a directory for ConTeXt, such as <code>C:\context</code>.
 +
# Download the architecture-specific version into the ConTeXt directory.
 +
# Extract the archive.
 +
# Run: <code>install.bat</code>
 +
# Run: <code>setpath.bat</code>
 +
# Then generate the cache with the command <code>mtxrun --generate</code> in a command prompt.
 +
# Delete the file archive file context-*win*.zip.
 +
 
 +
= Check the installation =
 +
 
 +
Make sure that ConTeXt is installed on your system. To check that, go to the command prompt and type
 +
 
 +
  context --version
 +
 
 +
You should get an output as follows:
 +
 
 +
  mtx-context    | ConTeXt Process Management 1.06
 +
  mtx-context    |
 +
  mtx-context    | main context file: /home/myuser/context/tex/texmf-context/tex/context/base/mkiv/context.mkiv
 +
  mtx-context    | current version: 2024.04.01 08:59
 +
  mtx-context    | main context file: /home/myuser/context/tex/texmf-context/tex/context/base/mkxl/context.mkxl
 +
  mtx-context    | current version: 2024.04.01 08:59
 +
 
 +
= Upgrade =
 +
 
 +
Re-run the install program to upgrade, which will update the distribution incrementally:
 +
 
 +
* Windows: <code>install.bat</code>
 +
* GNU/Linux or macOS: <code>sh install.sh</code>
 +
 
 +
= First document =
 +
 
 +
== Creation of a first ConTeXt file ==
 +
 +
Open a [[Text Editors|text editor]], type the following content, and save the file as <code>doc01.tex</code>:
 +
 
 +
<texcode>
 +
\setuppapersize[A6]
 +
\starttext
 +
\startsection[title={Testing ConTeXt}]
 +
This is my first ConTeXt document.
 +
\stopsection
 +
\stoptext
 +
</texcode>
 +
 
 +
== Compilation of the ConTeXt file to PDF file ==
 +
 
 +
Go to the command-line and type:
 +
 
 +
<pre>context doc01</pre>
  
= First Run ! =
+
ConTeXt will then process your document, display some logging information on the console, and generate a <tt>doc01.pdf</tt> output file.
  
* Download the tex input file [[Media:Hello-world.tex|Hello-World.tex]] from our [[Detailed_Example|Detailed example]]
+
<pre><nowiki>
* Run <code>context Hello-world.tex</code> in your shell
+
resolvers      | formats | executing runner 'run luametatex format': /home/myuser/context/tex/texmf-linux-64/bin/luametatex --jobname="./doc01.tex" --socket --shell-escape --fmt=/home/myuser/context/tex/texmf-cache/luametatex-cache/context/5fe67e0bfe781ce0dde776fb1556f32e/formats/luametatex/cont-en.fmt --lua=/home/myuser/context/tex/texmf-cache/luametatex-cache/context/5fe67e0bfe781ce0dde776fb1556f32e/formats/luametatex/cont-en.lui  --c:currentrun=1 --c:fulljobname="./doc01.tex" --c:input="./doc01.tex" --c:kindofrun=1 --c:maxnofruns=9 --c:texmfbinpath="/home/myuser/context/tex/texmf-linux-64/bin"
* Check the pdf output <code>Hello-world.pdf</code>.
+
system          >  
 +
system          > ConTeXt  ver: 2024.04.01 08:59 LMTX  fmt: 2024.4.13  int: english/english
 +
system          >  
  
You can also follow our two steps tutorial:
+
* [[First Document| Your 1st document]]
 
* and a more [[Detailed Example|Detailed example]]
 
  
Moreover, a page is used to centralized [[Sample documents]].
+
mkiv lua stats  > used engine: luametatex version: 2.11.02, functionality level: 20240311, format id: 700, compiler: gcc
 +
mkiv lua stats  > tex properties: 807100 hash slots used of 2097152, 51019 control sequences, approximate memory usage: 42 MB
 +
mkiv lua stats  > lua properties: engine: lua 5.5, used memory: 57 MB, ctx: 54 MB, max: 54 MB, symbol mask: utf (τεχ)
 +
mkiv lua stats  > runtime: 0.617 seconds, 1 processed pages, 1 shipped pages, 1.620 pages/second
 +
system          | total runtime: 1.989 seconds of 2.052 seconds
 +
</nowiki></pre>
  
= Easy update =
+
== Viewing the generated PDF file ==
  
For an update, just replay the install program: it also take care of updating the distribution incrementally:
+
Open the generated <tt>doc01.pdf</tt> PDF file using a [http://en.wikipedia.org/wiki/List_of_PDF_software#Viewers PDF viewer]. It should look as follows:
* WINDOWS: <code>install.bat</code>
 
* UNIX: <code>sh install.sh</code>
 
  
= Running MkIV =
+
<context force="yes">
 +
\setuppapersize[A6]
 +
\starttext
 +
\startsection[title={Testing ConTeXt}]
 +
This is my first ConTeXt document.
 +
\stopsection
 +
\stoptext
 +
</context>
  
The new distribution still has all the files to run the previous version of ConTeXt.
+
Note that the section has been numbered, the section number and the section title appear in a slightly larger fonts.
* Run <code>context --luatex Hello-world.tex</code> in your shell to revert back to the `luatex` binary and [[MkIV]].
 
  
= Further installation instructions =
+
Your installation is now up and running: you can start working on the [[Tutorials]].
  
 +
= Additional instructions =
  
 
* [[Installing ConTeXt LMTX on MacOS]]
 
* [[Installing ConTeXt LMTX on MacOS]]
 
* [[Modules#ConTeXt_LMTX|Installing Modules for ConTeXt LMTX]]
 
* [[Modules#ConTeXt_LMTX|Installing Modules for ConTeXt LMTX]]
* The official page '''[http://www.pragma-ade.com/install.htm Installing CONTEXT LMTX ]''' is hosted by Pragma-Ade.
+
* The official page '''[http://www.pragma-ade.nl/install.htm Installing ConTeXt LMTX ]''' is hosted by Pragma ADE.
* Pragma-Ade also provides the '''[http://www.pragma-ade.com/download-1.htm CONTEXT MKIV distribution]''' (MKIV version is LMTX predecessor) for which there is also [[ConTeXt_Standalone|detailed Installation instructions]].
+
* Pragma ADE also provides the '''[http://www.pragma-ade.nl/download-1.htm ConTeXt MkIV distribution]''' (version MkIV is the predecessor of LMTX) for which there are also [[ConTeXt_Standalone|detailed installation instructions]].
 
+
* Compilation with ConTeXt MkIV (old LuaTeX-based version): The new distribution has all the files to run the previous version of ConTeXt.
 
+
** <code>context --luatex doc01</code>
----
 
  
{{Installation navbox}}
 
  
 
[[Category:Basics]]
 
[[Category:Basics]]
 
[[Category:Installation]]
 
[[Category:Installation]]

Latest revision as of 19:23, 14 April 2024

Download


You can read the licence (Creative Commons GNU GPL for program code, and Creative Commons Attribution ShareAlike for documentation).

Installation

The general steps to install ConTeXt LMTX are as follows:

  1. Create a directory for ConTeXt.
  2. Download the platform-specific archive file into the ConTeXt directory.
  3. Unpack the archive.
  4. Execute the install program, which downloads the distribution.
  5. Update the PATH environment variable.
  6. Generate cache
  7. Optionally, delete the archive file.

See the next sections for instructions specific to various platforms.

GNU/Linux

The steps in this section show how to download and install ConTeXt for a 64-bit Linux system. Change the archive file download link as needed for your target platform. Open a new terminal then run the following commands:

  1. mkdir $HOME/context and cd $HOME/context
  2. wget https://lmtx.pragma-ade.com/install-lmtx/context-linux-64.zip
  3. unzip context-linux-64.zip
  4. sh install.sh
  5. Update the PATH environment variable by using the path instructions displayed when the install program finishes. The instructions will vary depending on the type of shell being used:
    • Bash: echo 'export PATH=...instructions...:$PATH' >> ~/.bashrc
    • Zsh: echo 'export PATH=...instructions...:$PATH' >> ~/.zshenv
    • Sh/Ksh: echo 'export PATH=...instructions...:$PATH' >> ~/.profile
    • Tcsh/csh: echo 'set path = ($path ...instructions...)' >> ~/.cshrc
    • For example, if ConTeXt was downloaded into $HOME/context on a system running bash, then the following line would update the PATH environment variable: echo 'export PATH=$HOME/context/tex/texmf-linux-64/bin:$PATH' >> ~/.bashrc
  6. Then generate the cache with mtxrun --generate.
  7. rm context-linux-64.zip

macOS

The instructions for MacOS are the same as for Unix, but note that:

  • MacOS versions from Catalina (10.15) and newer use Zsh by default.
  • MacOS versions before Catalina use Bash by default.
  • You might need to de-quarantine the binaries (and sometimes every created PDF):
    • sudo xattr -r -d com.apple.quarantine bin/mtxrun
    • sudo xattr -r -d com.apple.quarantine tex/texmf-osx-64/bin/*

Windows

Complete the following steps to set up ConTeXt on Windows:

  1. Create a directory for ConTeXt, such as C:\context.
  2. Download the architecture-specific version into the ConTeXt directory.
  3. Extract the archive.
  4. Run: install.bat
  5. Run: setpath.bat
  6. Then generate the cache with the command mtxrun --generate in a command prompt.
  7. Delete the file archive file context-*win*.zip.

Check the installation

Make sure that ConTeXt is installed on your system. To check that, go to the command prompt and type

  context --version

You should get an output as follows:

  mtx-context     | ConTeXt Process Management 1.06
  mtx-context     |
  mtx-context     | main context file: /home/myuser/context/tex/texmf-context/tex/context/base/mkiv/context.mkiv
  mtx-context     | current version: 2024.04.01 08:59
  mtx-context     | main context file: /home/myuser/context/tex/texmf-context/tex/context/base/mkxl/context.mkxl
  mtx-context     | current version: 2024.04.01 08:59

Upgrade

Re-run the install program to upgrade, which will update the distribution incrementally:

  • Windows: install.bat
  • GNU/Linux or macOS: sh install.sh

First document

Creation of a first ConTeXt file

Open a text editor, type the following content, and save the file as doc01.tex:

\setuppapersize[A6]
\starttext
\startsection[title={Testing ConTeXt}]
This is my first ConTeXt document.
\stopsection
\stoptext

Compilation of the ConTeXt file to PDF file

Go to the command-line and type:

context doc01

ConTeXt will then process your document, display some logging information on the console, and generate a doc01.pdf output file.

resolvers       | formats | executing runner 'run luametatex format': /home/myuser/context/tex/texmf-linux-64/bin/luametatex --jobname="./doc01.tex" --socket --shell-escape --fmt=/home/myuser/context/tex/texmf-cache/luametatex-cache/context/5fe67e0bfe781ce0dde776fb1556f32e/formats/luametatex/cont-en.fmt --lua=/home/myuser/context/tex/texmf-cache/luametatex-cache/context/5fe67e0bfe781ce0dde776fb1556f32e/formats/luametatex/cont-en.lui  --c:currentrun=1 --c:fulljobname="./doc01.tex" --c:input="./doc01.tex" --c:kindofrun=1 --c:maxnofruns=9 --c:texmfbinpath="/home/myuser/context/tex/texmf-linux-64/bin"
system          > 
system          > ConTeXt  ver: 2024.04.01 08:59 LMTX  fmt: 2024.4.13  int: english/english
system          > 

…

mkiv lua stats  > used engine: luametatex version: 2.11.02, functionality level: 20240311, format id: 700, compiler: gcc
mkiv lua stats  > tex properties: 807100 hash slots used of 2097152, 51019 control sequences, approximate memory usage: 42 MB
mkiv lua stats  > lua properties: engine: lua 5.5, used memory: 57 MB, ctx: 54 MB, max: 54 MB, symbol mask: utf (τεχ)
mkiv lua stats  > runtime: 0.617 seconds, 1 processed pages, 1 shipped pages, 1.620 pages/second
system          | total runtime: 1.989 seconds of 2.052 seconds

Viewing the generated PDF file

Open the generated doc01.pdf PDF file using a PDF viewer. It should look as follows:

Note that the section has been numbered, the section number and the section title appear in a slightly larger fonts.

Your installation is now up and running: you can start working on the Tutorials.

Additional instructions