Getting MiKTeX
MiKTeX is available for selected operating systems.
Please check the prerequisites in order to find out whether your system is supported.
If your system is not (yet) supported: it is not too difficult to build MiKTeX.
To install a basic TeX/LaTeX system on Windows, download and run this installer.
Please read the tutorial, if you want step-by-step guidance.
The portable edition allows you to run MiKTeX from a portable storage device.
Please read the tutorial, if you want step-by-step guidance.
Please note that there is no separate installer. Just download the standard installer and rename it to miktex-portable.exe
.
If you want to install MiKTeX on many client computers, then you should use the MiKTeX Setup Utility to deploy MiKTeX in your organization. You can read the deployment tutorial, if you want step-by-step guidance.
To set up a TeX/LaTeX system on macOS, download and open this disk image. Then drag the MiKTeX icon onto the Applications folder.
Please read the tutorial, if you want step-by-step guidance.
MiKTeX is available for selected Linux distributions.
Installing MiKTeX on Linux involves these steps:
-
Register the GPG key with which MiKTeX installation packages and metadata is signed.
The key ID is:
D6BC243565B2087BC3F897C9277A7293F59E4889
- Register the installation source which contains the MiKTeX installation package. The installation source depends on the Linux distribution version.
- Use the package management system to install MiKTeX.
- Finish the setup.
- Upgrade your TeX distribution. This is an optional step.
Please click a tab to get instructions for your Linux distribution:
a. Register GPG key
curl -fsSL https://miktex.org/download/key | sudo tee /usr/share/keyrings/miktex-keyring.asc > /dev/null
b. Register installation source
Ubuntu 24.04 LTS (Noble Numbat):
echo "deb [signed-by=/usr/share/keyrings/miktex-keyring.asc] https://miktex.org/download/ubuntu noble universe" | sudo tee /etc/apt/sources.list.d/miktex.list
Ubuntu 22.04 LTS (Jammy Jellyfish):
echo "deb [signed-by=/usr/share/keyrings/miktex-keyring.asc] https://miktex.org/download/ubuntu jammy universe" | sudo tee /etc/apt/sources.list.d/miktex.list
Ubuntu 20.04 LTS (Focal Fossa):
echo "deb [signed-by=/usr/share/keyrings/miktex-keyring.asc] https://miktex.org/download/ubuntu focal universe" | sudo tee /etc/apt/sources.list.d/miktex.list
c. Install MiKTeX
sudo apt-get update sudo apt-get install miktex
a. Register GPG key
curl -fsSL https://miktex.org/download/key | sudo tee /usr/share/keyrings/miktex-keyring.asc > /dev/null
b. Register installation source
Linux Mint 21:
echo "deb [signed-by=/usr/share/keyrings/miktex-keyring.asc] https://miktex.org/download/ubuntu jammy universe" | sudo tee /etc/apt/sources.list.d/miktex.list
Linux Mint 20:
echo "deb [signed-by=/usr/share/keyrings/miktex-keyring.asc] https://miktex.org/download/ubuntu focal universe" | sudo tee /etc/apt/sources.list.d/miktex.list
c. Install MiKTeX
sudo apt-get update sudo apt-get install miktex
a. Register GPG key
curl -fsSL https://miktex.org/download/key | sudo tee /usr/share/keyrings/miktex-keyring.asc > /dev/null
b. Register installation source
Debian 12 (Bookworm):
echo "deb [signed-by=/usr/share/keyrings/miktex-keyring.asc] https://miktex.org/download/debian bookworm universe" | sudo tee /etc/apt/sources.list.d/miktex.list
Debian 11 (Bullseye):
echo "deb [signed-by=/usr/share/keyrings/miktex-keyring.asc] https://miktex.org/download/debian bullseye universe" | sudo tee /etc/apt/sources.list.d/miktex.list
c. Install MiKTeX
sudo apt-get update sudo apt-get install miktex
a. Register GPG key
sudo rpm --import "https://miktex.org/download/key"
b. Register installation source
Fedora 40:
sudo curl -L -o /etc/yum.repos.d/miktex.repo https://miktex.org/download/fedora/40/miktex.repo
Fedora 39:
sudo curl -L -o /etc/yum.repos.d/miktex.repo https://miktex.org/download/fedora/39/miktex.repo
Fedora 38:
sudo curl -L -o /etc/yum.repos.d/miktex.repo https://miktex.org/download/fedora/38/miktex.repo
c. Install MiKTeX
sudo dnf update sudo dnf install miktex
a. Register GPG key
sudo rpm --import https://miktex.org/download/key
b. Register installation source
Rocky Linux 9:
sudo curl -L -o /etc/yum.repos.d/miktex.repo https://miktex.org/download/rockylinux/9/miktex.repo
c. Install MiKTeX
sudo dnf update sudo dnf install miktex
a. Register GPG key
sudo rpm --import https://miktex.org/download/key
b. Register installation source
openSUSE Leap 15:
sudo curl -L -o /etc/zypp/repos.d/miktex.repo https://miktex.org/download/opensuse/15/miktex.repo
c. Install MiKTeX
sudo zypper update sudo zypper install miktex
d. Finish the setup
Before you can use MiKTeX, you have to finish the setup. You can use MiKTeX Console or, if you prefer the command line, miktexsetup
.
Search&click the MiKTeX Console
icon to start MiKTeX Console:
Now is the time to make a decision:
Do you want to set up a private (for you only) TeX installation, or do you want to set up a shared (system-wide) TeX installation?
You probably want to choose the first option.
The second option makes sense if you are the administrator of a multi-user system. If this is the case and if you expect that some of your users would like to work with MiKTeX, then you should install MiKTeX system-wide.
Click one of the two buttons if you have made your decision.
Runmiktexsetup
to finish the setup
Run
miktexsetup finish
to finish with a private (for you only) TeX installation. Executables like lualatex
will be installed in ~/bin
.
Run
sudo miktexsetup --shared=yes finish
to finish with a shafred (system-wide) TeX installation. Executables like lualatex
will be installed in /usr/local/bin
.
You also may want to enable automatic package installation:
initexmf --set-config-value [MPM]AutoInstall=1
Or, if you have a shared installation:
sudo initexmf --admin --set-config-value [MPM]AutoInstall=1
e. Upgrade
If you have just installed MiKTeX, then you have the option to upgrade your installation to a standard TeX system. Just click the Upgrade
button. Please be aware that this starts a ~200MB download.
Alternatively, you can turn on the auto-install feature and let MiKTeX install missing packages on-the-fly. This will help you to keep your TeX installation as minimal as possible (“Just enough TeX”).
See also
FAQ: Is it possible to install MiKTeX and TeX Live side-by-side?
Docker image
The Docker image allows you to run MiKTeX on any computer that supports Docker.
Provided that your main input file is located in the current working directory, you can run pdflatex
as follows:
docker run -ti -v miktex:/var/lib/miktex -v `pwd`:/miktex/work -e MIKTEX_UID=`id -u` miktex/miktex:essential pdflatex main.tex
Please read the tutorial, if you want step-by-step guidance.
To install a basic TeX/LaTeX system on Windows, download and run this installer.
This installer allows you download all packages and install a complete TeX/LaTeX system on Windows.
The MiKTeX Setup Utility is used to download, install and uninstall MiKTeX using the command line. It is suitable for unattended setup tasks and can be regarded as the command line counterpart of the MiKTeX Setup Wizard.
To set up a TeX/LaTeX system on macOS, download and open this disk image. Then drag the MiKTeX icon onto the Applications folder.
Download MiKTeX source code if you want to incorporate MiKTeX into your own software product.