---
id: Installation
title: Installation
sidebar_position: 1
---

To start working with Melezh, you need to complete the installation process and then create and configure a project. This section describes the Melezh installation procedure for different environments. The installation method depends on your operating system and the availability of Docker or OneScript with OPM package manager:

## Docker (Recommended)

You can run Melezh in a Docker container using one of these methods:

+ Pull the image from GHCR and run the container:

```bash
    # Use -deb or -rpm for different distros
    # Use -ru or -en for language version
    # Replace 'latest' with specific version if needed
    # Change port in -p argument as needed
    
    docker pull ghcr.io/bayselonarrend/melezh:latest-deb-en
    docker run -d -p 1921:1921 --name melezh ghcr.io/bayselonarrend/melezh:latest-deb-en
```

+ Download the Dockerfile zip archive (`melezh-docker-ru.zip` or `melezh-docker-en.zip`) from GitHub releases. Extract the archive and run the appropriate setup script based on your operating system (`bat` for Windows or `sh` for Linux).

<hr/>

## Windows

On Windows, Melezh is installed as part of the `oint` setup - the main console application of the Open Integration Package. Simply download the `oint` installers (version 1.24.0 or higher) from the [OpenIntegrations](https://github.com/Bayselonarrend/OpenIntegrations) releases, and during installation, check the box when prompted about additional Melezh installation:

![Melezh](../../../../static/img/Docs/Melezh/en/1.png)

<hr/>

## Linux

For Linux systems, Melezh provides `.deb` and `.rpm` packages in its GitHub releases. Both package formats require the `oint` package as a dependency, which is available in corresponding formats from the [OpenIntegrations](https://github.com/Bayselonarrend/OpenIntegrations) repository releases.

:::warning
Melezh is compatible with any `oint` version above 1.24.0, but requires language version matching: both Melezh and OInt are available in two language variants (Russian and English) that cannot be mixed. The Russian version of Melezh can only be installed on top of the Russian OInt, and the English version requires the English OInt respectively.
:::

<br/><hr/>

## OneScript

Melezh and OInt are primarily distributed as packages for [OneScript](https://github.com/EvilBeaver/OneScript) and can be installed using the OPM package manager. The Russian version of the package can be installed from the cloud package hub using the following console command:

```bash
opm install melezh
```

This package includes dependencies for both OInt and OInt CLI - they will be installed automatically.

Alternatively, both English and Russian versions can be installed from local `.ospx` package files available in the releases of their respective repositories:
- [Melezh](https://github.com/Bayselonarrend/OpenIntegrations)
- [OpenIntegrations](https://github.com/Bayselonarrend/OpenIntegrations)

```bash
opm install -f oint-x.x.x_lang.ospx
opm install -f oint-cli-x.x.x_lang.ospx
opm install -f melezh-x.x.x_lang.ospx
```

As with Linux packages, it's crucial to maintain language version consistency: **Russian Melezh** requires **Russian OInt**, while **English Melezh** must be paired with **English OInt**.