Calmira GNU/Linux(-libre) news
24 subscribers
39 photos
1 file
20 links
Calmira GNU/Linux(-libre) когда-то была моим pet-проектом. Но сейчас этот дистрибутив разросся в нечто большее.

GitLab: https://gitlab.com/calmiralinux
Наш чат по редактору Helix: @helix_ru_chat
Matrix: https://matrix.to/#/#calmlinux:matrix.org
Download Telegram
Channel photo updated
На этой неделе в Calmira GNU/Linux(-libre) №3

Период с 25 июля по 1 августа (прим. автора).

На этой неделе произошло немного изменений, но при этом достаточно крупных. Все силы брошены на работу над системой портов дистрибутива - средством для распространения ПО.

Система портов

В систему портов добавляются порты из двух новых категорий: cross_compiler и toolchain. Они предназначены для сборки Calmira GNU/Linux(-libre) из исходного кода. А менеджер системы портов постепенно стал получать функционал из системы сборки дистрибутива. В скором времени будет возможно собрать свой экземпляр этой системы посредством cport.

Кроме того, система портов активно документируется. Например, на этой неделе была добавлена страница о создании своего порта.

Calmira GNU/Linux(-libre)

Специально для тестирования последующих сборок этого дистрибутива приобрёл очередной ноутбук (а если быть точным - нетбук) - Samsung NF210. Его железо на 2022 безнадёжно устарело, однако для тестирования Calmira GNU/Linux(-libre) будет в самый раз. Это уже третий ноут в моей коллекции.

#ThisWeekInCalmira
👍4🔥2
Тем временем в систему портов было добавлено новое ПО. Инструкции в этих портах предназначены для сборки дистрибутива Calmira GNU/Linux(-libre) с нуля. Сейчас ведётся работа по исправлению в этих инструкциях ошибок и созданию скрипта для автоматизации процесса сборки. cport будет частью этого скрипта. Через несколько дней начнётся сборка первой тестовой версии с использованием этих инструкций.
3👍2
Доброго времени суток! Сегодня встал вопрос о выборе системы инициализации в Calmira 2.0 GNU/Linux(-libre).

На данный момент используется SysVInit, но все мы понимаем, что это устаревшая СИ, которую достаточно тяжело поддерживать, по крайней мере нам.
Выбор системы инициализации в Calmira 2.0 GNU/Linux(-libre)
Final Results
55%
OpenRC
36%
Runit
9%
Finit
Думаю, что пора подвести итоги вчерашнему опросу. Я топил за runit. Всё-таки его я хоть немного, но тыкал, и представляю, что он из себя представляет. Да и у нас, разработчиков Calmira GNU/Linux(-libre), напополам разделились мнения по поводу выбора системы инициализации: половина выбрали OpenRC, половина - Runit.

OpenRC - система инициализации из Gentoo GNU/Linux. С одной стороны это неплохо, так как у Gentoo ломовейшая команда разработчиков. Сам инит хорошо документирован и его возможно без каких-то серьёзных проблем собрать и в Calmira. Но тогда у нас получится та же самая Gentoo - тут и система портов, и инит... Да, это две разных системы, но у пользователя сложится иное мнение. И я выбрал Runit и по этой причине.

Однако, по результатам голосования, будет выбран OpenRC, как и выбрали обычные люди. Finit поставил просто ради галочки. Это минималистичная система инициализации, которая когда-то давно использовалась в EEE PC. Всё-таки там важна минималистичность и простота. это ж маломощные недобуки как-никак... Я не думаю, что Finit попал бы в Calmira. Но раз его предложили, то почему бы и нет...
👍3
На этой неделе в Calmira GNU/Linux(-libre) №4

Период со 2 по 9 августа (прим. автора).

Эта неделя была богата на всевозможные изменения, как правило, касающиеся системы портов и менеджера cport.

Система портов

Было добавлено достаточно большое число портов в категории base, general, postcpl; кроме того, была добавлена категория net. В конфиги некоторых из портов внесены изменения: обновлены сведения о занимаемом месте на жёстком диске, обновлены ссылки для скачивания и контрольные md5 суммы. Список изменений не пишу потому что он длинный :)

cport

