Today, I tried to update my Arch Linux desktop, and ended up with Perl dependency problem. However, I never installed those broken Perl packages directly. I thought it was due to pacman problem. After a bit of searching on Arch Linux forums, I found that it isn’t related to pacman, but AUR. Here is the error message I got when I tried to update my Arch system.
sudo pacman -Syu
Sample output:
:: Synchronizing package databases...
core 124.1 KiB 131K/s 00:01 [----------------------] 100%
extra 1667.6 KiB 221K/s 00:08 [----------------------] 100%
community 3.8 MiB 375K/s 00:10 [----------------------] 100%
multilib 176.6 KiB 189K/s 00:01 [----------------------] 100%
archlinuxfr is up to date
:: Starting full system upgrade...
:: Replace wxgtk with extra/wxgtk2? [Y/n]
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: gnome-perl: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
:: gnome-vfs-perl: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
:: gnomecanvas-perl: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
:: perl-gnome2-wnck: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
:: perl-goo-canvas: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
:: perl-gtk2-imageview: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
:: perl-gtk2-unique: installing perl (5.26.0-1) breaks dependency 'perl<5.25'
The above packages are the dependencies of Shutter screenshot tool. The actual reason of this perl dependency issue is the developer of Shutter has stopped the development two or three years. It makes use of a lot of dependencies which makes it very hard to maintain.
To solve this problem, either you should uninstall Shutter, and go for the other alternative, or just remove Shutter and all its dependencies, and then reinstall it again.
To remove shutter, run:
sudo pacman -R shutter
After removing Shutter, you need to remove all unused dependencies using command:
sudo pacman -Rns $(pacman -Qtdq)