パッケージバージョンが利用可能になったときに通知を受け取る

パッケージバージョンが利用可能になったときに通知を受け取る

apt-get update非常に少数のパッケージに対して新しいバージョンがリリースされた場合、これを行うためのいくつかのオプションがすでにあるかどうか疑問に思います。

使用を検討していますが、apt.confまだPost-Invoke何もしません。

答え1

apt-show-versions(同じ名前のパッケージから)を使用できます。

apt-show-versions -u

システムにインストールされているパッケージの利用可能なアップデートバージョンをすべて一覧表示します(データベースが使用されているため、前述のように実行する必要がありますapt)。apt-get update

パッケージを引数として渡すことで、apt-show-versionsリストをそのパッケージに限定することができます。

apt-show-versions -u ${YOUR_WATCHED_PACKAGES}

これにより、apt-get update探している情報が表示されます。Post-Invokeおっしゃるとおり、自動化に使用できます。

答え2

簡単な方法は、次を実行することです。

apt-get -s --only-upgrade install package1 package2 ...

これをファイルからパッケージリストを作成するスクリプトに入れて実行し、上記apt-get updateのコマンドを実行できます。

答え3

-uだから私は今、次のような結果を得ました。うまくいくようです。より多くのパッケージがサポートされれば良いでしょう。多くのパッケージを見ると、速度が遅くなる可能性があります。

/etc/apt/watch1行にパッケージ名を含むテキストファイル(#個のコメントをサポート)

/usr/local/bin/apt-watch.sh:

#!/bin/sh

test -f /etc/apt/watch || exit 0

apt-show-versions -u $(grep -v ^# /etc/apt/watch) >/tmp/apt.watch
if [ $(cat /tmp/apt.watch | wc -l) -gt 0 ] ; then
    cat /tmp/apt.watch | mail root -s '[apt watch] upgrades available'
fi

/etc/apt/apt.conf.d/99-apt-watch:

# check upgrades avaiable for watched packages
APT::Update::Post-Invoke { "[ ! -x /usr/local/bin/apt-watch.sh ] || /usr/local/bin/apt-watch.sh || true"; };

関連情報