Сейчас производится рефакторинг отдельных компонентов менеджера системы портов cport. Это нужно для того, чтобы упростить код, а также оптимизировать работу программы. Работа не закончена, и думаю, что она закончится только через неделю. А там можно уже будет релизить первую бета-версию cport'a.

Программное обеспечение

Вышел релиз утилиты AppImage Installer для интеграции сами поняли каких пакетов в систему. Пакеты такого типа будут использоваться в расширенной редакции Calmira GNU/LInux(-libre), поэтому существует необходимость в такой софтине.

На днях завершилась дискуссия о выборе системы инициализации. SysVInit уже прилично устарел на наш взгляд, поэтому решили заменить его на более современные и актуальные альтернативы. В опросе пользователей победил OpenRC, соответственно, он будет использован в одном из следующих релизов Calmira GNU/Linux(-libre).

Документация

В завершение хочу написать и о документации: над ней наконец-то началась работа. Сейчас заполняются сведения только лишь о самом дистрибутиве и всяких разных ништяках вроде системы портов и прочего, однако после будут приведены сведения об установке системы и о её администрировании.

#ThisWeekInCalmira
🔥6
Тем временем про cport.

Завершился его рефакторинг. Все изменения уже влиты в master. Кроме того, была проведена оптимизация его работы: cport работает несколько быстрее, а потребляет в несколько раз меньше ресурсов ПК, в частности, ОЗУ.

Кроме того, были добавлены ключи --is-exist и --is-installed для проверки наличия порта в СП и для проверки порта на то, установлен ли он в систему или нет. Эти опции пригодятся при создании сборочных инструкций портов: теперь легко создавать сложные сборочные инструкции ПО, в которых алгоритм сборки определяется наличием или отсутствием какого-то опционального или рекомендуемого ПО.

Репозиторий с cport находится здесь: https://gitlab.com/calmiralinux/cabs/cport

Репозиторий с системой портов: https://gitlab.com/calmiralinux/cabs/Ports
🔥42
Что будет в релизе Calmira 2.0a1 GNU/Linux-libre?

2.0 по сравнению с предыдущими версиями достаточно крупный релиз. Самым значимым изменением в нём является переход на использование ядра Linux-libre. Можно ли считать теперь Calmira полностью свободным дистрибутивом? Наверно нет, да и никаких проверок на наличие несвободных компонентов не проводилось и не планируется проводить.

Кроме того, в первую альфа версию Calmira 2.0 GNU/Linux-libre всё-таки войдёт система портов и cport. Включить систему портов в минимальную поставку дистрибутива планировалось ещё с [так и не вышедшей] версии 2021.3, но из-за неготовности как СП, так и ПО для управления ею, это откладывалось от версии дистрибутива к версии. Из-за включения в дистрибутив менеджера системы портов cport так же пришлось добавить порт sqlite3 и изменить алгоритм сборки python.

Системой инициализации в этом релизе будет SysVInit, однако в каком-то из следующих будет совершён переход на OpenRC.

Этот релиз планируется собрать в автоматизированном режиме посредством cport. Сейчас ведётся работа над реализацией в cport нормальной системы сборки.
🔥6
Доброго времени суток! Не писал на канал потому что хоть когда-то нужно отдыхать от всего))). Да и проблемы с доступом в интернет были только на руку :).

На следующей неделе думаю провести себе нормальный интернет, а не то убожище, что есть сейчас. Но цены сейчас, понятное дело, кусаются. Отвалить около 10 рублей - это, конечно, здорово. Думаю, что это окупится :).

Из того, что по Calmira GNU/Linux(-libre). Всё работаю над cport и за эту неделю запилил несколько моднейших вещей.

Во-первых, добавил автоматическое создание базы данных и её обновление в случае необходимости. Теперь cport проходится по портам и проверяет, установлены ли они в систему, т.е. присутствуют ли их файлы в системе. Если присутствуют, то проверяет, указан ли порт в базе данных cport. Если нет, то добавляет в БД. Функция полезна при первом запуске cport, ну и в тех случаях, когда БД повреждена или удалена вообще.

Кроме того, перегенерация БД вызывается автоматически после обновления системы портов.

Далее - это всевозможные изменения, связанные с повышением стабильности cport. Особо расписывать тут нечего, поэтому пропущу.

Ну и моё любимое - это внешний вид. В опцию отображения в консоли списка зависимостей запилил одну очень удобную вещь для списка зависимостей. Теперь зависимости выделяются разными цветами:

