Журнал LinuxFormat - перейти на главную

LXF150:Внутри Mageia

Материал из Linuxformat
Перейти к: навигация, поиск

Содержание

Внутри Mageia

Это самый первый релиз — и мы уже подпали под его чары. Исследует Маянк Шарма.


Когда было объявлено о проекте Mageia, немногие сомневались, что он выйдет, но почти всех удивил выпуск полнофункционального дистрибутива менее чем через год.

И за девять месяцев после ответвления от Mandriva проект Mageia достиг намного большего: он сумел выполнить свое обещание и собрал – с нуля! – по-настоящему меритократичный проект, опирающийся на сообщество.

Сообщество Mageia выросло с десятка до более чем 100 разработчиков, которые работают примерно в 12 командах. Сообща они создали более 14 000 двоичных пакетов, поддержку разрядности как 32, так и 64, и уже работают над архитектурой ARM.

Первому релизу аплодирует почти все сообщество открытого ПО. Члены проекта скромно объясняют свой успех «опорой на плечи гигантов» – для дистрибутива это, может, и правда, но она не учитывает усилий сообщества по обустройству инфраструктуры и подготовке экосистемы, чтобы подпитывать Mageia и способствовать вкладам.

Анонс ответвления

Еще в сентябре 2010 коллектив бывших сотрудников Mandriva и членов его разношерстного сообщества решил ответвиться от дистрибутива, после того, как родительская компания, Mandriva SA, ликвидировала одну из своих компаний и решила сместить интересы с глобального рынка в Южную Америку, откуда поступала большая часть дохода компании. Потеряв уверенность в будущем любимого дистрибутива, сообщество, вполне в стиле открытого ПО, решило взять дела в свои руки.

Анна Николя [Anne Nicolas], бывший технический директор Mandriva и член совета учредителей в Mageia.org, подчеркивает, что решение создать Mageia не было импульсивным.

«Прошлым летом мы много говорили с главными представителями сообщества, пытаясь понять, есть ли у нас общие интересы в запуске нового проекта», сказала она. И добавила: «Исходная команда состояла из тех, у кого были мотивация и опыт довести проект до завершения, четкое представление о том, что нам нужно, и хорошие причины сделать это».

Оливер Бургер [Oliver Burger], многолетний пользователь Mandriva и член германского сообщества пользователей Mandriva, MandrivaUser.de, вошел в проект Mageia с самого начала.

Бургер объясняет, что за последние годы его и несколько других ребят в MandrivaUser.de сильно расстраивала манера Mandriva SA обращаться с сообществом.

«Нам действительно нравился Mandriva Linux, и мы не хотели менять дистрибутив, а Mageia – как раз то, чего мы ждали, – отметил он. – А когда я познакомился с другими членами проекта, я стал чувствовать себя здесь как дома».

Николя вспоминает, что после анонса настали часы нервно грызть ногти. «У нас не было ясного представления о настроениях в сообществе, – говорит она. – Но спустя несколько часов мы почувствовали себя более уверенно».

Одним из приоритетов проекта было контактировать с сообществом, держа его в курсе происходящего. Николя объясняет, что кроме применения почтовой рассылки, wiki-страницы и IRC для поддержания участников в процессе, команда приняла решение вести регулярный блог.

В одном из самых первых постов блога после объявления об ответвлении Николя написала, что положительная реакция укрепила их решение.

«Глядя, как подтягиваются люди из сообщества Cooker и пользовательского сообщества, а также те, кто ранее нас покинул, мы утвердились в том, что решение создать дистрибутив, полностью разрабатываемый сообществом, было и остается правильным».

Прозрачность – один из отличительных признаков дистрибутива, и это также распространяется на связи между разработчиками. Первоначально команда обходилась почтовыми рассылками и IRC, и общение было слегка неформальным, но Николя говорит, что очень скоро были введены еженедельные собрания, чтобы люди видели, что происходит, и могли принимать решения по общей стратегии.

Бергер рассказал, что изначально в почтовой рассылке дискуссии шли в основном на технические, организационные и юридические темы, но в процессе формирования команды, который начался в декабре 2010, обсуждения переместились в другие области.

«Например, в команде интернационализации нам пришлось выбирать утилиты, – говорит Бергер. – Через некоторое время мы остановились на Transifex, покольку она уже широко использовалась и можно было расспросить людей из Fedora и других мест об их опыте работы с ней».

Николя заключает: «Сейчас можно сказать, что общение проходит хорошо. Одна из важных целей состоит в поддержании горизонтальных связей внутри Mageia – например, чтобы технические и нетехнические команды регулярно общались друг с другом».


