Difference between revisions of "Installation"

From Wiki
Jump to navigation Jump to search
 
(153 intermediate revisions by 9 users not shown)
Line 1: Line 1:
__NOTOC__
+
= Download =
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]).
 
 
 
= #1. Download =
 
 
   
 
   
<ul class="DownloadRework">
+
<ul id="DownloadRework">
  
<li class="DownloadRework" style="text-align:left;">
+
<li>
 
===  Windows ===
 
===  Windows ===
* [http://lmtx.pragma-ade.nl/install-lmtx/context-mswin.zip 32bits]
+
* X86 [https://lmtx.pragma-ade.com/install-lmtx/context-mswin.zip 32bits]
* [http://lmtx.pragma-ade.nl/install-lmtx/context-win64.zip 64bits]
+
* X86 [https://lmtx.pragma-ade.com/install-lmtx/context-win64.zip 64bits]
 +
* ARM [https://lmtx.pragma-ade.com/install-lmtx/context-windows-arm64.zip 64bits]
 
</li>
 
</li>
  
<li class="DownloadRework" style="text-align:left;">
+
<li>
=== MacOS ===
+
 
* [http://lmtx.pragma-ade.nl/install-lmtx/context-osx-64.zip 64bits]
+
=== macOS ===
 +
* X86 [https://lmtx.pragma-ade.com/install-lmtx/context-osx-64.zip 64bits]
 +
* ARM [https://lmtx.pragma-ade.com/install-lmtx/context-osx-arm64.zip 64bits]
 
</li>
 
</li>
  
<li class="DownloadRework" style="text-align:left;">
+
<li>
 +
 
 
=== 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]</li>
+
* 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]</li>
+
* X86 [https://lmtx.pragma-ade.com/install-lmtx/context-linux-64.zip 64bits]
 +
* 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>
  
  
<li class="DownloadRework" style="text-align:left;">
+
<li>
=== Free BSD ===
+
 
* [http://lmtx.pragma-ade.nl/install-lmtx/context-freebsd.zip 32bits] (untested)
+
=== FreeBSD ===
* [http://lmtx.pragma-ade.nl/install-lmtx/context-freebsd-amd64.zip 64bits]
+
* 14.0 [https://lmtx.pragma-ade.com/install-lmtx/context-freebsd-amd64.zip 64bits]
 
</li>
 
</li>
  
<li class="DownloadRework" style="text-align:left;">
+
<li>
=== OpenBSD6.5 ===
+
 
* [http://lmtx.pragma-ade.nl/install-lmtx/context-openbsd6.5.zip 32bits] (untested)
+
=== OpenBSD ===
* [http://lmtx.pragma-ade.nl/install-lmtx/context-openbsd6.5-amd64.zip 64bits]
+
* 7.4 [https://lmtx.pragma-ade.nl/install-lmtx/context-openbsd-amd64.zip 64bits]
 
</li>
 
</li>
 
<li class="DownloadRework" style="text-align:left;">
 
=== OpenBSD6.6 ===
 
* [http://lmtx.pragma-ade.nl/install-lmtx/context-openbsd6.6.zip 32bits] (untested)
 
* [http://lmtx.pragma-ade.nl/install-lmtx/context-openbsd6.6-amd64.zip 64bits]
 
 
</ul>
 
</ul>
 
</li>
 
</li>
Line 47: Line 45:
 
</li>
 
</li>
 
</ul>
 
</ul>
 +
  
 
You can [[Read Me| read the licence]] (Creative Commons GNU GPL for program code, and Creative Commons Attribution ShareAlike for documentation).
 
You can [[Read Me| read the licence]] (Creative Commons GNU GPL for program code, and Creative Commons Attribution ShareAlike for documentation).
  
= #2. Installation =
+
= Installation =
 +
 
 +
The general steps to install ConTeXt LMTX are as follows:
 +
 
 +
# Create a directory for ConTeXt.
 +
# Download the platform-specific archive file into the ConTeXt directory.
 +
# Unpack the archive.
 +
# Execute the install program, which downloads the distribution.
 +
# Update the PATH environment variable.
 +
# Generate cache
 +
# 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:
 +
 
 +
# <code>mkdir $HOME/context</code> and <code>cd $HOME/context</code>
 +
# <code>wget https://lmtx.pragma-ade.com/install-lmtx/context-linux-64.zip</code>
 +
# <code>unzip context-linux-64.zip</code>
 +
# <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:
  
# Create a directory for, e.g. data/context
+
  mtx-context    | ConTeXt Process Management 1.06
# Go there and download the relevant zip for your plateform (see aside)
+
  mtx-context     |
# Unpack the zip, some files will appear
+
  mtx-context    | main context file: /home/myuser/context/tex/texmf-context/tex/context/base/mkiv/context.mkiv
# Execute the install program, which will take care of downloading the distribution:
+
  mtx-context    | current version: 2024.04.01 08:59
#* WINDOWS: <code>install.bat</code>
+
  mtx-context    | main context file: /home/myuser/context/tex/texmf-context/tex/context/base/mkxl/context.mkxl
#* UNIX: <code>install.sh</code> (set the executable permissions)
+
  mtx-context    | current version: 2024.04.01 08:59
# Add ConTeXt to your system PATH :
 
#* WINDOWS: run <code>setpath.bat</code>
 
#* 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>
 
::: Sh/Ksh shell <code>echo 'export PATH=...thepathinstructions...:$PATH'  >> ~/.profile</code>
 
::: Tcsh/csh shell <code>echo 'set path = ($path ...thepathinstructions...)' >> ~/.cshrc</code>
 
  
 +
= Upgrade =
  
= #3. First Run ! =
+
Re-run the install program to upgrade, which will update the distribution incrementally:
  
* Download the tex input file [[Media:Hello-world.tex|Hello-World.tex]] from our [[Detailed_Example|Detailed example]]
+
* Windows: <code>install.bat</code>
* Run <code>context Hello-world.tex</code> in your shell
+
* GNU/Linux or macOS: <code>sh install.sh</code>
* Check the pdf output <code>Hello-world.pdf</code>.
 
  
You can also follow our two steps tutorial:
+
= First document =
* [[First Document| Your 1st document]]
 
* and a more [[Detailed Example|Detailed example]]
 
  
= #4. Easy update =
+
== 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>:
  
Just replay the install program, it also take care of updating the distribution:
+
<texcode>
* WINDOWS: <code>install.bat</code>
+
\setuppapersize[A6]
* UNIX: <code>install.sh</code> (set the executable permissions)
+
\starttext
 +
\startsection[title={Testing ConTeXt}]
 +
This is my first ConTeXt document.
 +
\stopsection
 +
\stoptext
 +
</texcode>
  
 +
== Compilation of the ConTeXt file to PDF file ==
  
= Official installation page =
+
Go to the command-line and type:
  
The official page '''[http://www.pragma-ade.com/install.htm Installing CONTEXT LMTX ]''' is hosted by Pragma-Ade, which also provides
+
<pre>context doc01</pre>
* a 2 pages '''[http://lmtx.pragma-ade.nl/install-lmtx/installation.pdf installation guide]''',
 
* a 1 page [http://distribution.contextgarden.net/current/context/experimental/doc/context/documents/general/leaflets/leaflet-context.pdf leaflet for ConTeXt LMTX]
 
* a 1 page [http://distribution.contextgarden.net/current/context/experimental/doc/context/documents/general/leaflets/leaflet-luametatex.pdf leaflet for LuaMetaTeX].
 
  
 +
ConTeXt will then process your document, display some logging information on the console, and generate a <tt>doc01.pdf</tt> output file.
  
= Further installation instructions =
+
<pre><nowiki>
 +
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          >
  
* [[Installing ConTeXt LMTX on MacOS]]
+
 +
 
 +
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>
 +
 
 +
== Viewing the generated PDF file ==
 +
 
 +
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:
 +
 
 +
<context force="yes">
 +
\setuppapersize[A6]
 +
\starttext
 +
\startsection[title={Testing ConTeXt}]
 +
This is my first ConTeXt document.
 +
\stopsection
 +
\stoptext
 +
</context>
 +
 
 +
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 =
  
{{Installation navbox}}
+
* [[Installing ConTeXt LMTX on MacOS]]
 +
* [[Modules#ConTeXt_LMTX|Installing Modules for ConTeXt LMTX]]
 +
* 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.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>
  
  
[[Category:Standalone]]
+
[[Category:Basics]]
 +
[[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