- Зелёный: порт уже установлен в систему;
- Красный: порт отсутствует в СП;
- Белый: порт не установлен.

Это поможет пользователям быстро определить, какие зависимости требуется собрать для порта.

Более подробно я об этом напишу в записи "На этой неделе...".
2🔥2
Такими темпами cport скоро превратится в полноценную софтину для управления ПО в GNU/Linux. К слову, сам cport весьма небольшой - всего лишь 1770 строк кода на Python. У меня были мысли переписать всё это на что-то более предпочтительное для этого, на тот же C++, Rust... Но отсутствие времени и желания всё это пока не даёт сделать, да и на данный момент требуется выкатить стабильный релиз cport v1.0 со всем необходимым функционалом, а уже потом решать дальнейшую судьбу cport.

Из того, что осталось так и не выполненным на данный момент:

- man pages;
- Система сборки.

На системе сборки остановлюсь подробнее. Она предназначена для автоматизированной сборки дистрибутива Calmira GNU/Linux(-libre) из исходного кода. На данный момент этот механизм работает криво, поэтому в поставку cport не был включен.
🔥3
Forwarded from Советы по GNU/Linux ()
В рамках проекта "Calmira GNU/Linux(-libre)" человек делает консольную софтину для интеграции AppImage в систему: https://gitlab.com/calmiralinux/appimage-installer

Тестируйте, если обнаружите что-то непонятное - бегом писать Issue: https://gitlab.com/calmiralinux/appimage-installer/-/issues/new
🔥5👍1
https://gitlab.com/calmiralinux/cabs/cport - обновил README, добавил прикольных GIF для демонстрации работы.

https://gitlab.com/calmiralinux/cabs/Ports - добавил в директории портов файлы README с описанием ПО
👍2😁1
🥳Тем временем зарелизил cport v1.0 Beta 1!
https://gitlab.com/calmiralinux/cabs/cport/-/releases/v1.0b1

cport - это утилита для управления программным обеспечением в Calmira GNU/Linux(-libre). Использует систему портов для сборки ПО из исходного кода.

Работа над первой бета версией продолжалась с 15 января и с этого времени было внесено 226 коммитов. cport был полностью переписан. Какие-то функции были из него исключены (такие, как блокировки и работа с чёрным списком портов), а какие-то добавлены (диагностика системы, СП и прочего, улучшенная работа с БД, etc.).

Основные изменения:

- Изменилось строение cport. Ядро составляет одну сущность, поверх которой работает консольная "оболочка" - собственно то, с чем и взаимодействует пользователь.
- Добавилась функция для автоматизированной регенерации базы данных cport для актуализации записей в ней (добавление установленных портов и исключение удалённых) или её восстановления.
- Теперь cport использует актуальный стандарт системы портов, в котором обязательно наличие файлов install, port.toml и files.list.
- Мелкие изменения в просмотрике информации о порте.

Добавления:

- Актуализация системы портов (кроме того, cport теперь умеет показывать красивый и подробный список изменений в портах).
- Двухрежимное обновление порта до новой версии (либо установка новой версии "поверх" уже установленной, либо полное удаление старой и установка новой).
- Перегенерация базы данных либо её восстановление.
- Автоматическая генерация базового файла конфигурации в случае его отсутствия.
- Получение списка портов.
- Диагностика системы портов и дистрибутива Calmira GNU/Linux(-libre).
- и прочие функции...
🎉3
https://gitlab.com/calmiralinux/cabs/cport

В README представлено пару гифок с демонстрацией работы. Тестировалось на слабом нетбуке, поэтому скорость работы не такая высокая, как хотелось бы
👍4
Тем временем собирается первый экспериментальный билд Calmira v2.0a1e1. Первые публичные версии ожидаются к концу следующего года. На скрине заключительный этап - сборка ядра
👍5
Собран первый экспериментальный билд Calmira v2.0a1e1 GNU/Linux-libre. После некоторых доработок будет выложен в открытый доступ... Надеюсь на это
🥰2
Из изменений в этой версии:

- Переход на использование ядра Linux-libre;
- Добавление системы портов;
- Использование cport для управления программным обеспечением;
- Добавление нового софта для упрощения работы.
- etc.
👏2🔥1