Почему репозитории Ubuntu не имеют последних версий программного обеспечения?

132

Почему пакеты в официальных репозиториях Ubuntu старше последних версий (вверх по течению) от Debian Sid, PPAs, авторов и т. д.?

    
задан Thomas Ward 15.06.2012 в 16:20
источник

7 ответов

113

Релиз Ubuntu проходит через несколько этапов, прежде чем он фактически сделает его публичным как готовый продукт:

  • Некоторое время, прежде чем Ubuntu запускает выпуск, он замораживает свои пакеты в определенный момент.

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

  • Как только релиз произойдет, дополнительные изменения в этих пакетах произойдут только для устранения ошибок и проблем безопасности. Больше нет обновлений для пакетов в официальном репозитории, даже если выпущены новые версии пакетов.

Новая версия пакетов последовательно импортируется (из Debian) для следующей версии Ubuntu, пока не произойдет следующее замораживание, и тот же процесс повторяется.

В качестве примера вы можете ознакомиться с расписанием выпуска 12.04 .

Вы можете видеть, что хотя 12.04 был выпущен в апреле, в январе 12, что-то называлось Debian Import Freeze произошло.

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

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

Таким образом, хотя в версиях PPA разработчиков или в Ubuntu + 1 репозитории более высокие версии одного и того же пакета, , они будут включены в следующую версию Ubuntu.

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

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

Для лучшего понимания и интересного обзора того, что случилось с Ubuntu с 10.04 до 12.04, смотрите ReleaseSchedule - LTS на LTS и Стабильные версии обновлений для полного обзора и объяснения стабильной версии Ubuntu.

    
ответ дан Bruno Pereira 15.06.2012 в 17:01
источник
15

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

    
ответ дан psusi 15.06.2012 в 16:27
14

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

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

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

Кроме того, есть репозиторий ubuntu-backports, который может выбрать, в какие пакеты обновлений программного обеспечения не будут возникать проблемы, подобные перечисленным выше. Он не включен по умолчанию, поэтому пользователям приходится выбирать для него, что делается для устранения неожиданности того, что ваше программное обеспечение выходит из-под вас. Кроме того, это не сильно укомплектовано, поэтому я не уверен, как часто пакеты получают обновления.

Кроме того, команда SRU недавно обновила политику, которая, как мы надеемся, сделает ее более простой, чтобы получать обновления пакетов только с исправлениями.

    
ответ дан Bryce 20.06.2012 в 10:32
11

Я постараюсь ответить на ваши вопросы, основываясь на моем прошлом опыте с форумами ubuntu и планетой ubuntu.

Я думаю, мне просто интересно, как обновить APT-репозитории и кем.

Репозитории APT действительно обновляются из команды по упаковке в Ubuntu. Команда по упаковке получает все пакеты upstream от разработчиков, которые проводят первоначальное тестирование упаковки и другие вещи. Затем группа тестирования делает окончательное тестирование, давая сигнал. Но команда по упаковке и группы тестирования очень осторожны в отношении зависимостей, и ее сторона влияет на стабильную систему.

Когда есть отставание, потому что разработчик не нажал последнюю версию на соответствующий сервер?

Если вы видите изменения в восходящем потоке, тысячи разработчиков хотят продвигать свои пакеты. Но не все преуспели в основном потоке, потому что по разным причинам. Предположим, что приложение Gedit, версия 2.2 подходит и отлично работает с Dbus 2.1 и Gtk 2.4 и т. Д. Где, как версия Gedit 2.4 (очень новая), нужны Gtk 2.5 и Dbus2.3 для работы. Теперь команда по тестированию и упаковке (команда разработчиков также) не принимает этого, потому что изменение существующей системы с старым dbus и gtk с новым прерывает все. Надеюсь, у вас есть смысл адского ипостаса.

Есть ли еще большая работа для разработчиков в получении выпуска в форме, которую может использовать репозиторий?

Не для восходящего канала. Но к каналу релиза да :).

P.S: В каноническом процессе может произойти небольшое изменение, чем описано выше. Но это более или менее одинаково.

    
ответ дан Zenwalker 13.06.2012 в 19:46
11

Обычно обновления выпущенных версий Ubuntu предназначены для исправления безопасности и ошибок, примеры таких ошибок включают в себя:

  • Ошибки, которые в реальных условиях могут вызвать уязвимость безопасности. Они выполняются командой безопасности и документируются в SecurityTeam / UpdateProcedures.

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

  • Ошибки, которые при реальных обстоятельствах могут привести к потере пользовательских данных Ошибки, которые не подпадают под вышеуказанные категории, но (1) имеют явно безопасный патч и (2) влияют на приложение, а не на пакеты критической инфраструктуры (например, X.org или ядро).

  • Для выпусков долгосрочной поддержки мы регулярно хотим включить новое оборудование. Такие изменения подходят, если мы можем гарантировать, что не будем влиять на обновления существующего оборудования. Например, modaliases недавно введенных драйверов не должны пересекаться с ранее отгруженными драйверами. -Новые версии коммерческого программного обеспечения в архиве партнеров Canonical.

    -FTBFS (Fails To Build From Source) также можно рассмотреть. Обратите внимание, что в основном процесс выпуска гарантирует отсутствие двоичных файлов, которые не построены из текущего источника. Обычно эти ошибки должны быть только SRUed в сочетании с другим исправлением ошибок.

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

Взято с отличной страницы wiki StableReleaseUpdates .

    
ответ дан pl1nk 13.06.2012 в 19:38
6

Принятый ответ в ссылке fossfreedom, опубликованный как комментарий, очень хорош.

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

Вы можете найти некоторые пакеты, выпущенные в репозиторий backports, если они успешно включены в будущую версию Ubuntu, и если разработчики полагают, что она также будет работать с более ранними. Резервные копии могут быть активированы и деактивированы в Центре программного обеспечения («Редактировать > Источники программного обеспечения > Обновления» и «Неподдерживаемые обновления»)

    
ответ дан John S Gruber 30.06.2012 в 00:58
-3

Ответ не заполнен.

Есть несколько пакетов, которые могут быть установлены в версии backport из Software Center. В правой части окна, слева от кнопки «Установка / изменение», есть окно выбора, в котором вы можете изменить версию.

Exempli gratia: По умолчанию conky теперь 1.8.x , и у вас там 1.9.0 (precise-backports) в качестве backport. Конечно, сначала нужно включить backports.

Источник: Ссылка

EDIT: как указано ниже, не каждый пакет имеет backport, но вы можете иметь ранний доступ, если вам повезет.

    
ответ дан Benjamin 27.06.2012 в 01:48