[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Single broken package blocks whole package management



On Wed 05 Jan 2022 at 14:32:57 (+0100), Urs Thuermann wrote:
> After an dist-upgrade from Raspian 8 (jessie) to 9.13 (stretch)
> hundreds of packages still need to be upgraded and aptitude reports
> numerous conflicts.
> 
> I first wanted to upgrade everything which doesn't causes any
> conflicts, which fails because of problems in wolfram-engine:
> 
>     root@uranus:~# aptitude safe-upgrade --no-new-installs -RZ
>     Resolving dependencies...                
>     open: 2242; closed: 1906; defer: 121; conflict: 311
>     The following packages will be upgraded:
>       acl <+36.9 kB>  adduser <-222 kB>  alacarte <-20.5 kB>  
>       alsa-utils <+198 kB>  aspell-en <+95.2 kB>  avahi-daemon <+53.2 kB>  
>       [...]
>       xserver-common <+53.2 kB>  xserver-xorg <+1024 B>  
>       xserver-xorg-input-all <+1024 B>  xterm <+163 kB>  
>     The following partially installed packages will be configured:
>       debconf-utils  
>     The following packages are RECOMMENDED but will NOT be installed:
>       at-spi2-core  bsd-mailx  cinnamon  dunst  exfat-utils  fonts-piboto  
>       gdisk  gnome-accessibility-themes  gnome-flashback  gnome-screenshot
>       [...]
>       xfce4-notifyd  xfonts-base  xserver-xorg-input-wacom  
>       xserver-xorg-legacy  
>     663 packages upgraded, 0 newly installed, 0 to remove and 344 not upgraded.
>     Need to get 0 B/283 MB of archives. After unpacking 89.8 MB will be used.
>     Do you want to continue? [Y/n/?] 
>     Reading changelogs... Done               
>     Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/^(.*?)(\\)?\${ <-- HERE ([^{}]+)}(.*)$/ at /usr/share/perl5/Debconf/Question.pm line 72.
>     Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^}]+)}/ at /usr/share/perl5/Debconf/Config.pm line 30.
>     Extracting templates from packages: 100%
>     Preconfiguring packages ...
>     dpkg: unrecoverable fatal error, aborting:
>      files list file for package 'wolfram-engine' contains empty filename
>     E: Sub-process /usr/bin/dpkg returned an error code (2)
>     Failed to perform requested operation on package.  Trying to recover:
> 
>     root@uranus:~#

Debian buster here.

$ ls -l /usr/share/perl5/Debconf/Question.pm
-rw-r--r-- 1 root root 5867 Oct  1 04:39 /usr/share/perl5/Debconf/Question.pm
$ 

$ grep -A1 -B1 '(\\\\)' /usr/share/perl5/Debconf/Question.pm
        my $escape;
        while ($rest =~ m/^(.*?)(\\)?\$\{([^{}]+)\}(.*)$/sg) {
                $result.=$1;  # copy anything before the variable
$ 

So edit /usr/share/perl5/Debconf/Question.pm and insert a \ before
the {, just as the message indicates.

> I tried to remove packages wolfram-engine and wolframscript, also
> tried to remove debconf-utils, but everything fails with the same
> error message:
> 
>     root@uranus:~# dpkg --force-all -P wolfram-engine 
>     dpkg: unrecoverable fatal error, aborting:
>      files list file for package 'wolfram-engine' contains empty filename
> 
> Also, upgrading a single package that's completely unrelated, is not
> possible:
> 
>     root@uranus:~# aptitude install acl
>     The following packages will be upgraded: 
>       acl libacl1 
>     The following partially installed packages will be configured:
>       debconf-utils{b} 
>     2 packages upgraded, 0 newly installed, 0 to remove and 1005 not upgraded.
>     Need to get 0 B/80.7 kB of archives. After unpacking 49.2 kB will be used.
>     The following packages have unmet dependencies:
>      debconf-utils : Depends: debconf (= 1.5.61) but 1.5.56+deb8u1 is installed and it is kept back.
>     The following actions will resolve these dependencies:
> 
>          Remove the following packages:
>     1)     debconf-utils               
> 
> 
> 
>     Accept this solution? [Y/n/q/?] 
>     The following packages will be REMOVED:
>       debconf-utils{a} 
>     The following packages will be upgraded:
>       acl libacl1 
>     2 packages upgraded, 0 newly installed, 1 to remove and 1005 not upgraded.
>     Need to get 0 B/80.7 kB of archives. After unpacking 58.4 kB will be freed.
>     Do you want to continue? [Y/n/?] 
>     Reading changelogs... Done               
>     Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/^(.*?)(\\)?\${ <-- HERE ([^{}]+)}(.*)$/ at /usr/share/perl5/Debconf/Question.pm line 72.
>     Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^}]+)}/ at /usr/share/perl5/Debconf/Config.pm line 30.
>     dpkg: unrecoverable fatal error, aborting:
>      files list file for package 'wolfram-engine' contains empty filename
>     E: Sub-process /usr/bin/dpkg returned an error code (2)
>     Failed to perform requested operation on package.  Trying to recover:
> 
>     root@uranus:~#
>     
> What else can I do to get the package management working again?

Cheers,
David.


Reply to: