Skip to content

Instantly share code, notes, and snippets.

@jeffersfp
Forked from icsaas/fix.sh
Created September 14, 2016 19:14
Show Gist options
  • Select an option

  • Save jeffersfp/33037aa05b042f35277a6c057930c81b to your computer and use it in GitHub Desktop.

Select an option

Save jeffersfp/33037aa05b042f35277a6c057930c81b to your computer and use it in GitHub Desktop.
dpkg: warning: files list file for package `*****' missing, assuming package has no files currently installed
#!/bin/bash
set -e
# Clean out /var/cache/apt/archives
apt-get clean
# Fill it with all the .debs we need
apt-get --reinstall -dy install $(dpkg --get-selections | grep '[[:space:]]install' | cut -f1)
DIR=$(mktemp -d -t info-XXXXXX)
for deb in /var/cache/apt/archives/*.deb
do
# Move to working directory
cd "$DIR"
# Create DEBIAN directory
mkdir -p DEBIAN
# Extract control files
dpkg-deb -e "$deb"
# Extract file list, fixing up the leading ./ and turning / into /.
dpkg-deb -c "$deb" | awk '{print $NF}' | cut -c2- | sed -e 's/^\/$/\/./' > DEBIAN/list
# Figure out binary package name
DEB=$(basename "$deb" | cut -d_ -f1)
# Copy each control file into place
cd DEBIAN
for file in *
do
cp -a "$file" /var/lib/dpkg/info/"$DEB"."$file"
done
# Clean up
cd ..
rm -rf DEBIAN
done
rmdir "$DIR"
@rubensalbukrk
Copy link
Copy Markdown

thanks, solved my problem and my linux mint 21.3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment