Приглашаем авторов

Вы пользуетесь Ubuntu и желаете поделиться секретами преодоления тех трудностей, с которыми вам пришлось столкнуться в процессе работы? Или же просто изложить алгоритм установки драйвера или настройки специфической программы, чтобы с легкостью найти в будущем? А быть может размещаете подобное в собственном блоге, но не находите благодарного читателя из-за специфики темы?

Предлагаем вам войти в команду Блога Ubuntu в Сумах, который поможет вам реализовать упомянутые выше интересы.

Узнать больше

среда, 29 сентября 2010 г.

Как создается Ubuntu

Менеджер сообщества Убунту  объясняет, как создается популярный дистрибутив.

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

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

В этой статье мы собираемся объяснить, как делается новый выпуск Ubuntu, какие навыки и талант при этом применяются и какую организационную структуру мы используем, чтобы объединить этот набор вкладов в один связанный модуль.



Регулярные выпуски


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

Этот шестимесячный период разработки и подготовки выпуска известен как Цикл Выпуска и публикуется в начале нового цикла. Как пример, текущий выпуск разработки (Ubuntu 10.10) опубликован этой странице.

Цикл разбит на несколько ключевых компонентов:

Замораживания

Замораживание — это когда определенный тип разработки должен остановиться, обычно готовый к выпуску. Есть различные типы замораживания, такие как «Замораживание UI» (изменения в элементах пользовательского интерфейса) и замораживание функций.

Альфы

Всюду по циклу выпуска мы делаем много выпусков-снапшотов, поскольку выпуск разрабатывается. Эти альфа-версии являются иногда неполными и с наличием ошибок (вследствие того, что они в процессе разработки), но обеспечивают хорошую возможность познакомиться с фичами выпуска.

Беты

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

Предвыпускная версия (Release candidate)

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

Все это начинается с Debian

Чтобы создать пакет Ubuntu, нужно взять исходный код из проектов с открытым исходным кодом (известный как апстрим) и загрузить его на машину сборки в проекте, которая создаст пакет, готовый к установке в системе Ubuntu. Эти пакеты сцепляются вместе, чтобы сформировать полный дистрибутив — от ядра, которое загружает машину, прямо до приложений, которые Вы запускаете.

Первая фаза цикла выпуска включает введение новых выпусков апстримов в Ubuntu. Чтобы сделать это, мы импортируем полный архив пакета Debian и создаем его для Ubuntu.

Мы используем Debian, потому что это — единственный самый эффективный способ усовершенствовать с апстримным кодом и потому что Debian и Ubuntu всячески подобны: например исправление ошибок (bugfixes) для Debian являются теми же исправлениями ошибок и в Ubuntu.

С этим базовым набором пакетов от Debian, импортированного в Ubuntu, мы берем ряд наших модификаций ко многим из пакетов (известные как патчи), которые преобразовывают пакет Debian в тот, который больше походит на Ubuntu.

В качестве примера, пакеты Debian для Gnome не включают многие из модификаций, которые мы делаем, такие как: варианты программного обеспечения по умолчанию, тема по умолчанию, дополнительные функции панели и т.д. Все эти патчи, которые преобразовывают пакеты Debian в пакеты Ubuntu, расположены в свободном доступе на сайте patches.ubuntu.com.

Следующим шагом мы должны решить, какую новую разработку или функцию мы хотим сделать и встроить эти разработки в новый выпуск Ubuntu. Основные решения принимаются на Саммите Разработчиков Ubuntu, расположение которой варьируется между США и Европой.

Саммит Разработчиков Ubuntu(UDS) — событие, в котором мы отправляем нашу полную команду разработки Ubuntu, и мы спонсируем значительное количество членов сообщества, чтобы следить за ходом разработки.

