do-release-upgrade crashed on UnicodeDecodeError in decode() while updateing to 13.10 from 13.04

Check out sources.list.d for any dotfiles (files starting with a period) containing binary garbage (which the python unicode decoder blows chunks on). I had this same problem and when I removed the dotfiles out of /etc/apt/sources.list.d/ it worked again.


I had a slightly different cause and solution, but the answer by user204109 helped out on this one.

Basically, I had some non-conforming utf-8 characters in files under /etc/apt/sources.list.d/ inserted by earlier dist upgrade scripts. This is, because my native language has some non ASCII characters, and apparently the localization was not quite correct earlier.

Simplest way to find the culprits is to run:

cd /etc/apt/sources.list.d
file *.list

Then open in editor each of the files that is not listed as "ASCII text" and remove any characters that seem like garbage.


Just for anyone with similar problems, the easiest solution is:

export LC_ALL=C.UTF-8
export LANG=C.UTF-8
do-release-upgrade

Easy peasy. And this works for a lot of similar UTF-8 issues related to any kind of installs. Believe me!