История изменений
Исправление iZEN, (текущая версия) :
Ты понимаешь, что это два разных подхода? Либо программы, что носят всё с собой, как на винде или маке, либо apt и dnf с их зависимостями. Как ты их сочетать хочешь? Разве что все самое свежее в пакеты пихать, как в Archlinux. Но тогда стабильность теряется.
Каждый бинарный пакет должен иметь возможность установить свои правильные зависимости и обновлять их по мере надобности. Насколько я в курсе, такой технологии ещё не придумали - всё делается отдельным пакетным менеджером, а динамические библиотеки лежат по общему пути. Ответственность за правильность версий используемых библиотек лежит не на разработчиках программ и библиотек зависимостей, а на мантейнере, что автоматически сводит на нет общую надёжность такой системы - разделяемые библиотеки берутся с совместимым по версиям API/ABI, а не той конкретной версии, которую предполагает разработчик программы и надеется увидеть. В итоге программы с различными версиями библиотек могут вести себя непредсказуемо или даже вообще не работать (вылетать по ошибке segmentation fault) - тут уже пользователь жалуется мантейнеру на такое вот.
Это принцип модульности программного обеспечения, полученного из различных источников, от разных разработчиков. Хорошо то, что это поняли в Java, например, и ввели модульность на уровне среды выполнения.
Исправление iZEN, :
Ты понимаешь, что это два разных подхода? Либо программы, что носят всё с собой, как на винде или маке, либо apt и dnf с их зависимостями. Как ты их сочетать хочешь? Разве что все самое свежее в пакеты пихать, как в Archlinux. Но тогда стабильность теряется.
Каждый бинарный пакет должен иметь возможность установить свои правильные зависимости и обновлять их по мере надобности. Насколько я в курсе, такой технологии ещё не придумали - всё делается отдельным пакетным менеджером, а динамические библиотеки лежат по общему пути. Ответственность за правильность версий используемых библиотек лежит не на разработчиках программ и библиотек зависимостей, а на мантейнере, что автоматически сводит на нет общую надёжность такой системы - разделяемые библиотеки берутся с совместимым по версиям API/ABI, а не той конкретной версии, которую предполагает разработчик программы и надеется увидеть. В итоге программы с различными версиями библиотек могут вести себя непредсказуемо или даже вообще не работать (вылетать по ошибке segmentation fault) - тут уже пользователь жалуется мантейнеру на такое вот.
Исходная версия iZEN, :
Ты понимаешь, что это два разных подхода? Либо программы, что носят всё с собой, как на винде или маке, либо apt и dnf с их зависимостями. Как ты их сочетать хочешь? Разве что все самое свежее в пакеты пихать, как в Archlinux. Но тогда стабильность теряется.
Каждый бинарный пакет должен иметь возможность установить свои правильные зависимости и обновлять их по мере надобности. Насколько я в курсе, такой технологии ещё не придумали - всё делается отдельным пакетным менеджером, а динамические библиотеки лежат по общему пути. Ответственность за правильность версий используемых библиотек лежит не наразработчиках программ и библиотек, а на мантейнере, что автоматически сводит на нет общую надёжность такой системы - разделяемые библиотеки берутся с совместимым по версиям API/ABI, а не той версии, которую предполагает разработчик программы и надеется увидеть.