Хорошее управление

С ростом команды проекту потребовался более удобный способ для взаимодействия ее членов, так что была выработана структура управления, разделившая проект Mageia на четыре сегмента – сообщество в целом, команда, общественный совет и правление.

Правление отстаивает ценности проекта и руководит ассоциацией Mageia.org. Совет выполняет ежедневное управление, планирование, координацию и производство. Есть также команды, ответственные за другие области дистрибутива, такие как формирование и сортировка пакетов, QA, документация и маркетинг.

Определив роли субъектов в модели управления, первоначальная команда может делегировать задачи влившимся участникам, не опасаясь, что дела могут пойти наперекосяк.

Проект также занялся работой по созданию и регистрации ассоциации Mageia.org.

«Это было сделано, чтобы Mageia могла получать финансирование, а также для хостинга помощи и многих других вопросов, – объясняет Николя. – Мы хотели, чтобы Mageia стартовала в хороших условиях, и хостинг был одним из главных забот и приоритетов».

Ассоциация Mageia.org была зарегистрирована 7 октября 2010 года. На вопрос о модели прибыли, заданный во время интервью на Open World Forum в Париже в том же месяце, Николя ответила, что вокруг Mageia будет сформирован целый ряд услуг, включая поддержку, консалтинг и разработку.

Первая встреча Генеральной Ассамблеи новой организации прошла в феврале 2011 в кулуарах FOSDEM. Николя избрали президентом, Михаэля Шерера [Michael Scherer], давнишнего участника Mandriva – секретарем, а Дамьена Лальмана [Damien Lallement], бывшего работника Mandriva и менеджера по качеству дистрибутива, избрали казначеем. На встрече Лальман представил подробности финансового состояния проекта. Было получено € 8833 пожертвований, а потрачено € 3310, в основном на серверы и другое оборудование.

22 октября 2010 года заработали серверы Mageia. Чтобы обеспечить вклад сообщества в развитие проекта, команда приняла решение раздобыть хостинг и создать систему сборки. Это была грандиозная задача. Изначально инфраструктура основывалась на Mandriva Linux One. Для задач администрирования применялась платформа для управления системой Puppet, подогнанная к Mageia. Команда также установила скрипт Lurt Perl, чтобы перекомпилировать SRPM. Lurt отслеживает список пакетов с разными архитектурами и перекомпилирует каждый в окружении chroot.

Другой важной задачей, кроме установки системы сборки, было развертывание централизованного решения аутентификации с использованием LDAP, чтобы получить web-интерфейс, дающий пользователям и участникам возможность регистрироваться в любой службе Mageia, например, в Bugzilla, SVN, списках рассылки и на форумах.

К моменту, когда команда дошла до установки subversion и принятия вклада участников, они уже отставали от графика. Оглядываясь назад, Николя говорит, что можно было сделать все лучше – например, установить временную систему SVN, куда участники могли бы вносить изменения.

Начальная раскрутка

Пока устанавливалась система сборки, исходная команда Mageia также взялась создавать из разработчиков, которые зарегистрировались на вики-странице Mageia, ориентированные на решение задач группы.

Некоторые нетехнические команды – дизайн, маркетинг и так далее – были уже сформированы. Вскоре появились команды пакетчиков, сортировщиков ошибок, тестеров и переводчиков, и лидер каждой из них был представлен на общественном совете Mageia.

Бургер, который является главой команды интернационализации, также тесно работает с сисадмином. Он считает, что формирование команд и инфраструктуры было нескладным, но усилия оправдали себя.

Но дело еще не было завершено! Следующим шагом было сборка начальной загрузки, небольшого инсталлятора, используемого для загрузки большей системы. В блоге Николя объяснила, что в случае с Mageia начальная загрузка – это то место, где собираются базовая система и основные зависимости, так что все приложения можно там собрать, используя собственные средства и пакеты Mageia. Это стандартная практика для всех дистрибутивов Linux.

Но что произойдет с такими пакетами, как GCC, Glibc и прочее, которым для компиляции требуются они сами? В Mageia эту проблему курицы и яйца решили, позаимствовав низкоуровневые пакеты у Mandriva.

Однако, прежде чем их использовать, их пришлось отчистить от всего связанного с Mandriva – например, изображений копирайта, значков и RPM-макросов.

Правильная начальная загрузка имеет решающее значение для любого дистрибутива, не только для ответвления. Для нового дистрибутива написание и документирование начальной загрузки пригодится при добавлении поддержки новой архитектуры.

