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

LXF148:Внутри Linux Mint

Материал из Linuxformat
Перейти к: навигация, поиск
Как мы узнали в прошлый раз, сборка дистрибутива требует массы усилий. Сегодня Маянк Шарма заглядывает внутрь дистрибутива, переопределяющего настольные стандарты – Linux Mint на базе Ubuntu.


Катапультирование Linux Mint на вершину чартов дистрибутивов можно приписать его прекрасному сочетанию практичности и функциональности. Но считать, что это очередной «перекрашенный Ubuntu», глубоко неверно.

В отличие от большинства главных дистрибутивов, Linux Mint – детище всего одного человека, Клемана Лефевра [Clement Lefebvre]; и тем не менее он сумел вдохновить сообщество. Стоит ли удивляться, что он обращается за советом к легиону пользователей.

Кендал Уивер [Kendall Weaver], куратор LXDE-версии дистрибутива, говорит, что успех Mint – заслуга Лефевра и его интерпретации желаний сообщества.

«Большая часть идей поступает от Клемана Лефевра и его взаимодействия с сообществом. Он – лидер проекта, и он принимает основные решения», говорит Кендал.

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

«Люди заходят на сайт сообщества, на Launchpad blueprints, на форумы, иногда даже пишут прямо нам. Так или иначе, гениальные идеи до нас доходят, и я выписываю их для предстоящего релиза».

Лефевр добавляет свои идеи и функции, не попавшие в предыдущий релиз, а также «крупные функции», требующие больше времени на разработку, такие как Менеджер ПО [Software Manager] и Менеджер Выгрузки [Upload Manager].

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

Его сотрудники также подчеркивают важность вклада сообщества. Джеми Бирс [Jamie Birse], куратор версии для KDE, говорит: «Перед очередным релизом я обычно размещаю сообщение на форуме, чтобы узнать, какие приложения пользователи KDE хотят добавить, удалить или заменить».

Уивер с ним согласен: «Через форумы я узнаю мнение пользователей о таких вещах, как состав приложений, раскладка меню и желаемые/необходимые функции».

Содержание

Влияние Ubuntu

Linux Mint, несомненно, основан на Ubuntu, и, следовательно, связан с его релизами.

«На каком-то этапе, обычно в районе выпуска RC [релиз-кандидата] Ubuntu, я замораживаю код, и все, что не готово к этому моменту, просто не попадает в релиз», объясняет Лефевр.

Затем он портирует существующий настольный Mint на новый Ubuntu и вгрызается в процесс регрессионного тестирования и адаптации Mint к новой базе.

«Наткнувшись на проблемы, я их исправляю, обхожу либо документирую. Бывает, я обнаруживаю дублирование между Mint и Ubuntu и решаю, какой компонент заменить или удалить», добавляет он.

Возможно, вы считаете, что состав приложений для дочернего дистрибутива – не такая уж и проблема, но по части принятия решений Ubuntu влияет на Mint различными способами.

«Если Ubuntu меняет состав программ, пользователи (и обозреватели) нередко спрашивают, почему мы не делаем того же, – говорит Лефевр. – В теории, их выбор ПО вовсе не обязан влиять на наш. Но если что-то меняется, мы вдумчиво это изучаем и решаем, следовать ли нам этому изменению».

Лефевр подчеркивает, что хотя Mint и не вполне по дороге с Ubuntu, изменения в последнем не проходят незамеченными.

«В конце концов они заставляют нас спросить себя, хорошо это для Linux Mint или нет, и нельзя ли что-то улучшить или чему-то научиться у них. Другие дистрибутивы и операционные системы создают тот же эффект», говорит он.

А вот KDE Mint основан на текущем релизе Kubuntu с несколькими дополнительными репозиториями PPA.

Бирс говорит, что приступает к разработке, когда выходит бета-релиз Kubuntu. Уивер говорит, что хотя LXDE Mint напрямую не основан на Lubuntu, он пристально следит за этим дистрибутивом:

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

