Cruft is a tool to look over your system for anything that shouldn't be there, but is; or for anything that should be there, but isn't. It is available as package cruft in the debian archive.
This page is meant as a place to assemble ideas and guidelines about cruft usage from perspective of a Debian package maintainer or a system administrator, before properly integrating them as package documentation.
Guidelines on creating filters and explain scripts
- try to be as specific as possible, keeping a balance with complexity. For example if the package only creates files /foo/bar /foo/bar.0 /foo/bar.1 /foo/bar.2.gz and so on, then specify two patterns: /foo/bar and /foo/bar.*, not /foo**
- before adding a file to the filter, make sure that the package actually still uses it. Some packages delete some files in a postrm script which are pure leftovers from earlier versions.
Move some Cruft functionality in dpkg
Cruft need to know which files will be removed by dpkg --purge; If those were in a machine-readable format, this would greatly reduce ad-hoc cruft ruleset, this could also make 'dpkg' itself better. proposal