Если пакет доступен как deb и snap, какой метод предпочтительнее?

39

Конечно, для большинства пакетов ответ тривиален: если это какой-то инструмент или библиотека, deb - единственный вариант, а для некоторых проприетарных программ - единственная опция.

Похоже, что Ubuntu активно продвигает и продвигает пакеты Snap, ссылаясь на преимущества в упаковке, изоляции, безопасности, обновлениях и т. Д., Но все приложения, поставляемые с Ubuntu 18.04, устанавливаются как пакеты deb.

Одним из примеров является Firefox, который представляет собой пакет, который должен обновляться по соображениям безопасности, и в прошлом у него были конфликты с разработчиками пакетов распространения по поводу безопасности и брендинга (Iceweasel). Тем не менее, Canonical решила выпустить Firefox в качестве пакета deb.

Для пакетов, которые имеют как оснастку, так и deb, возникает вопрос: какой из них следует установить? И если ответ будет простым, я должен активно перенести установленный deb?

Pepijn
источник

Ответы:

35

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

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

Бруни
источник
« заинтересован в обновлении отдельных приложений без обновления всей вашей системы. » Но разве для этого не нужны PPA (особенно на launchpad.net)?
RonJohn
4
@RonJohn да, но если вы используете ppa, приложения должны быть скомпилированы со «старыми» общесистемными библиотеками. В одно мгновение приложения приносят свои библиотеки. Это проще для сопровождающих и может удержать вас от попадания в ад зависимостей, если вы случайно используете много ppa.
Бруни
Было бы здорово, если бы вы отредактировали свое объяснение PPA в своем ответе.
dcorking
1
@dcorking Я отредактировал ответ
Бруни
17

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

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

Даниэле Гамба
источник
Что касается дополнительного пространства, то в современном мире современного компьютера более чем достаточно для его операционной системы, библиотек и приложений. Только если вы имеете дело со старыми компьютерами или с «маленькими» (например, устройства Raspberry Pi и IOT), пространство будет ограничивающим фактором.
Пэдди Ландау
4
@PaddyLandau Я не могу не согласиться больше. Я думаю, что это ужасное мнение, и оно способствует расточительности
Стив Лоример
@ SteveLorimer Для меня вряд ли «расточительно» использовать массово неиспользуемое пространство на практически пустом жестком диске. Для вас это так. Придется просить, чтобы отличаться. Читатели могут сами решить, какой подход выбрать.
Пэдди Ландау
5
@PaddyLandau я не могу быть более не согласен. Я регулярно использую маленький ssd для хранения системы и большой жесткий диск для данных. Я не вижу смысла тратить деньги на дубликаты файлов
Даниэле Гамба
7
@PaddyLandau в сегодняшнем мире у нас есть мобильные устройства с небольшим хранилищем, у нас есть устройства Интернета с еще меньшим объемом памяти, у нас есть твердотельные накопители с ОС для быстрой загрузки и т. Д. Объединение всего в категорию и сказать, что это нормально быть расточительным - плохое мнение на мой взгляд. Во всяком случае, как вы говорите, нам придется просить не согласиться
Стив Лоример
4

Это очень мнительный ответ.

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

Я ошибочно установил привязки несколько раз из-за неясного / неоднозначного описания / метаданных в центре программного обеспечения. Я обнаружил, что они ухудшили мой опыт ноутбука. Те были удалены быстро.

Если приложение имеет только пакет оснастки, я бы не стал использовать само приложение.

Я опасаюсь, что однажды Снаппер скажет, что вам даже не нужна ОС.

Шри
источник
Да! Если подумать, это все равно, что продвигать расы с ошибками (каламбур). Кажется, все это связано с желанием ускорить развертывание. Что за спешка, дорогие разработчики? Вселенная не собирается разрушаться!
Шри
Мой комментарий выше был в ответ на чей-то комментарий, который, кажется, был удален. Я даже сделал +1 на это!
Шри