# Сизиф (Sisyphus)

<details>

<summary>Что такое репозиторий Сизиф / Sisyphus </summary>

#### Введение

[Sisyphus](https://www.altlinux.org/Sisyphus) (Сизиф) — это разрабатываемый [ALT Linux Team](https://www.altlinux.org/ALT_Linux_Team) проект, целью которого является развитие [репозитория свободного ПО](https://www.altlinux.org/%D0%A0%D0%B5%D0%BF%D0%BE%D0%B7%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%B9_%D0%A1%D0%9F%D0%9E) для удобной разработки на его основе дистрибутивов и других решений.

Проект Sisyphus включает следующие компоненты:

* собственно репозиторий ПО (rpm- и src.rpm-пакеты);
* инструментарий для подготовки и тестирования программных пакетов (hasher, gear, git; sisyphus\_check, qa-robot, repocop; etc);
* инструментарий обеспечения целостности репозитория (apt);
* инструментарий для разработки конечных решений и, в частности, дистрибутивов (mkimage, Alterator, Installer).

В настоящий момент Sisyphus доступен для архитектур x86, x86\_64, aarch64, armh, RISC-V, MIPS, Эльбрус (e2kv3, e2kv4) и ведется работа по портированию на другие платформы.

#### Назначение Sisyphus

Sisyphus прежде всего предназначен для использования в качестве основы для разработки продуктов/решений для конечных пользователей:

* разработка дистрибутивов общего назначения (например, ALT Server, ALT Workstation);
* разработка специализированных дистрибутивов (OEM решения, ALT СП, ИВК Кольчуга и другие);
* разработка дополнений к существующим дистрибутивам;
* разработка решений для использования на виртуальных машинах (например, шаблоны OpenVZ, docker и т.д.).

Пожалуй, самым распространённым вариантом на сегодня является создание [компанией «Базальт СПО»](https://www.altlinux.org/%D0%9A%D0%BE%D0%BC%D0%BF%D0%B0%D0%BD%D0%B8%D1%8F_%C2%AB%D0%91%D0%B0%D0%B7%D0%B0%D0%BB%D1%8C%D1%82_%D0%A1%D0%9F%D0%9E%C2%BB) линейки [дистрибутивов ALT ](https://www.altlinux.org/Releases).

#### Чем не является Sisyphus

Достаточно важно понимать, чем Sisyphus точно *не является*, чтобы по ошибке не создать себе больших проблем.

* Sisyphus *не является* самостоятельным дистрибутивом. Несмотря на наличие [регулярных сборок](https://www.altlinux.org/Regular).
* Sisyphus *не является* обновлениями для дистрибутивов. Для этого есть ~~*updates*~~ [*бранчи*](https://www.altlinux.org/Branches).
* Sisyphus *не является* дополнением к дистрибутивам. Для этого есть ~~*backports*~~ [*бранчи*](https://www.altlinux.org/Branches).
* Sisyphus *не является* стабильным решением для применения в mission critical задачах. Для этого есть [дистрибутивы](https://www.altlinux.org/Releases).

#### Кому и зачем нужен Sisyphus

Косвенные варианты пока не рассматриваем, но они тоже есть.

**Разработчикам решений на базе Linux**

Sisyphus можно использовать в качестве основы для создания собственных решений — репозиториев, дистрибутивов и т. д.

Используя Sisyphus, разработчик получает в своё распоряжение большую базу подготовленных и в достаточной мере протестированных пакетов и набор полезных инструментов (*hasher*, *gear*, *mkimage*, etc), существенно сокращающих время на создание готового решения.

Достаточно логичным вариантом оказывается участие таких разработчиков в ALT Linux Team, что позволяет более активно влиять на направление развития проекта Sisyphus и, как следствие, получающихся на его основе продуктов. Таким образом можно существенно сократить затраты (временные, финансовые, человеческие) на создание конечного решения.

**Продвинутым пользователям**

Если пользователь не входит в Team, то ему Sisyphus может быть полезен в следующих случаях:

* Можно взять отдельные пакеты, которые отсутствуют или устарели в дистрибутиве. Только сперва рекомендуется хорошо подумать, потом проверить отсутствие в backports, а уж потом брать (и то обычно лучше src.rpm, каковой и бэкпортить сборкой в бинарном окружении целевого дистрибутива).
* Можно почувствовать себя «в струе», на своей шкуре ощущая, как развивается свободный софт и какие новшества (включая грабли) светят в ближайших релизах :-)

#### Зачем участвовать в работе над Sisyphus

Участие в разработке Sisyphus дает возможность непосредственно влиять на вектор развития проекта и производных от него решений. Как следствие, возможность получить более качественный продукт и/или снизить затраты на разработку своих решений. Например, можно опубликовать сборку необходимого пакета и получить в ближайшем стабильном дистрибутиве этот пакет «из коробки».

#### Как разрабатывается Sisyphus

См. [основную страницу](https://www.altlinux.org/Sisyphus) и далее по разделам.

**Основные инструменты для подготовки пакетов**

* [rpm](https://www.altlinux.org/Rpm)
  * [rpm/AutoReq](https://www.altlinux.org/Rpm/AutoReq)
* [hasher](https://www.altlinux.org/Hasher)
* [git](https://www.altlinux.org/Git)
* [gear](https://www.altlinux.org/Gear)
* [etersoft-build-utils](https://www.altlinux.org/Etersoft-build-utils) — набор скриптов, автоматизирующий рутинные действия мантейнера
* [apt](https://www.altlinux.org/Apt) (apt-rpm)
* [sisyphus\_check](https://www.altlinux.org/Sisyphus_check)
* [repocop](https://www.altlinux.org/Repocop) — платформа для запуска интеграционных тестов над пакетами
* qa-robot
* [mkimage](https://www.altlinux.org/Mkimage)

**Нормативные документы (полиси)**

Чтобы обеспечить некоторую упорядоченность в развитии проекта, существует ряд [нормативных документов](https://www.altlinux.org/%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:%D0%9D%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D0%B5_%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B), регламентирующих различные (чаще технологические) аспекты разработки.

#### Как присоединиться к разработке Sisyphus

Для присоединения к разработке Sisyphus достаточно пройти процедуру [вступления в ALT Linux Team](https://www.altlinux.org/Join).

Процедура состоит из идентификации кандидата — регистрации GPG и ssh-ключей, и проверки уровня технической подготовки — тестового задания, обычно состоящего из сборки пакета по правилам Sisyphus.

Тестовое задание может варьироваться для разных кандидатов: желающих заниматься преимущественно поддержанием пакетов в репозитории, документированием, дизайном, тестированием и т. д.

#### Взаимосвязь Сизифа с другими сущностями

Так как Sisyphus является не [сферическим конём в вакууме](http://absurdopedia.wikia.com/wiki/Сферический_конь_в_вакууме), а прежде всего инструментарием, то должны быть связи между ним, его потребителями и конечными продуктами/решениями.

**Sisyphus и ALT Linux Team**

Разработкой проекта Sisyphus занимается независимая команда ALT Linux Team. Sisyphus является главным продуктом, создаваемым командой.

**Sisyphus и компания «Базальт СПО»‎**

‎Разработка Sisyphus происходит при заметной поддержке (технической, организационной и т. д.) со стороны компании «Базальт СПО»‎. Собственно, большая часть сотрудников компании также является участниками ALT Linux Team и занимается разработкой Sisyphus.

**Sisyphus и дистрибутивы ALT Linux**

Компания «Базальт СПО», среди прочего, выпускает дистрибутивы операционной системы Linux, которые создаются на основе стабильных срезов репозитория Sisyphus.

Процесс превращения нестабильного Сизифа в стабильный дистрибутив приблизительно описывается такой схемой:

Постоянно меняющийся Sisyphus  ⇒ [стабилизация Sisyphus](https://www.altlinux.org/Branches/Release)  ⇒ создание [стабильной ветки](https://www.altlinux.org/Branches)  ⇒ готовый дистрибутив (или линейка)

**Решения других разработчиков**

На базе Sisyphus построено некоторое количество публично доступных сторонних решений:

* Дистрибутив для терминальных серверов [ALT Linux Terminal](https://www.altlinux.org/LTSP);
* Решение для IP-АТС — [SeirosPBX](http://seiros.ru);
* Прошивка для маршрутизаторов — [RAD Linux](http://radlinux.org);
* Наверняка есть и другие

</details>

<figure><img src="/files/QrnqFcuZIZ9uuMkK0gVb" alt=""><figcaption></figcaption></figure>

{% embed url="<https://packages.altlinux.org/ru/sisyphus/>" %}

Создать кастомную иконку в GNOME

01\. Устанавливаем редактор меню Alacarte

```bash
epmi alacarte
```

02\. Создаём ссылку посредством браузера, например Yandex Browser

<figure><img src="/files/zBUnPcXMbWuo68WHVZSC" alt=""><figcaption></figcaption></figure>

Для стабильной платформы p11

```bash
yandex-browser-stable https://packages.altlinux.org/ru/p11/
```

Для Сизифа

```bash
yandex-browser-stable https://packages.altlinux.org/ru/sisyphus/
```

Добавляем кастомную иконку

{% file src="/files/BaNby5pYLikQCbx7lVad" %}

Проект иконки в Krita

{% file src="/files/YEozomzx1QbpSq9jKnyd" %}

Получаем на выходе:

<figure><img src="/files/4qqICGuvfHd9OiVDKZno" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://plafon.gitbook.io/alt-zero/repo/sisyphus.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
