Unable to update system due to dependency

Hi all.
I tried to update but i get always dipendency errors

impossibile soddisfare le dipendenze:
- unable to satisfy dependency 'perl<5.37' required by perl-io-interface

any pacman -Syyu or -Syu failed


Thanks in advance for any help

inxi -Fxz                                                                                                                                  1 ✘ 
System:
  Kernel: 6.1.41-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.1.1
    Desktop: KDE Plasma v: 5.27.6 Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Desktop Mobo: ASUSTeK model: F2A55-M LK v: Rev X.0x
    serial: <superuser required> BIOS: American Megatrends v: 6305
    date: 07/09/2013
CPU:
  Info: dual core model: AMD A4-5300 APU with Radeon HD Graphics bits: 64
    type: MT MCP arch: Piledriver rev: 1 cache: L1: 96 KiB L2: 1024 KiB
  Speed (MHz): avg: 1926 high: 2284 min/max: 1400/3400 boost: enabled cores:
    1: 2284 2: 1569 bogomips: 14013
  Flags: avx ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
  Device-1: AMD Trinity 2 [Radeon HD 7480D] vendor: ASUSTeK driver: radeon
    v: kernel arch: TeraScale-3 bus-ID: 00:01.0
  Display: x11 server: X.Org v: 21.1.8 driver: X: loaded: radeon
    unloaded: modesetting dri: r600 gpu: radeon resolution: 1280x1024~60Hz
  API: OpenGL v: 4.5 Mesa 23.0.4 renderer: AMD ARUBA (DRM 2.50.0 /
    6.1.41-1-MANJARO LLVM 15.0.7) direct-render: Yes
Audio:
  Device-1: AMD FCH Azalia vendor: ASUSTeK driver: snd_hda_intel v: kernel
    bus-ID: 00:14.2
  API: ALSA v: k6.1.41-1-MANJARO status: kernel-api
  Server-1: JACK v: 1.9.22 status: off
  Server-2: PipeWire v: 0.3.75 status: off
  Server-3: PulseAudio v: 16.1 status: active
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    vendor: ASUSTeK P8 series driver: r8169 v: kernel port: e000 bus-ID: 03:00.0
  IF: enp3s0 state: down mac: <filter>
  Device-2: Ralink RT2870/RT3070 Wireless Adapter driver: rt2800usb
    type: USB bus-ID: 1-2:3
  IF: wlp0s18f2u2 state: up mac: <filter>
  IF-ID-1: anbox0 state: down mac: <filter>
Drives:
  Local Storage: total: 1.36 TiB used: 58.43 GiB (4.2%)
  ID-1: /dev/sda vendor: Western Digital model: WD10JPCX-24UE4T0
    size: 931.51 GiB
  ID-2: /dev/sdb vendor: Crucial model: CT500MX500SSD1 size: 465.76 GiB
Partition:
  ID-1: / size: 447.71 GiB used: 58.43 GiB (13.1%) fs: ext4 dev: /dev/sdb1
Swap:
  ID-1: swap-1 type: partition size: 9.82 GiB used: 768 KiB (0.0%)
    dev: /dev/sdb2
Sensors:
  System Temperatures: cpu: 30.8 C mobo: N/A gpu: radeon temp: 17.0 C
  Fan Speeds (RPM): N/A
Info:
  Processes: 247 Uptime: 32m Memory: total: 8 GiB note: est.
  available: 8.93 GiB used: 5.83 GiB (65.3%) Init: systemd Compilers:
  gcc: 13.1.1 clang: 15.0.7 Packages: 1450 Shell: Zsh v: 5.9 inxi: 3.3.28

What do you need perl-io-interface for?
It requires perl<5.37 - the version in the repos is 5.38

It (perl-io-interface) is not in the Manjaro repo, so it is likely a package from AUR.

Check your AUR packages - they are the source of this conflict.

The use of AUR can be tricky, especially with the Manjaro stable branch.
Not so much when testing or unstable is used - then the system will be closer to Arch, which is what these AUR packages are designed for.

The practical advise:
do the update while excluding AUR packages - then try to figure out how to (re)build the AUR packages.

I’m not familiar with pamac (how to tell it to exclude AUR packages.
Use:
sudo pacman -Syu
so the core system is up to date
only then turn your attention to any AUR packages …

pacman only deals with the repo packages
pamac can handle both
do one at a time, the repo first

3 Likes
1 Like

I’ve seen this with other AUR packages as well. perl-io-interface adds the perl (version) dependency when building the package using the (then) installed/current perl. See the PKGBUILD in line 29:
https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=perl-io-interface

depends+=("perl>=$_perlver_min" "perl<$_perlver_max")

It’s blocking updates as you noticed.
One way to deal with such packages is to temporarily remove them (ignoring any dependency breakages):

$ sudo pacman -Rdd perl-io-interface

then do the system update

$ sudo pacman -Syu

and then rebuild the package in question, for exampe with pamac

$ pamac build perl-io-interface
1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.