[Aptitude-devel] Bug#478970: Bug#479870: aptitude should update dpkg available information on updates
Daniel Hartwig
mandyke at gmail.com
Sat Apr 28 04:51:58 UTC 2012
retitle 479870 apt updates should update dpkg/available
reassign 479870 apt,dctrl-tools
thanks
> /var/lib/dpkg/available is not created|updated complete with
> 'aptitude update', like 'dselect update' does.
If anything, all apt interfaces should do this and dctrl-tools
provides the means. Assigning to those two packages as either could
implement this.
The naïve implementation is something like:
APT::Update::Post-Invoke-Success { "[ ! -x /usr/sbin/sync-available ]
|| /usr/sbin/sync-available"; };
in apt.conf.d. However, some interactive package managers (e.g.
aptitude, synaptic) lock dpkg while those hooks are run and the above
code would fail.[1] I find no documentation on the use of
Post-Invoke-Success, or whether it is safe to assume dpkg (or any
other db) is unlocked when it is run. An alternative implementation
can notify a cron job or spawn a long-running background task to wait
for the lock being released:
APT::Update::Post-Invoke-Success {" [ ! -x /usr/sbin/sync-available ]
|| /usr/sbin/sync-available --wait &"; };
(with new "--wait" option on sync-available).
[1] http://bugs.debian.org/666130
More information about the Aptitude-devel
mailing list