Недельное событие разбито на девять этапов (Настольная версия, Серверная версия, Сообщество, Мобильное, Проекты, Основы, QA, Безопасность и Ubuntu на ARM), у каждого из которых есть расписание, которое обозначает сеансы для каждого этапа в течение недели. Эти сеансы востребованы штатом Canonical, членами сообщества и организованы, чтобы обеспечить место, в котором можно обсудить и запланировать некоторые фичи, определяющие контекст нового выпуска.

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

После того, как данная сессия на Саммите, где была обсуждена какая-то определенная фича, эта фича регистрируется в специальном месте — на Launchpad, запись на Launchpad обрисовывает в общих чертах цель функции и ссылки к спецификации. Спецификация — страница wiki на wiki.ubuntu.com, которая полностью обрисовывает в общих чертах план того, какую проблему функция решает и как это должно быть реализовано.

Большинство спецификаций включает следующую информацию:

Сводка — Что делает функция(фича).
Объяснение — Почему мы нуждаемся в функции.
Варианты использования — Типичные примеры, которык в общих чертах описывает ее функциональность.
Контекст — Какие элементы функции будут завершены в пределах цикла.
Проект — Сам проект работ по данной функции.
План реализации — Как работает реализация и какая работа была произведена.
Нерешенные вопросы — Любые неразрешенные проблемы.

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

Источник  перевода: http://habrahabr.ru/blogs/ubuntu/105065/

Комментариев нет:

Отправить комментарий

Примечание. Отправлять комментарии могут только участники этого блога.

Облако тегов

10.04 10.10 11.04 11.10 12.04 12.10 1C 32-bit 3D 64-bit 9.04 9.10 адресная строка анализ аплет апплет аудио батарея библиотеки блог браузер брошюра буфер обмена видео вывод горячие клавиши даунгрейд дистрибутив драйвер журнал загрузка захват звук ИБП игра интернет интерфейс кириллица клавиатура книга книжка кнопки кодеки командная строка комбинации клавиш коммерция компиляция конзоль копирование латинница локаль маршрутизация монтирование мультиплеер назначение клавиш настройка обновление образ объединение окно опрос оптимизация офис переименование печать плеер подкачка поиск потоковое аудио принтер проблема радио разделы разрезка раскладка клавиатуры рейтинг репозиторий русский сборка сеть скачать статистика Сумы темы терминал торрент транслит Украина установка файлы фильтр цитата эмуляция ядро ac3 adobe adventure air alsa AMD amd64 android apt ATI audio Avant Avenue avidemux boot camera Canon canonical capture cat Catalyst cdemu cdrom cgroups chrome 9 clipboard commodore compiz console cuneiform cups deadbeaf deadbeef deb debian deluge desura djvu document foundation downgrade dpkg driver dvd error ethernet firefox flac flash foobar2000 ftp game games GDM gecko getlibs Gimp git gnash gnome gnome shell go-oo grep grub gscan2pdf h.264 hdmi Homenet hotkeys hp html5 ice icq ifconfig intel internet ipwatchd iso jabber kde kernel keyboard layout knoppix koffice lame lexmark libreoffice lightdm lightspark Linux livecd lossless lts Lubuntu lucid LXDE MacOS mencoder microsoft mint mobile mozilla mp3 mplayer natty narwhal nautilus netbook network notebook Nvidia ocr ogg Oneiric Ocelot openoffice Opera oracle pdf peppermint phaser 3010 phaser 3040 php picture pidgin player polipo postscript Powercom ppa pppoe PPTP proxy pulseaudio python QR radiotray ru_UA russian Sauerbraten scan server shipit. shooter skype sound split squeeze stable streaming sun super os survival horror svn swap Telesweet tesseract theme thunar thunderbird tor torrent transcode translit ualinux Ubuntu ubuntu one Ubuntu Software Center ukrainian unity update-manager UPS usb usb-to-serial usb. com uTorrent vfat via video VLC VPN wavpack web-сервер Windows Wine Writer X-window x264 xerox xfce xmpp xonar dg xrandr xubuntu xvid zbar zend µTorrent