Привязка одного дистрибутива к другому – непростая задача. Уивер, который также является ведущим разработчиком основанной на Lubuntu PepperMint OS, проливает свет на протекание этого процесса:

«Сперва нужно взять ISO-файл другого проекта и распаковать его. Затем начинается непрерывный процесс ввода в файловую систему с chroot и добавления и удаления пакетов».

Поддержка ПО – одно дело, но поддержка аппаратной части гораздо сложнее, как поясняет Лефевр: «Исправляя ошибки в родительском дистрибутиве, мы рискуем отклониться от Ubuntu и создать нашим пользователям проблемы с аппаратурой по решениям, которые работают в Ubuntu, но не в Mint».

«Если мы на 100 % не уверены, что исправляем ошибку в обоих дистрибутивах и не вносим новых ошибок, то оставляем слой аппаратной поддержки как есть», добавляет он.

Кроме ПО и аппаратуры, немало внимания следует уделять брендингу.

Уивер говорит: «Хотя большинство кода выпускается по одной из форм открытой лицензии, для оформления, логотипов и названий не редкость иметь некую форму копирайта. Mint тщательно оберегает свой бренд, и команда всячески удаляет все следы Ubuntu».

Закладывание основ

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

Бирс благодарен за подход с изменениями на основе пакетов: «Когда я начинал, это было просто огромным количеством пометок, какие файлы изменить и команды запустить, да упаковать один-два файла в tar. Я люблю писать скрипты, а подготовка пакета – это просто создание скрипта и tar-архива с дополнительными возможностями», объясняет он.

Для каждого релиза Бирс пересобирает свою систему разработки в 32-битном Kubuntu на новом разделе и перекомпилирует пакеты, отыскивая, что поломалось или изменилось с прошлого раза.

Уивер начинает со сборки базового ISO, который запускает довольно простую сессию LXDE с «подкладкой» Mint:

«Поскольку мы идем от Ubuntu, то, естественно, делаем все пакеты в формате Deb. Мне нравятся преимущества пакета default settings: он позволяет мне разместить массу системных настроек по умолчанию в одном пакете. Например, mintlxde-default-settings содержит расположение элементов панели инструментов, настройки файлового менеджера, файлы сессии, настройки OpenBox, несколько поправок к файлам конфигурации и пр.»

Уивер не создает mint-lxde-default-settings с нуля, а берет за основу lubuntu-defaultsettings.

«У приложений есть поведение по умолчанию. Например, LXPanel без файлов настройки запустится с параметрами, заданными разработчиком. Я записываю в файл сессии проверку, существует ли профиль LXPanel; если его нет в домашнем каталоге пользователя, он копируется из настроек по умолчанию, которые я разместил где-то в /usr/share. Тот же принцип применяется к остальным настройкам».


Интеграция утилит и приложений

Уивер говорит, что много усилий при добавлении приложений затрачивается на проверку правильности их функционирования. Для внесения небольших изменений в некоторые приложения он использует собственные утилиты Mint – в частности, MintSystem. Для создания альтернативных версий файлов в любом заданном пакете MintSystem запускает Dpkg.

«Я употребляю ее с gnomepower-manager. У меня отдельно хранится модифицированная версия gnomepower-preferences.desktop, и при каждой установке или обновлении gnomepower-manager версия /usr/share/applications/gnomepower-preferences.desktop от автора пакета автоматически перезаписывается моей.

Это удобно, так как приложение обычно не отображается в меню LXDE, а я хочу обеспечить, чтобы оно там было. С помощью MintSystem я изменяю команды в приложениях, которые работают не совсем так, как мне надо, и исправляю ошибки и/или убираю функции, которые по-настоящему работают только в других рабочих столах, скрываю и добавляю приложения в меню и выполняю некоторые другие действия», объясняет он.

Одна из причин популярности Mint – инструменты его настройки, такие как MintMenu, MintInstaller и MintUpdate. У Бирса нет проблем с интеграцией утилит в KDE, так как это всего лишь Deb-пакеты со своим набором зависимостей. Если проблемы появляются, он консультируется с Лефевром.

