Debianでnon-freeパッケージを有効にするにはどうすればよいですか? SunのJava JDKをインストールしたいのですが、利用できません。
/etc/apt/sources.list
を開くと、次のような行が表示されます(URLは異なる場合があります)。
deb http://http.us.debian.org/debian stable main contrib
使用するそれぞれのURLにnon-free
を追加するだけです。つまり、
deb http://http.us.debian.org/debian stable main contrib non-free
apt-get update
を実行すると、ローカルリポジトリがパッケージリストで更新されます。
restrict必要な場合のみ、これを少しだけnon-freeの非常に特定のパッケージ(たとえば、ハードウェアのファームウェア)を使用することもできます。
これを行うには、@ Andrew Mの説明に従って/etc/apt/sources.list
を保持します。次に、Apt Pinningを使用して、現在のリリースのすべてのnon-freeパッケージをデフォルトで無効にします。
次のディレクティブを含む/etc/apt/preferences.d/non-free_policy
という名前のファイルを作成します。
Explanation: Disable packages from non-free tree by default
Package: *
Pin: release o=Debian,a=stable,l=Debian,c=non-free
Pin-Priority: -1
次に、non-freeから取得する特定のパッケージ用に別のファイルを作成します。
たとえば、ワイヤレスカード用のIntelドライバー(パッケージfirmware-iwlwifi)を追加するとします。
次の行を含むファイル名/etc/apt/preferences.d/firmware-iwlwifi_nonfree
を作成します。
Explanation: Enable package firmware-iwlwifi from non-free tree
Package: firmware-iwlwifi
Pin: release o=Debian,a=stable,l=Debian,c=non-free
Pin-Priority: 600
この設定これらの煩わしいnon-freeパッケージでパッケージが膨らむのを避けます;)
パッケージソース構成ファイルを更新する別の方法は、apt-add-repository
コマンドを使用することです(software-properties-common
パッケージから)。すべてのソースにnon-freeパッケージが必要な場合は、以下を実行します。
Sudo apt-add-repository non-free
Sudo apt-get update
に触発された回答: https://askubuntu.com/a/553847/67211