|
|
|
@ -89,8 +89,13 @@ if [ -f /etc/dpkg/dpkg.cfg.d/excludes ] || [ -f /etc/dpkg/dpkg.cfg.d/excludes.dp
|
|
|
|
|
apt-get upgrade
|
|
|
|
|
echo "Restoring system documentation..."
|
|
|
|
|
echo "Reinstalling packages with files in /usr/share/man/ ..."
|
|
|
|
|
# Reinstallation takes place in two steps because a single dpkg --verified
|
|
|
|
|
# command generates very long parameter list for "xargs dpkg -S" and may go
|
|
|
|
|
# over ARG_MAX. Since many packages have man pages the second download
|
|
|
|
|
# handles a much smaller amount of packages.
|
|
|
|
|
dpkg -S /usr/share/man/ |sed 's|, |\n|g;s|: [^:]*$||' | DEBIAN_FRONTEND=noninteractive xargs apt-get install --reinstall -y
|
|
|
|
|
echo "Reinstalling packages with system documentation in /usr/share/doc/ .."
|
|
|
|
|
# This step processes the packages which still have missing documentation
|
|
|
|
|
dpkg --verify --verify-format rpm | awk '/..5...... \/usr\/share\/doc/ {print $2}' | sed 's|/[^/]*$||' | sort |uniq \
|
|
|
|
|
| xargs dpkg -S | sed 's|, |\n|g;s|: [^:]*$||' | uniq | DEBIAN_FRONTEND=noninteractive xargs apt-get install --reinstall -y
|
|
|
|
|
if dpkg --verify --verify-format rpm | awk '/..5...... \/usr\/share\/doc/ {exit 1}'; then
|
|
|
|
|