На этой неделе в Calmira GNU/Linux-libre №5
Период с 12 по 18 декабря (прим. автора).
В ноябре и в начале декабря не было времени для работы над Calmira GNU/Linux-libre, но сейчас, вроде как, оно появилось, поэтому на этой неделе работа над системой продолжилась.
Как минимум, вернул в cport несколько функций: обновление системы портов и обновление ПО до новой версии. Рефакторинг cport ещё не закончен, в планах его завершить 30 числа.
Кроме того, идёт работа над автоматизированной системой сборки Calmira GNU/Linux-libre. Руками собирать всё ПО тяжко и долго, а эта система сборки значительно упростит и ускорит процесс.
Система написана на языке Rust и имеет модульную структуру. В случае, если требуется собрать дистрибутив с какой-либо нестандартной конфигурацией, пользователь пишет модуль с указаниями системе сборки и запускает её.
Система сборки будет выложена на GitLab позже, а пока можно рассказать о ещё одном проекте - об установщике. Он будет иметь псевдографический интерфейс [
#ThisWeekInCalmira
Период с 12 по 18 декабря (прим. автора).
В ноябре и в начале декабря не было времени для работы над Calmira GNU/Linux-libre, но сейчас, вроде как, оно появилось, поэтому на этой неделе работа над системой продолжилась.
Как минимум, вернул в cport несколько функций: обновление системы портов и обновление ПО до новой версии. Рефакторинг cport ещё не закончен, в планах его завершить 30 числа.
Кроме того, идёт работа над автоматизированной системой сборки Calmira GNU/Linux-libre. Руками собирать всё ПО тяжко и долго, а эта система сборки значительно упростит и ускорит процесс.
Система написана на языке Rust и имеет модульную структуру. В случае, если требуется собрать дистрибутив с какой-либо нестандартной конфигурацией, пользователь пишет модуль с указаниями системе сборки и запускает её.
Система сборки будет выложена на GitLab позже, а пока можно рассказать о ещё одном проекте - об установщике. Он будет иметь псевдографический интерфейс [
ncurses]. Написан также на Rust. Войдёт ли в состав Calmira v2.0? Не могу сказать. Возможно, что в окончательной версии он и будет, но в грядущих тестовых ждать его не стоит точно.#ThisWeekInCalmira
👍3
Пришло время подвести итоги 2022 года. Год, как обычно, - дерьмо. Из нетипичного - дерьмо особое, ядрёное. Хотя в 2022 мы сделали достаточно многое:
1. Дистрибутив теперь использует раздельную структуру директорий, где
2. Положили начало разработке автоматизированной системы сборки дистрибутива.
3. Перешли на использование ядра Linux-libre - в тестовых версиях уже присутствует это ядро, а стабильной 2.0 в планах поставлять обычное ядро Linux и Linux-libre.
4. Закончили работу над стандартом системы портов, написали
5. Начали собирать загрузочные ISO-образы системы.
1. Дистрибутив теперь использует раздельную структуру директорий, где
/{/bin,sbin,lib} не являются ссылками на соотв. директории в /usr.2. Положили начало разработке автоматизированной системы сборки дистрибутива.
3. Перешли на использование ядра Linux-libre - в тестовых версиях уже присутствует это ядро, а стабильной 2.0 в планах поставлять обычное ядро Linux и Linux-libre.
4. Закончили работу над стандартом системы портов, написали
cport для управления программным обеспечением в Calmira GNU/Linux-libre.5. Начали собирать загрузочные ISO-образы системы.
🔥4
Ну и начинаем с планов на 2023. Понятное дело, очень размыто и в общих чертах, но по крайней мере, чтобы знать, куда двигаться дальше, это может пригодиться.
1. Закончить систему сборки. Без неё работать над новыми версиями дистрибутива очень тяжко. Всё само по себе собирается медленно, да и железо у меня, откровенно говоря, говно [в россии же живём].
2. Написать установщик системы. В планах сделать два варианта установки: сборка из исходного кода и установка уже собранной системы. Всё это ложится на плечи установщика. В первом случае он просто дёрнет систему сборки, которая скомпилирует нужные пакеты, хранящиеся в образе, а во втором просто скопирует файлы системы из установочного iso-образа на диск.
3. Переход на OpenRC. Сейчас используется система инициализации SysVInit. Сказать, что она 666 лет как устарела - это не сказать ничего. Поэтому в 2022 году мы запускали голосование о выборе новой СИ. В итоге был выбран OpenRC.
4. Разделение системы на несколько пакетов:
1.
2.
3.
Информация об этих пакетах будет представлена позже.
5. Начало работы над механизмом сброса системы до заводских настроек.
6. Основная задача теперь - создание надёжной отказоустойчивой системы, поставка протестированного ПО в репозиториях и самой системе.
1. Закончить систему сборки. Без неё работать над новыми версиями дистрибутива очень тяжко. Всё само по себе собирается медленно, да и железо у меня, откровенно говоря, говно [в россии же живём].
2. Написать установщик системы. В планах сделать два варианта установки: сборка из исходного кода и установка уже собранной системы. Всё это ложится на плечи установщика. В первом случае он просто дёрнет систему сборки, которая скомпилирует нужные пакеты, хранящиеся в образе, а во втором просто скопирует файлы системы из установочного iso-образа на диск.
3. Переход на OpenRC. Сейчас используется система инициализации SysVInit. Сказать, что она 666 лет как устарела - это не сказать ничего. Поэтому в 2022 году мы запускали голосование о выборе новой СИ. В итоге был выбран OpenRC.
4. Разделение системы на несколько пакетов:
1.
CPL - базовый пакет, в составе которого входит только самое необходимое для работы системы ПО.2.
CDPL - пакет с базовым ПО для разработки (GCC, make, autotools, sed, etc.).3.
CGPL - пакет с графическим интерфейсом (Xorg, Wayland, Anomura).Информация об этих пакетах будет представлена позже.
5. Начало работы над механизмом сброса системы до заводских настроек.
6. Основная задача теперь - создание надёжной отказоустойчивой системы, поставка протестированного ПО в репозиториях и самой системе.
👏5
Начали работу над заполнением документации дистрибутива.
https://gitlab.com/calmiralinux/documentation
На данный момент там только один репозиторий - с HandBook, однако вскоре сюда переместятся и другие репы - с документацией по cport, системе сборки и пр. Документация как для разработчиков (описание принципа работы, API и т.д.), так и для обычных пользователей (использование, принцип работы).
https://gitlab.com/calmiralinux/documentation
На данный момент там только один репозиторий - с HandBook, однако вскоре сюда переместятся и другие репы - с документацией по cport, системе сборки и пр. Документация как для разработчиков (описание принципа работы, API и т.д.), так и для обычных пользователей (использование, принцип работы).
GitLab
Calmira GNU Linux-libre Documentation · GitLab
🔥5
С новым годом!
Повторюсь, что прошедший год не просто сложный, он дерьмовый. Однако он показал, кто является нормальным человеком, а кто не пойми кем. Показал, что такое честность и порядочность, смелость и справедливость, что такое насилие и террор, скрывающиеся под маской добра. Этот год, в каком-то смысле, расставил всё на свои места.
Хочу пожелать вам оставаться людьми в любой ситуации. Ну и чтобы самые главные желания сбывались :)
Повторюсь, что прошедший год не просто сложный, он дерьмовый. Однако он показал, кто является нормальным человеком, а кто не пойми кем. Показал, что такое честность и порядочность, смелость и справедливость, что такое насилие и террор, скрывающиеся под маской добра. Этот год, в каком-то смысле, расставил всё на свои места.
Хочу пожелать вам оставаться людьми в любой ситуации. Ну и чтобы самые главные желания сбывались :)
❤9
Продолжается работа над сборочными скриптами. На данный момент готовы скрипты для подготовки системы к сборке, а также скрипты для сборки кросс-компилятора и временного инструментария. Сейчас это всё тестируется.
В том случае, если тестирование системы сборки и скриптов завершится успешно, начнём писать скрипты для Core-редакции (и когда уже переход на OpenRC?). А там и до четвёртого экспериментального билда Calmira 2.0 GNU/Linux-libre недалеко.
В том случае, если тестирование системы сборки и скриптов завершится успешно, начнём писать скрипты для Core-редакции (и когда уже переход на OpenRC?). А там и до четвёртого экспериментального билда Calmira 2.0 GNU/Linux-libre недалеко.
🔥3
На этой неделе в Calmira GNU/Linux-libre №6
Период с 1 по 7 января (прим. автора).
Работа над дистрибутивом продолжается и в новогодние праздники - всё равно делать нечего. Работаем над системой сборки и новой программой в составе Calmira GNU/Linux-libre -
Предназначение программы
1. Отсутствие удобных средств настройки для Calmira.
2. То, что существует в загрузочных скриптах для SysVInit - это неудобно и, что самое главное - небезопасно. В конфигурационный файл с этими настройками можно записать всё, что угодно, а это, вкупе с тем, что скрипт для установки параметров консоли запускается от имени
3. При переходе на OpenRС всё равно бы потребовалось какое-то решение для установки параметров консоли.
В планах программа должна состоять из двух компонентов:
1.
2.
#ThisWeekInCalmira
Период с 1 по 7 января (прим. автора).
Работа над дистрибутивом продолжается и в новогодние праздники - всё равно делать нечего. Работаем над системой сборки и новой программой в составе Calmira GNU/Linux-libre -
vcsetup. Программа предназначена для настройки языка, шрифта и раскладки клавиатуры в консоли.Предназначение программы
1. Отсутствие удобных средств настройки для Calmira.
2. То, что существует в загрузочных скриптах для SysVInit - это неудобно и, что самое главное - небезопасно. В конфигурационный файл с этими настройками можно записать всё, что угодно, а это, вкупе с тем, что скрипт для установки параметров консоли запускается от имени
root, является серьёзной угрозой безопасности.3. При переходе на OpenRС всё равно бы потребовалось какое-то решение для установки параметров консоли.
В планах программа должна состоять из двух компонентов:
1.
vcsetup - интерактивная псевдографическая программа для настройки;2.
vcload - программа читает параметры из /etc/... и применяет их для всех пользователей системы при её загрузке.#ThisWeekInCalmira
❤1
На этой неделе в Calmira GNU/Linux-libre №7
Период с 8 по 14 января (прим. автора).
Новогодние праздники уже закончились, поэтому самое время работать над дистрибутивом в полную силу. Например, уже готова альфа версия программы
Кстати, занимаемся и сборочными инструкциями системы. На данный момент есть несколько проблем, которые постепенно будут исправляться. В конце этой недели должен выйти корректирующий билд v2.0a1e3.1, улучшающий работу с работой сети. Вообще, сеть - это отдельная проблема в Calmira GNU/Linux-libre. И дело не только в использовании ядра, очищенного от несвободных драйверов и прошивок (из-за чего некоторые модели сетевых карт попросту не поддерживаются). Всё дело в ненормальном процессе настройки сети. Как в случае настройки консоли - нужно редактировать непонятные BASH-скрипты, использовать какие-то непонятные и нелогичные параметры и танцевать с бубном.
Параллельно с этим пишем руководство пользователя Calmira GNU/Linux-libre. Хочу описать не только предназначение системы, её установку и какие-то специфичные для неё вещи, но и кратко пройтись по основам GNU/Linux и UNIX. Описать управление правами доступа, процессами, пользователями, работу с программным обеспечением, текстовым редактором Nvim, процесс настройки системы для себя и всякие такие вещи. Над руководством сейчас занимаюсь только я. А один человек в короткий срок(планируется выпустить окончательную версию рук-ва вместе с релизом Calmira 2.0 GNU/Linux-libre, который хочу выпустить в середине-конце мая) физически не может написать большой объём. Написано 118 страниц с описанием процесса установки и использования, управления процессами, работы с файлами и пр.
#ThisWeekInCalmira
Период с 8 по 14 января (прим. автора).
Новогодние праздники уже закончились, поэтому самое время работать над дистрибутивом в полную силу. Например, уже готова альфа версия программы
vcsetup. Повторюсь, это программа для настройки виртуальной консоли системы. Написана на Rust. Программа обладает простым псевдографическим интерфейсом (см. скрин ниже). Она позволяет настроить язык системы, шрифт консоли, раскладку клавиатуры и loglevel для программы dmesg. vcsetup только формирует красивый псевдографический интерфейс пользователя и пишет установленные данные в конфигурационный файл. Кроме того, она может сбрасывать настройки консоли до заводских. Есть программа vcsetup, предназначенная для установки этих параметров при загрузке системы. Отдельное спасибо одному из разработчиков дистрибутива, который, в общем-то, и написал эти две утилиты.Кстати, занимаемся и сборочными инструкциями системы. На данный момент есть несколько проблем, которые постепенно будут исправляться. В конце этой недели должен выйти корректирующий билд v2.0a1e3.1, улучшающий работу с работой сети. Вообще, сеть - это отдельная проблема в Calmira GNU/Linux-libre. И дело не только в использовании ядра, очищенного от несвободных драйверов и прошивок (из-за чего некоторые модели сетевых карт попросту не поддерживаются). Всё дело в ненормальном процессе настройки сети. Как в случае настройки консоли - нужно редактировать непонятные BASH-скрипты, использовать какие-то непонятные и нелогичные параметры и танцевать с бубном.
Параллельно с этим пишем руководство пользователя Calmira GNU/Linux-libre. Хочу описать не только предназначение системы, её установку и какие-то специфичные для неё вещи, но и кратко пройтись по основам GNU/Linux и UNIX. Описать управление правами доступа, процессами, пользователями, работу с программным обеспечением, текстовым редактором Nvim, процесс настройки системы для себя и всякие такие вещи. Над руководством сейчас занимаюсь только я. А один человек в короткий срок
#ThisWeekInCalmira
🔥3
Теперь в случае, если во время записи конфига произошла ошибка, окна
vcsetup окрашиваются в другой цвет.👍4🔥1
Сформировали корректирующий билд Calmira v2.0a1e3.1 GNU/Linux-libre.
Список изменений и ссылка для скачивания ниже:
https://gitlab.com/calmiralinux/CalmiraLinux/-/releases/v2.0a1e3.1
Из основных изменений:
- Добавление в поставку дистрибутива собственных компонентов для просмотра сведений о системе, настройки виртуальных консолей и просмотра кратких справочных сообщений.
- Поставка наравне с ядром Linux-libre обычного ядра Linux. По умолчанию оно не используется и даже отсутствует в меню загрузки, однако кто мешает его туда добавить?
- Обновление менеджера системы портов
———————————————————
Возможно, в этом месяце будет выпущено ещё несколько мелких корректирующих выпусков 3.2, 3.3 и т.д.
Список изменений и ссылка для скачивания ниже:
https://gitlab.com/calmiralinux/CalmiraLinux/-/releases/v2.0a1e3.1
Из основных изменений:
- Добавление в поставку дистрибутива собственных компонентов для просмотра сведений о системе, настройки виртуальных консолей и просмотра кратких справочных сообщений.
- Поставка наравне с ядром Linux-libre обычного ядра Linux. По умолчанию оно не используется и даже отсутствует в меню загрузки, однако кто мешает его туда добавить?
- Обновление менеджера системы портов
cport, как и самих портов.———————————————————
Возможно, в этом месяце будет выпущено ещё несколько мелких корректирующих выпусков 3.2, 3.3 и т.д.
❤5
На этой неделе в Calmira GNU/Linux-libre №8
Период с 15 по 21 января (прим. автора).
Продолжаем работать над
Но самым крупным событием, думаю, стал релиз корректирующего билда Calmira 2.0a1e3.1 GNU/Linux-libre, в котором мы улучшили поддержку сети - подключаться к ней теперь стало проще, обновили cport и систему портов, а также добавили те самые vcsetup и vcload. Кроме того, в качестве опции поставляется ядро Linux (основное ядро Linux-libre). Скачать можно здесь.
Работаем над сборочными инструкциями для Core-редакции. Реализуем поддержку архитектуры aarch64. Может быть когда-нибудь будем собирать и для неё.
В опросе, посвящённому выбору новой системы инициализации вместо SysVInit, победу одержал OpenRC. Поэтому на этой неделе начали миграцию на него. Из системы портов удалили порты с SysVInit, добавили порт с OpenRC. Сейчас работаем над созданием новых загрузочных скриптов для этого инита.
В конце этой недели начали проектировать установщик Calmira. Вручную её ставить быстро, но это не будет удобным, когда в день таких установок 3-4. Установщик будет написан на языке Rust и будет иметь консольный псевдографический интерфейс.
#ThisWeekInCalmira
Период с 15 по 21 января (прим. автора).
Продолжаем работать над
vcsetup и vcload. Исправили несколько багов, теперь эти программы работают корректно.Но самым крупным событием, думаю, стал релиз корректирующего билда Calmira 2.0a1e3.1 GNU/Linux-libre, в котором мы улучшили поддержку сети - подключаться к ней теперь стало проще, обновили cport и систему портов, а также добавили те самые vcsetup и vcload. Кроме того, в качестве опции поставляется ядро Linux (основное ядро Linux-libre). Скачать можно здесь.
Работаем над сборочными инструкциями для Core-редакции. Реализуем поддержку архитектуры aarch64. Может быть когда-нибудь будем собирать и для неё.
В опросе, посвящённому выбору новой системы инициализации вместо SysVInit, победу одержал OpenRC. Поэтому на этой неделе начали миграцию на него. Из системы портов удалили порты с SysVInit, добавили порт с OpenRC. Сейчас работаем над созданием новых загрузочных скриптов для этого инита.
В конце этой недели начали проектировать установщик Calmira. Вручную её ставить быстро, но это не будет удобным, когда в день таких установок 3-4. Установщик будет написан на языке Rust и будет иметь консольный псевдографический интерфейс.
#ThisWeekInCalmira
GitLab
Calmira v2.0 Alpha 1 Experimental Build 3.1 · CalmiraLinux / CalmiraLinux · GitLab
Software upgrades cport -> current version from git Software...
👍5
https://t.me/calmira_gnu_linux/13
Релиз v2.0a1e4 выпущен не будет. Всё-таки слишком много изменений. Это и миграция на OpenRC, и добавление новых компонентов в состав Calmira, как разработанных внутри этого проекта, так и сторонние вещи. Поэтому выпустим сразу v2.0a2 - вторую альфа версию дистрибутива.
В данный момент работаем над двумя вещами: автоматизированная система сборки дистрибутива
Версия v2.0a2 будет собрана уже посредством
Релиз v2.0a1e4 выпущен не будет. Всё-таки слишком много изменений. Это и миграция на OpenRC, и добавление новых компонентов в состав Calmira, как разработанных внутри этого проекта, так и сторонние вещи. Поэтому выпустим сразу v2.0a2 - вторую альфа версию дистрибутива.
В данный момент работаем над двумя вещами: автоматизированная система сборки дистрибутива
bs и установщик системы calminstall. Эти две вещи, как и некоторые другие, разрабатываемые командой Calmira GNU/Linux-libre, написаны на языке Rust.Версия v2.0a2 будет собрана уже посредством
bs.Telegram
Calmira GNU/Linux(-libre) news
Началась сборка Calmira 2.0a1 GNU/Linux(-libre). Это последний релиз, собранный без использования автоматизированной системы сборки, работа над которой началась недавно. Релиз 2.0a2 будет собран уже с использованием этой системы.
По поводу языка Rust. На нем мы пишем системные компоненты дистрибутива: установщик, утилиты для настройки Calmira, систему сборки... Такое вот негласное правило.
Однако из этого правила есть и исключение - менеджер системы портов cport написан на Python. Связано с тем, что cport - один из самых старых проектов в Calmira, который был написан ещё до того, как я стал интересоваться Rust.
Вообще, в cport полно недостатков, связанных с архитектурой. Например, мне очень не нравится механизм получения настроек МСП, механизм получения сведений о программном обеспечении, алгоритм для построения дерева зависимостей... Да многое не нравится. Конечно, несколько раз cport рефакторился, чтото даже переписывалось, но проще переписать его с нуля. Так, во-первых, у него будет проще и понятнее строение(а значит и разбираться в нем новым участникам проекта будет проще, да и искать и исправлять баги тоже) , а во-вторых, будет проще добавлять новые функции. Да и, на мой взгляд, повысится производительность cport. Например, он очень медленно составляет список изменений в системе портов. Список изменений там составляется очень неэффективным способом.
Ну а лучше, конечно, еще и на Rust переписать. Все-таки, по моему мнению, Python не очень хорошо подходит для системного программирования. Получаются не настолько эффективный софт, как хотелось бы. Он и работает медленнее, и потребляет больше ресурсов ПК. А в Calmira GNU/Linux-libre главное - создание эффективного ПО.
Однако из этого правила есть и исключение - менеджер системы портов cport написан на Python. Связано с тем, что cport - один из самых старых проектов в Calmira, который был написан ещё до того, как я стал интересоваться Rust.
Вообще, в cport полно недостатков, связанных с архитектурой. Например, мне очень не нравится механизм получения настроек МСП, механизм получения сведений о программном обеспечении, алгоритм для построения дерева зависимостей... Да многое не нравится. Конечно, несколько раз cport рефакторился, чтото даже переписывалось, но проще переписать его с нуля. Так, во-первых, у него будет проще и понятнее строение
Ну а лучше, конечно, еще и на Rust переписать. Все-таки, по моему мнению, Python не очень хорошо подходит для системного программирования. Получаются не настолько эффективный софт, как хотелось бы. Он и работает медленнее, и потребляет больше ресурсов ПК. А в Calmira GNU/Linux-libre главное - создание эффективного ПО.
👍2🎅1
Сейчас занимаемся достаточно крупными вещами, работа над которыми будет длиться достаточно долгое время. Поэтому пока не вижу смысла в рубрике "На этой неделе", поскольку записи недели три точно будут практически одинаковыми.
Из приоритетных задач у нас создание установщика дистрибутива, добавление новых сборочных инструкций второй версии дистрибутива, стандартизация системы портов (работаем над стандартом 2.0) и разработка сайта.
В установщике осталась реализация механизма разметки диска, выбора опциональных компонентов системы и собственно установка системы. Т.е. всё самое сложное. Ну а после - формирование документации по установщику и тесты...
Со сборочными инструкциями вечно возникают какие-то проблемы. То не собирается
Ну а для портов делаю продвинутую систему сборки, автоматизирующую многие вещи, которые ранее выполнялись руками. Например, генерацию списка файлов, получение размера, занимаемого пакетом на диске и пр. При желании, эту систему сборки можно использовать и для создания бинарных пакетов для Calmira.
Ну а сайт на этапе проектирования. Есть определённые наброски и идеи.
Из приоритетных задач у нас создание установщика дистрибутива, добавление новых сборочных инструкций второй версии дистрибутива, стандартизация системы портов (работаем над стандартом 2.0) и разработка сайта.
В установщике осталась реализация механизма разметки диска, выбора опциональных компонентов системы и собственно установка системы. Т.е. всё самое сложное. Ну а после - формирование документации по установщику и тесты...
Со сборочными инструкциями вечно возникают какие-то проблемы. То не собирается
ncurses, то какие-то проблемы в компиляции gettext. Иногда бывает, что пропустил какую-то опцию в одном пакете, а из-за этого не будет собираться какой-либо следующий. Разбираться во всём этом муторно, однако после исправлений всё будет работать как часы какое-то время.Ну а для портов делаю продвинутую систему сборки, автоматизирующую многие вещи, которые ранее выполнялись руками. Например, генерацию списка файлов, получение размера, занимаемого пакетом на диске и пр. При желании, эту систему сборки можно использовать и для создания бинарных пакетов для Calmira.
Ну а сайт на этапе проектирования. Есть определённые наброски и идеи.
❤5
Из того, что осталось выполнить перед релизом Calmira GNU/Linux-libre, — создание установщика системы, обновление системы портов и выход МСП cport-v2.0. Вторая версия cport полностью переписана на языке Rust. После чего можно будет начать заниматься сборочными инструкциями системы.
Сейчас работаю над
Сейчас работаю над
cport - он уже умеет выполнять базовые действия по работе с ПО: устанавливать, удалять и выводить информацию о нём. После нужно реализовать механизм обновления системы портов до новой версии. И собственно всё.❤7🔥2
По поводу распространения программного обеспечения в GNU/Linux. С этим не просто всё плохо, с этим всё очень плохо, ИМХО. У одного дистрибутива пакеты формата *.deb, у другого - *.rpm, третий ещё что-то своё выдумает... Страдают в итоге разработчики ПО — поскольку вместо того, чтобы заниматься разработкой они занимаются либо проверкой работоспособности своих программ на том или ином дистрибутиве GNU/Linux, либо чем-то подобным. Да и у дистрибутивов появляется куча мейнтейнеров, собирающих разные пакеты, доверие к которым, откровенно говоря, есть не всегда.
И тут дело не столько в большом количестве дистрибутивов GNU/Linux (основа у них у всех одна, многие аспекты в каждом из них на самом деле +- похожи или одинаковы), сколько в том, что каждый разработчик пытается изобрести свой велосипед, который должен стать лучше, проще и удобнее. В результате и имеющимся 100500 форматам пакетов добавляется ещё один. Именно поэтому у нас до сих пор нет никакого пакетного менеджера или чего-то вроде этого, а только набор сборочных инструкций и програма для управления ПО, собранным из исходного кода.
Кроме того, я вижу большую проблему в том, что системное и пользовательское ПО находится как бы в одной куче: в
Раньше были каталоги
Поэтому я думаю в будущих релизах Calmira GNU/Linux-libre оставить в системе портов только ПО, предназначенное для функционирования самой системы (ядро, загрузчик, система инициализации, компоненты GNU), а для всего остального ПО использовать тот или иной формат самодостаточных пакетов: AppImage или Flatpak. Склоняюсь в сторону Flatpak, однако с установкой таких пакетов в России выходят проблемы (CISCO пусть хуй сосёт -- кто понял, тот молодец, а кто не понял, могу объяснить в комментариях). Но у Flatpak есть несколько преимуществ над AppImage -- более качественная интеграция в систему и наличие удобных инструментов для установки/удаления такого ПО. Ну и популярность (а значит, наличие бОльшего числа программ) у Flatpak выше. Flatpak выбрали разработчики GNOME и теперь, к примеру, тестовые версии их ПО распространяются в репозитории
Хочу заметить, что в Calmira 2.0 GNU/Linux-libre таких изменений не будет. Возможно, что работа над внедрением Flatpak начнётся после выхода какого-либо из промежуточных релизов из ветки 2.Х и закончится к версии Calmira 3.0.
И тут дело не столько в большом количестве дистрибутивов GNU/Linux (основа у них у всех одна, многие аспекты в каждом из них на самом деле +- похожи или одинаковы), сколько в том, что каждый разработчик пытается изобрести свой велосипед, который должен стать лучше, проще и удобнее. В результате и имеющимся 100500 форматам пакетов добавляется ещё один. Именно поэтому у нас до сих пор нет никакого пакетного менеджера или чего-то вроде этого, а только набор сборочных инструкций и програма для управления ПО, собранным из исходного кода.
Кроме того, я вижу большую проблему в том, что системное и пользовательское ПО находится как бы в одной куче: в
/usr/bin и /usr/sbin находится как системное, так и пользовательское ПО (если ПО системное, то это не значит, что оно обязательно должно находиться в /usr/sbin или /sbin - есть же всякие оболочки и прочее ПО, которому не требуются права root). Я считаю, что нужно разделить ПО, которое необходимо для корректной работы ОС, и ПО, которое устанавливает в систему конечный пользователь.Раньше были каталоги
/bin и /sbin, в которых хранились только пользовательские программы, а также /usr/bin и /usr/sbin для всего остального ПО. Но, во-первых, разграничение ПО на этом не заканчивается - у нас же есть всякие конфиги, какие-то ещё другие файлы; ПО не ограничивается одним лишь двоичным исполняемым файлом, а во-вторых, сейчас наблюдается тенденция на замену /bin, /sbin и /lib на ссылки на соответствующие директории в /usr.Поэтому я думаю в будущих релизах Calmira GNU/Linux-libre оставить в системе портов только ПО, предназначенное для функционирования самой системы (ядро, загрузчик, система инициализации, компоненты GNU), а для всего остального ПО использовать тот или иной формат самодостаточных пакетов: AppImage или Flatpak. Склоняюсь в сторону Flatpak, однако с установкой таких пакетов в России выходят проблемы (CISCO пусть хуй сосёт -- кто понял, тот молодец, а кто не понял, могу объяснить в комментариях). Но у Flatpak есть несколько преимуществ над AppImage -- более качественная интеграция в систему и наличие удобных инструментов для установки/удаления такого ПО. Ну и популярность (а значит, наличие бОльшего числа программ) у Flatpak выше. Flatpak выбрали разработчики GNOME и теперь, к примеру, тестовые версии их ПО распространяются в репозитории
gnome-nightly. Да и вообще поддержка Flatpak в GNOME Shell достаточно неплоха.Хочу заметить, что в Calmira 2.0 GNU/Linux-libre таких изменений не будет. Возможно, что работа над внедрением Flatpak начнётся после выхода какого-либо из промежуточных релизов из ветки 2.Х и закончится к версии Calmira 3.0.
👍4👎1👏1
Тем временем начал тестировать сборочные инструкции временного инструментария. Пока всё дело компилируется, работаю параллельно над инструкциями для
core-редакции системы. Сборка происходит автоматизированно, участие человека требуется, как правило, при возникновении каких-либо ошибок в инструкциях.🔥4🎉3