Создание начальной загрузки и сборка пакетов для нее в Mageia отняло месяц, что привело к задержке релиза ISO изначальной альфа-версии на пару месяцев. Но как только все улеглось и встало на свои места, проект стал укладываться во все последующие сроки релизов.

Свет мой, зеркальце

Другой важный шаг в новом дистрибутиве – определиться со структурой репозиториев. Прежде чем Mageia смогла принять решение об этом, команде пришлось выбирать приемлемые лицензии, что влияет на программы, включаемые в дистрибутив.

После долгой дискуссии было решено распределить все программы по четырем репозиториям.

«База [core]», активный по умолчанию, содержит только те программы, чьи лицензии одобрены FSF или OSI.

«Несвободный [non-free]» репозиторий, ныне задействованный по умолчанию в Mageia 1, содержит свободно распространяемые бесплатные программы и прошивки, исходный код которых недоступен: например, проприетарные графические драйверы от ATI и Nvidia.

Третий, «грязный [tainted]» репозиторий по умолчанию выключен. Он содержит ПО, способное вызвать патентные проблемы, ограничивающие распространение, например VLC, K9Copy, LAME Encoder и так далее.

Репозиторий «отладки [debug]» содержит отладочные RPM для программ из остальных репозиториев.

Наряду с пакетами и политикой обслуживания зеркал, проект был готов принять зеркала. К ноябрю 2010-го команда заказала два зеркала, чтобы синхронизировать Mageia.

Николя объясняет, что после первого ISO разработчиков зеркал у проекта добавилось.

«Люди обрели уверенность в Mageia как в реальном проекте», прибавила она.

Финальный отсчет

По завершении основной работы были распахнуты ворота в сообщество Mageia. Команда завершила логотип проекта в декабре 2010-го, перепробовав за месяц более 430 вариантов дизайна.

После этого инфраструктура была сформирована, команды – организованы, система сборки – установлена, а пакеты начальной загрузки – вычищены. Альфа 1 версия Mageia 1 вышла 15 февраля 2011 года, с двухмесячным опозданием.

Для разработчиков и участников релиз дал «незыблемый» фундамент, на котором закладывалась последующая работа.

В записи блога, где объяснялась важность этого, Николя сообщила: «Питание подано, фабрика работает, команды организованы, и все это позволяет вам представить минимальный работающий продукт, в его первоначальном виде».

За этим последовал первый день тестирования Mageia, 26 февраля 2011 года.

Система сборки Mageia уже работала «на полную мощность», вырабатывая для репозиториев более 6100 пакетов, содержавших LibreOffice, Eclipse, KDE 4.6.1 и так далее.

Альфа 2 вышла 15 марта 2011 года, как в 32-, так и в 64-разрядном вариантах. Бета 1 была выпущена 5 апреля, там была проделана огромная работа по локализации. К зеркалам добавились торренты. Команда планировала выпустить live CD, однако столкнулась с трудностями сборки такой системы. Днями тестирования релиза стали 11 и 12 апреля.

26 апреля Mageia выпустила бета-версию 2, исправившую множество ошибок и добавившую много приложений, таких как Firefox 4.0, Chromium, ядро 2.6.38.4, LibreOffice 3.3.2.2 и KDE 4.6.2. Пакеты были заморожены, и разработчики устремили силы на исправление ошибок и улучшения пользовательской среды. Этот релиз также имел live CD, один с Gnome, а другой – с KDE.

Единственный и неповторимый релиз-кандидат вышел 17 мая, с множеством исправлений и с дополнительными переводами.

Проект попросил пользователей проверить все проблемы, связанные с обновлением Mandriva 2010.1 и 2010.2, и прислать отклики по процессу установки.

И, наконец, после девяти месяцев интенсивной работы 1 июня вышел релиз Mageia 1, включающий все, что полагается иметь мейнстримовому дистрибутиву. Он содержал ядро 2.6.38.7, KDE SC 4.6.3, Gnome 2.32, Xfce 4.8.1, Firefox 4.0.1, браузер Chromium 11.0.696.65, LibreOffice 3.3.2.2 и многое другое. Релиз был доступен как установочный DVD и как CD на две архитектуры (с ограниченным набором программ), а установщиком был традиционный DrakX. Есть также установочные live CD с KDE и с Gnome.

А пока дистрибутив карабкается на вершину чартов Linux и сообщество аплодирует его достижениям, разработчики берутся за активную работу над Mageia 2.

Персональные инструменты
купить
подписаться
Яндекс.Метрика