Package: apt Version: 0.6.46.4-0.1 Severity: wishlist *** Please type your report below this line *** Unfortunately, I run a laptop with an (at best) shoddy harddrive (which I'll replace when I can afford it), and it's a harddrive that crashes and loses files with reckless abandon (thank god for my backup drive). Every so often, it loses a file from /usr/bin or /usr/lib, with understandably horrid results.
What I'd really like to do is have a way of testing my system for packages with missing/broken files. For example, I'd really like to run "apt-busted iceweasel" and then the program would test for the existence (and possibly correct MD5 or CRC32 checksum) of all the files installed by the iceweasel package. If any of the files didn't check out, "apt-busted" would list the package, the non-working files, and give the user the option to reinstall the broken package. Possible useful arguments would include: "--depend" Tests installed dependencies of the mentioned package. "--recommend" Tests installed recommended packages of the mentioned package. "--suggest" Tests installed suggested packages of the mentioned package. "--checksum" Tests for the correct checksum of each file, in addition to mere existence and correct size tests. This assumes of course, checksums for individual files are built into Debian packages which may not be the case, but would be wonderful if true. "--recursive=<# of levels>/all" Tests each installed package (based on command-line arguments) depended/recommended/suggested by the mentioned package, # levels deep. Or tests all installed d/r/s packages mentioned: until packages have no further dependencies or a circular dependency loop is achieved. "--everything!!!" Tests every package on the system. Would likely take years to complete, but would be worth the effort. To ensure correct verification packages tested would have to be downloaded into the apt-cache, if they weren't already there, to be testable. After each run, "apt-busted" would provide a list of packages and files that didn't verify correctly, and then offer the user the option to reinstall the mentioned, possibly broken packages/files. I know this is a crazy pie-in-the-sky idea, but it would give a beautiful verifiability and error-recovery to the Debian system. Thanks so much for reading this idea, Nick Daly -- Package-specific info: -- apt-config dump -- APT ""; APT::Architecture "i386"; APT::Build-Essential ""; APT::Build-Essential:: "build-essential"; APT::Authentication ""; APT::Authentication::TrustCDROM "true"; APT::Periodic ""; APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Download-Upgradeable-Packages "0"; Dir "/"; Dir::State "var/lib/apt/"; Dir::State::lists "lists/"; Dir::State::cdroms "cdroms.list"; Dir::State::userstatus "status.user"; Dir::State::status "/var/lib/dpkg/status"; Dir::Cache "var/cache/apt/"; Dir::Cache::archives "archives/"; Dir::Cache::srcpkgcache "srcpkgcache.bin"; Dir::Cache::pkgcache "pkgcache.bin"; Dir::Etc "etc/apt/"; Dir::Etc::sourcelist "sources.list"; Dir::Etc::sourceparts "sources.list.d"; Dir::Etc::vendorlist "vendors.list"; Dir::Etc::vendorparts "vendors.list.d"; Dir::Etc::main "apt.conf"; Dir::Etc::parts "apt.conf.d"; Dir::Etc::preferences "preferences"; Dir::Bin ""; Dir::Bin::methods "/usr/lib/apt/methods"; Dir::Bin::dpkg "/usr/bin/dpkg"; DPkg ""; DPkg::Pre-Install-Pkgs ""; DPkg::Pre-Install-Pkgs:: "if dpkg -s apt-listbugs | grep -q '^Status: .* ok ins$DPkg::Pre-Install-Pkgs:: "/usr/bin/apt-listchanges --apt || test $? -ne 10"; DPkg::Pre-Install-Pkgs:: "/usr/sbin/dpkg-preconfigure --apt || true"; DPkg::Tools ""; DPkg::Tools::Options ""; DPkg::Tools::Options::/usr/bin/apt-listchanges ""; DPkg::Tools::Options::/usr/bin/apt-listchanges::Version "2"; -- /etc/apt/preferences -- Package: * Pin: release o=Unofficial Multimedia Packages Pin-Priority: 450 Package: * Pin: release o=Debian a=stable Pin-Priority: 550 -- /etc/apt/sources.list -- deb http://mirror.peer1.net/debian/ stable main #contrib non-free deb-src http://mirror.peer1.net/debian/ stable main # contrib non-free # deb http://ftp.us.debian.org/debian/ stable main #non-free contrib # deb-src http://ftp.us.debian.org/debian/ stable main deb http://security.debian.org/ etch/updates main contrib non-free deb-src http://security.debian.org/ etch/updates main contrib non-free # backports #deb http://www.backports.org/debian etch-backports main contrib non-free # virtualbox #deb http://www.virtualbox.org/debian etch non-free # pidgin # deb http://people.backports.org/~tretkowski/etch/ ./ # deb-src http://people.backports.org/~tretkowski/etch/ ./ # media! deb http://www.debian-multimedia.org/ stable main # wine deb http://wine.budgetdedicated.com/apt/ etch main # deb-src http://wine.budgetdedicated.com/apt/ etch main # splash screen! # deb http://splashy.alioth.debian.org/debian/ unstable main #Splasy! # cinelerra # deb http://www.kiberpipa.org/~minmax/cinelerra/builds/etch/ ./ # deb-src http://www.kiberpipa.org/~minmax/cinelerra/builds/etch/ ./ # beryl # deb http://debian.beryl-project.org/ etch main # enlightenment 17 # deb http://debian.alphagemini.org/debian/ unstable main -- System Information: Debian Release: 4.0 APT prefers stable APT policy: (500, 'stable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-5-686 Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Versions of packages apt depends on: ii debian-archive-keyring 2007.07.31~etch1 GnuPG archive keys of the Debian a ii libc6 2.5-9+b1 GNU C Library: Shared libraries ii libgcc1 1:4.1.1-21 GCC support library ii libstdc++6 4.1.1-21 The GNU Standard C++ Library v3 apt recommends no packages. -- no debconf information ____________________________________________________________________________________ Looking for last minute shopping deals? Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsearch/category.php?category=shopping -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]