Что приводит к устаревшим пользовательским приложениям?

В настоящее время я думаю о полном переходе на дистрибутив Linux. Мне действительно нравится Ubuntu, но у меня есть некоторые опасения по поводу устаревших (пользовательских) приложений.

Рекомендуется использовать официальные репозитории для установки любого программного обеспечения (я знаю, что есть и другие возможности, такие как ppas и т. Д.). Насколько я знаю, приложения, которые находятся в этом репозитории, не обновляются для конкретной версии Ubuntu (например, App U Ver 1.6 доступен в Ubuntu 12.10, разработчики создают версию 1.7 (без исправлений безопасности, только функциональное обновление), и это не быть доступным в официальном репозитории до Ubuntu 13.04). Есть некоторые исключения, такие как Firefox, но для большинства приложений (функциональных) обновлений в 1 итерации Ubuntu нет. Я также знаю, что есть дистрибутивы, которые следуют модели скользящего выпуска. Там вы получаете обновления очень скоро после их выпуска. Недостатком является стабильность. Возможно, вы сломаете свою систему с помощью обновления.

Я просто хотел спросить, что приводит к этой ситуации с технической стороны. Насколько я понимаю, должно быть возможно обновить все виды пользовательских приложений (Chromium, Gimp, ... - все, что не является частью самой операционной системы), без нарушения каких-либо существенных системных функций (как это имеет место в Windows / Mac OS X, очень неприятно сломать вашу систему обновлением некоторых пользовательских приложений).

Это из-за проблем обратной совместимости с некоторыми библиотеками?

Так, например. Приложение X требует функции из Lib A (версия 1.0). Приложение Y требует еще одну функцию из Lib A (версия 1.1). Разработчики из Lib A решили отказаться от конкретной функции, которая необходима в App X в версии 1.1. Если пользователь устанавливает приложение Y, для которого требуется версия Lib A в версии 1.1, версия Lib A будет обновлена ​​с версии 1.0 до 1.1. В этом случае вы нарушите функциональность App X.

  • Может ли это произойти?
  • Как механизм обновления для библиотек в Linux? Будет ли обновление перезаписывать предыдущую версию библиотеки?
  • Используют ли системные критические компоненты библиотеки, которые также используются в пользовательских приложениях? (Таким образом, если библиотека обновляется с точки зрения обновления пользовательского приложения, может ли это нарушить функциональность системы?)

Если ситуация не имеет ничего общего с библиотеками, не могли бы вы объяснить, какие возможные проблемы приводят к этому? Ситуация?

Спасибо!

-1
задан 16 May 2013 в 17:13

2 ответа

В дополнение к другому ответу , который хорош :

Обычно не одобряют делать статические сборки или использовать не-релизные версии библиотек.

Прямое опровержение сравнения Windows - это то, как пользователь может иметь 3 или 4 разные версии msvcrt. Это просто не видно пользователю.

Вы могли бы сделать аналогичный аргумент против некоторых приложений в OSX (где могли бы иметь место статическая сборка или связывание библиотек).

Сколько приложений и устройств на других платформах поставляется с не просто старыми, но действительно древними версиями libpng, например?

0
ответ дан 16 May 2013 в 17:13

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

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

    Чтобы справиться с этим, в Ubuntu есть два типа стандартных выпусков релизов и Long Term Stable (LTS). Те из нас, кто настаивает на стабильности по сравнению с функциями, используют только релизы LTS и обновляются только до следующего релиза LTS через несколько месяцев после его выпуска. выпущенный, чтобы быть уверенным, что если у него есть какие-либо проблемы, он был проверен достаточным количеством людей, что проблемы будут найдены и исправлены Релизы LTS также, как правило, менее радикальны, чем не-LTS, поскольку различия между следующим выпуском LTS и предыдущим выпуском LTS будут небольшими: новые идеи проверяются на стандартных выпусках

    .

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

  • Даты выпуска: Недавний выпуск Raring Ringtail взволновал людей, и, как вы можете видеть из этой ветки на форумах Ubuntu , люди ждали, чтобы загрузить ее, как только это было выпущено. Такое событие волнует людей и помогает продвигать Linux в целом и Ubuntu в частности. Если бы программное обеспечение обновлялось на регулярной основе, было бы мало выбора между последним выпуском и полностью обновленным старым выпуском. Маркетинговая возможность будет потеряна.

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

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

0
ответ дан 16 May 2013 в 17:13

Другие вопросы по тегам:

Похожие вопросы: