# Установка компонентов

Для разработки необходимо установить среду разработки, JDK, `gsf-cli`, `sbt`, Git и дополнительные компоненты. Состав компонентов и порядок установки зависят от используемой операционной системы.

## Под Windows

Рабочее место под Windows настраивается с редактором исходного кода `IntelliJ IDEA Community Edition`.

### Необходимые компоненты

- [IntelliJ IDEA Community Edition](https://www.jetbrains.com/ru-ru/idea/download/#section=windows);
- [Scala Plugin](https://plugins.jetbrains.com/plugin/1347-scala);
- [Global ERP Toolkit](https://help.globalerp.ru/books/G3ScalaEditionPlugin/SNAPSHOT/html/020_%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0.html).

### Установка

1. Установите `IntelliJ IDEA Community Edition`.
2. Установите в `IntelliJ IDEA` плагин **Scala**.
3. Установите плагин `Global ERP Toolkit`. Подробнее см. в инструкции по [установке плагина Global ERP Toolkit](https://help.globalerp.ru/books/G3ScalaEditionPlugin/SNAPSHOT/html/020_%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0.html).
4. Перезапустите `IntelliJ IDEA` и на главной странице перейдите на вкладку **Global Framework**.
5. Установите JDK 21 и JDK 8.
6. Установите шаблоны `IntelliJ IDEA` (`.idea`-файлы).
7. Установите `gsf-cli` в директорию `C:\programs\gsf-cli`.
8. Установите `sbt` версии 1.10.7 в директорию `C:\programs\sbt`.
9. Установите `Git`.
10. Установите дополнительные инструменты.

```{note}
Компоненты `Idea files`, `gsf-cli`, `sbt` и `Git` можно установить автоматически через `IntelliJ IDEA`. Подробнее см. в инструкции по [автоматической установке файлов](https://help.globalerp.ru/books/G3ScalaEditionPlugin/SNAPSHOT/html/030_%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2.html#).
```

## Под Astra Linux

Рабочее место под Astra Linux настраивается с редактором исходного кода `GigaIDE`.

### Необходимые компоненты

- [Astra Linux](https://astra.ru/software-services/os/astra-linux-se/);
- [GigaIDE 2024.3](https://gitverse.ru/services/gigaide);
- [Global-ERP-Toolkit-GigaIde](https://repo.global-system.ru/ui/native/common/ru/bitec/Global-ERP-Toolkit-GigaIde/);
- [GSF-CLI for Linux](https://repo.global-system.ru/artifactory/common/ru/bitec/gsf-cli-linux/SNAPSHOT/gsf-cli-linux-SNAPSHOT.zip);
- [JDK 21](https://github.com/bell-sw/Liberica/releases/download/21.0.7%2B9/bellsoft-jdk21.0.7+9-windows-amd64-full.msi);
- Система сборки:
  - [SBT 1.10.7](https://www.scala-sbt.org/download) Если планируете использовать SBT;
  - [Bazelisk](https://github.com/bazelbuild/bazelisk/releases) Если планируете использовать Bazel.

### Установка

1. Установите `Astra Linux`.
2. Обновите компоненты системы и установите `Git`. Для этого выполните в терминале следующие команды:

    ```console
    su -
    apt-get update
    apt-get install git
    ```

3. Создайте папку `Global` в домашней директории пользователя.
4. В созданной директории создайте поддиректорию `GigaIDE` и распакуйте в нее дистрибутив `GigaIDE`.
5. В директории из пункта 3 создайте поддиректорию `gsf-cli` и распакуйте в нее дистрибутив `GSF-CLI`.
6. Подготовка системы сборки:
    - SBT: В директорию из пункта 3 создайте поддиректорию `sbt` и распакуйте в неё дистрибутив SBT версии 1.10.7.
    - Bazel: Установите Bazelisk из официального репозитория:
      ```
      wget https://github.com/bazelbuild/bazelisk/releases/latest/download/bazelisk-linux-arm64
      chmod +x bazelisk-linux-arm64
      sudo mv bazelisk-linux-arm64 /usr/local/bin/bazelisk
      ```

7. Установите дистрибутив `JDK 21` для Linux по ссылке выше.
8. Чтобы Git не запрашивал пароль при каждом обращении, выполните следующую команду и перезапустите терминал:

    ```console
    git config --global credential.helper store
    ```

9. Запустите `GigaIDE` и установите плагин `Global-ERP-Toolkit-GigaIde`.

   Исполняемый файл для запуска `GigaIDE` расположен по пути:

    ```text
    /home/name_user/Global/gigaide-CE-242.21829.142.2/bin/idea
    ```

10. Перезапустите `GigaIDE` и на главной странице перейдите на вкладку **Global Framework**.
11. Установите шаблоны: в пункте **idea files** нажмите кнопку **Применить** и закройте `GigaIDE`.
12. Установите необходимые зависимости:

    - раскомментируйте строки с репозиториями в файле `/etc/apt/sources.list`;
    - выполните в терминале команды:

        ```console
        sudo apt update
        sudo apt install python3.11-venv
        ```

    - запустите скрипт, расположенный по пути `gsf-cli/bin/initenv.sh`.

## Под Alt Linux

Рабочее место под Alt Linux настраивается с редактором исходного кода `GigaIDE`.

### Необходимые компоненты

- [Alt Linux Workstation 10](https://www.altlinux.org/%D0%90%D0%BB%D1%8C%D1%82_%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B0%D1%8F_%D1%81%D1%82%D0%B0%D0%BD%D1%86%D0%B8%D1%8F_10);
- [GigaIDE 2024.2](https://gitverse.ru/services/gigaide);
- [GSF-CLI for Linux](https://repo.global-system.ru/artifactory/common/ru/bitec/gsf-cli-linux/SNAPSHOT/gsf-cli-linux-SNAPSHOT.zip);
- [JDK 21](https://github.com/bell-sw/Liberica/releases/download/21.0.7%2B9/bellsoft-jdk21.0.7+9-windows-amd64-full.msi);
- Система сборки:
    - [SBT 1.10.7](https://www.scala-sbt.org/download) Если планируете использовать SBT;
    - [Bazelisk](https://github.com/bazelbuild/bazelisk/releases) Если планируете использовать Bazel.

### Установка

1. Установите `Alt Linux`.
2. Обновите компоненты системы и установите необходимые инструменты. Для этого выполните в терминале следующие команды:

    ```console
    su -
    apt-get update
    apt-get install git
    apt-get install subversion
    apt-get install python
    apt-get install pip
    ```

3. Создайте папку `Global` в домашней директории пользователя.
4. В директории из предыдущего пункта создайте поддиректорию `GigaIDE` и распакуйте в нее дистрибутив `GigaIDE`.
5. В директории из пункта 3 создайте поддиректорию `gsf-cli` и распакуйте в нее дистрибутив `GSF-CLI`.
6. В директории `gsf-cli` создайте папку `python`, затем выполните команды:

    ```console
    python3 -m venv /home/admin/global/gsf-cli/python
    source /home/admin/global/gsf-cli/python/bin/activate
    pip3 install -r /home/admin/global/gsf-cli/requirements.txt
    ```

    ```{attention}
    Вместо пути `/home/admin/global` укажите путь к вашей папке `global`.
    ```

7. Подготовка системы сборки:
    - SBT: В директорию из пункта 3 создайте поддиректорию `sbt` и распакуйте в неё дистрибутив SBT версии 1.10.7.
    - Bazel: Установите Bazelisk из официального репозитория:
      ```
      wget https://github.com/bazelbuild/bazelisk/releases/latest/download/bazelisk-linux-arm64
      chmod +x bazelisk-linux-arm64
      sudo mv bazelisk-linux-arm64 /usr/local/bin/bazelisk
      ```

8. Установите дистрибутив `JDK 21` для Linux по ссылке выше. Для распаковки архива выполните команды:

    ```console
    su -
    tar -zxvf {имя_архива_JDK} -C /usr/lib/jvm/
    ```

9. Чтобы Git не запрашивал пароль при каждом обращении, выполните следующую команду и перезапустите терминал:

    ```console
    git config --global credential.helper store
    ```

10. Установите плагин `GlobalERP Tool Kit` для `GigaIDE`.