
答え1
簡単に答えると、次のようになります。
aptitude remove '~sX11 ! ~Rbeaglebone'
しかし、このような状況では(多くX11 に依存するものが多いため、インタラクティブ リゾルバを使用することをお勧めします。これを行うには、--schedule-only
上記にオプションを追加し、aptitude
引数なしで再度実行します。また、1 つまたは両方のコマンドに追加する必要がある場合もあります(設定にまだ含まれていない場合)。ただし、自動解決はインターフェイスで を-o Aptitude::Auto-Fix-Broken=false
押したときにのみ実行されるため、必要ないと思います。g
ncurses インターフェイスを実行したら、 を押してe最初のソリューションを調べ、追加の削除を確認します。不要なものがある場合は、矢印キーを使用して選択し、 を押してrアクションを拒否します。 を押して.次のソリューションをロードすると、拒否が含まれないソリューションが提供されるはずです。必要に応じて繰り返し、 を押して!ソリューションを受け入れ、通常どおり続行します。
答え2
次のいずれかの方法を使用して、パッケージ「beaglebone」を「除外」し、その依存関係をすべて強制的に残すことができると思います。
$ sudo apt-mark hold <package>
または
$ echo <package> hold | sudo dpkg --set-selections
apt-mark
1つ目は、その機能を活用することですhold
。
hold
hold is used to mark a package as held back, which will prevent the
package from being automatically installed, upgraded or removed. The
command is only a wrapper around dpkg --set-selections and the state
is therefore maintained by dpkg(1) and not affected by the --file
option.
dpkg
2 番目は、パッケージを「保留」としてマークするために使用します。
--set-selections
Set package selections using file read from stdin. This file should
be in the format 'package state', where state is one of install,
hold, deinstall or purge. Blank lines and comment lines beginning
with '#' are also permitted.