web-dev-qa-db-ja.com

パッケージがdebとsnapの両方として利用可能な場合、どの方法が望ましいですか?

もちろん、ほとんどのパッケージの答えは簡単です。ツールまたはライブラリの場合、debが唯一のオプションであり、一部のプロプライエタリソフトウェアのスナップは唯一のオプションです。

Ubuntuは、パッケージ、分離、セキュリティ、更新などの利点を挙げて、Snapパッケージを大幅に推進しているようですが、Ubuntu 18.04に同梱されているすべてのアプリケーションはdebパッケージとしてインストールされています。

一例として、Firefoxがあります。これは、セキュリティ上の理由から常に最新の状態に保つ必要があり、過去にはセキュリティとブランド(Iceweasel)についてディストリビューションパッケージのメンテナと競合していました。しかし、CanonicalはFirefoxをdebパッケージとして出荷することを選択しました。

スナップとデブの両方があるパッケージの場合、これは疑問を提起します。どちらをインストールする必要がありますか?答えが簡単な場合、インストール済みのdebを積極的に移行する必要がありますか?

36
Pepijn

一般的に言って、システムライブラリに依存するほとんどのアプリケーションについては、DEBにとどまる必要があると思います。これには、この1つのライブラリを更新する場合、たとえばセキュリティ上の理由から、元のアプリケーションのメンテナーがこの脆弱性を知らなくても、このライブラリを使用するすべてのアプリケーションが恩恵を受けます。

SNAPSは、システム全体を更新せずに特定のアプリケーションを更新したい場合に適しています。例えば。 LTSリリースを使用しているが、特定のアプリケーションの最新バージョンが必要な場合。 「古い」システム全体のライブラリに対してアプリケーションをコンパイルする必要のあるPPAと比較すると、アプリケーションは簡単に独自のライブラリを持ち込みます。これはメンテナーにとってより簡単であり、多くのPPAを使用する場合に依存地獄に着陸するのを妨げるかもしれません。

33
Bruni

スナップの主な欠点の1つは、すべてのソフトウェアに独自の依存関係があり、debパッケージはシステム全体で共有依存関係を使用するため、必要なスペースがはるかに少ないことです。

スナップのユーティリティは、システムを分離したままにする(たとえば、独自のバイナリから)場合、またはパッケージ自体が、インストールしたものとは異なる依存関係(たとえば、最近のもの)に依存する場合に提供されます。

15
Daniele Gamba

これは非常に考え抜かれた答えです。

私は個人的に常にdebまたはその他の包括的なパッケージを使用しています。 Linuxが意味するオープンなエコシステムとは異なり、スナップは壁に囲まれた庭のように感じるので、スナップを使用しません。

ソフトウェアセンターの説明/メタデータが不明瞭/曖昧であるため、誤ってスナップを数回インストールしました。彼らは私のラップトップの経験を低下させることがわかりました。それらはすぐに削除されました。

アプリにスナップパッケージのみがある場合、アプリ自体は使用しません。

私は、いつの日かあなたがOSさえ必要としないと言うかもしれないと心配しています。

4
Sri