«Решение может быть на его стороне, или мне может потребоваться обновить один из моих пакетов или создать KDE-версию утилиты», добавляет он. Тестирование дистрибутива позволяет разработчикам получить отклик от пользователей, которые решают на компьютере самые разные задачи и обладают совершенно разным набором аппаратуры. Бирс говорит: «Скомпилировав все пакеты KDE, я могу начать сборку ISO Mint для KDE с помощью MintConstructor. Затем я тестирую ISO в VirtualBox, нахожу ошибки и обновляю необходимые пакеты».

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

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

Одобренный ISO нужно синхронизировать с зеркалами. Как правило, Лефевр отводит на это 48 часов, за которые он работает над коммуникацией – анонсом релизов, контрольными суммами MD5, торрентами, прямыми ссылками для загрузки и сайтом. Когда он наконец пишет об этом в блог, новости дублируются на сайте, форумах, в Twitter и Facebook.

«Тут я обычно откидываюсь в кресле, беру малость попкорна и наслаждаюсь шоу», улыбается Лефевр. Примерно то же происходит и с другими редакциями, хотя последнее слово всегда остается за Лефевром.

Феномен

Нетрудно убедиться, что его усилия окупаются. Джесс Смит [Jesse Smith] на Distrowatch.com навидался дистрибутивов из серии «Ubuntu для новичков», но считает, что популярность Mint объясняется стремлением Лефевра делать Mint одновременно и дружелюбным, и профессиональным.

«Дело не только в добавлении пакетов или тех или иных функций – Mint на самом деле предлагает инструменты, которые людям удобны. Это привлекло и внимание, и людей, способных взяться за дочерние проекты, такие как ответвления Mint LXDE и KDE», заключает Смит.

Скотт Ньюлон [Scott Newlon] был «очарован» Mint 7. При выходе Mint 8 он решительно и полностью перешел на Linux.

«Я остаюсь с Mint, потому что, на мой взгляд, это самый функциональный дистибутив, причем здесь есть сравнительно новые для мира Linux возможности», объясняет Ньюлон, который также является одним из ведущих подкаста MintCast.

И он подходит не только новичкам. Сюзан Линтон [Susan Linton], колумнист LXF и ведущая tuxmachines.org, считает, что в Mint есть что предложить каждому:

«Его можно просто установить и начать им пользоваться – именно этого хотят не только новички в Linux, но и многие опытные пользователи. Поиграть с дистрибутивом и поизучать его очень весело, но лет через 10 или 11 хочется чего-то, что работало бы сразу. Обещают такое многие дистрибутивы, но лишь немногие делают».

По мнению Линтон, одна из причин успеха Mint – прямой доступ к разработчикам:

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

Смит соглашается с нею: «Думаю, что в центре внимания Mint держится благодаря своей готовности прислушиваться к сообществу. Люди просят ветки без кодеков – и получают их; люди хотят Mint на основе Debian – и получают его, люди говорят “Unity нам не надо“ – и Unity не адаптируется».

У Ньюлона тоже хорошее впечатление от сообщества Mint: «Мне нравится, каким теплым оно выглядит, при столь большом размере.

В разные его аспекты активно вовлечены сотни людей, и тем не менее оно кажется. маленьким. Каждый, с кем я общался, начиная с Лефевра, был приветлив и отзывчив. Мне удалось отлично поговорить с кураторами релизов, вроде Уивера и Бирса, и они создали у меня ощущение, что я – член сообщества, а не сторонний наблюдатель».

Сюзан Линтон прекрасно подводит черту под обсуждением: «Я бы даже сказала, что история успеха Linux – скорее Mint, чем Ubuntu. Mint начался с видения одного человека и стал заметным в пейзаже Linux; Ubuntu начался с больших денег и, как скажут некоторые, купил свой путь наверх. Linux Mint преуспел старомодным способом: «упорно работай и предлагай нечто стоящее».

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