On my Librem 15 I ran a routine apt update && apt upgrade
but while that was running, the computer ground to a halt. Applications stopped responding to any clicks. So at a certain point I just had to hold the kill switch and reboot mid-upgrade. When it came back up and I tried to re-run the update and upgrade. The update goes fine but the upgrade returns the error
E: The package diffutils needs to be reinstalled, but I can't find an archive for it.
I tried following instructions to fix the error which suggested that in /var/lib/dpkg/status
I copy the status to a backup and remove the entry found here:
Package: diffutils
Essential: yes
Status: install reinstreq half-installed
Priority: required
Section: utils
Installed-Size: 1574
Maintainer: Santiago Vila <sanvila@debian.org>
Architecture: amd64
Version: 1:3.7-2
Config-Version: 1:3.7-2
Replaces: diff
Pre-Depends: libc6 (>= 2.17)
Suggests: diffutils-doc, wdiff
Description: File comparison utilities
The diffutils package provides the diff, diff3, sdiff, and cmp programs.
.
`diff' shows differences between two files, or each corresponding file
in two directories. `cmp' shows the offsets and line numbers where
two files differ. `cmp' can also show all the characters that
differ between the two files, side by side. `diff3' shows differences
among three files. `sdiff' merges two files interactively.
.
The set of differences produced by `diff' can be used to distribute
updates to text files (such as program source code) to other people.
This method is especially useful when the differences are small compared
to the complete files. Given `diff' output, the `patch' program can
update, or "patch", a copy of the file.
Homepage: http://www.gnu.org/software/diffutils/
So I made the backup, deleted the above, and ran update and upgrade. Now no error occurs but presumably just because I removed the package. Since the package is essential, I’m sure this is a bad solution. However, if I run apt install diffutils
it can’t find the package, and if I run apt install diffutils-doc
it gives the error
Package diffutils-doc is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
Any suggestions for how to fix this?
`