Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

When ever I updated packages, (they update) I receive the following message about TeXLive:

dpkg: warning: parsing file '/var/lib/dpkg/status' near line 2888 package 'texlive-local':
 missing maintainer

This doesn't mess up the packages downloading or upgrading. I would like to have this stop though.

How can I do this?

share|improve this question
    
I've never heard of a package called texlive-local. Where does it come from? Is this a locally built package? –  Faheem Mitha Oct 4 '13 at 8:02
    
@FaheemMitha probably a PPA. –  Braiam Oct 4 '13 at 22:46
add comment

2 Answers

The package texlive-local is malformed. The Maintainer field in packages is mandatory, even though it is not used for any technical reason — it's more of a social requirement to give some tracability to all packages. The lack of this field does not cause any problem, but it's something that shouldn't happen, so dpkg is warning you. All official packages do have that field.

The warning message would go away if you removed the texlive-local package or if you upgraded to a version with a Maintainer field. I recommend that you recommend to the maintainer of that package to add a Maintainer field with their email address. It goes into debian/control in the source tree.

In the meantime, you can get rid of the warning by editing the package database and adding that field manually. Edit /var/lib/dpkg/status, search for a line containing exactly Package: texlive-local, and add a line containing Maintainer: someone@example.com just below (the address should be syntactically well-formed, but it doesn't have to be valid if you would prefer not to put somebody's name in there).

share|improve this answer
add comment

Lucky you! You have backups! And even more, they are made daily without you knowing! So, to restore the files just run:

sudo rm /var/lib/dpkg/status
sudo cp /var/backups/dpkg.status.0 /var/lib/dpkg/status
sudo apt-get update

Done!

If you need even older files there are more from where to pick:

ls /var/backups/dpkg.status*
/var/backups/dpkg.status.0     /var/backups/dpkg.status.4.gz
/var/backups/dpkg.status.1.gz  /var/backups/dpkg.status.5.gz
/var/backups/dpkg.status.2.gz  /var/backups/dpkg.status.6.gz
/var/backups/dpkg.status.3.gz

Just uncompress them using gunzip:

gunzip -c /var/backups/dpkg.status.6.gz > /var/lib/dpkg/status

My own post in AskUbuntu: http://askubuntu.com/a/343620/169736

If the backups are no good, another way is doing a list of the doc directory contents:

sudo -i
ls /usr/share/doc | \
      grep -v [A-Z] | \
      grep -v '^texmf$' | \
      grep -v '^debian$' | \
      awk '{print $1 " install"}' | \
      dpkg --set-selections

http://www.debianhelp.co.uk/debianproblem.htm

share|improve this answer
1  
I just added a maintainer after size around line 2887 and I think that worked. I can report back in a few days if it truly worked. –  dustin Oct 4 '13 at 4:02
    
This was not just today that you saw it, but very old, right? That's why the backups were no good. –  Braiam Oct 4 '13 at 4:04
    
I have seen it for awhile but decided to ask about it. –  dustin Oct 4 '13 at 4:04
    
That's a bad idea — restoring from a backup only works to undo the last action, and dustin doesn't want to undo the last action. –  Gilles Oct 4 '13 at 22:28
    
@Gilles it is the most popular action all around (googling /var/lib/dpkg/status with missing corrupted parsing recommends using the backups) for fixing this message and I added another one to nuke the status which as you see, do not use a backup. –  Braiam Oct 4 '13 at 22:34
show 1 more comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.