Is incus 6.0.4 from ubuntu 25.10 different than incus 6.0.4 from debian?

Hello,

I’m setting up a third incus server -on an up-to-date Ubuntu 25.10 system- and I am facing difficulties I did not have with the first two (1st: incusOS, 2nd: incus on a up-to-date debian trixie system).

For example:

  • There are no journal available from journalctl (No journal files were found)
  • Instances do not get IPv4 connectivity (only IPv6 and no DNS)
    • Restarting systemd-networkd timeouts with no specify error
    • Running dhclient eth0 gets me an IPv4 configuration but still no DNS
      • /etc/resolv.conf is a symlink to /run/systemd/resolve/stub-resolv.conf
      • but cat /etc/resolv.conf throws an error cat: /etc/resolv.conf: No such file or directory
      • systemd-resolved appears to be started but cannot be restarted (same timeout error systemd-networkd)
  • incus webui does not work, it says Error: The server doesn’t have a web UI installed

There a probably many other problems, but I don’t see why as incus on debian and ubuntu look to be based on the same version:

  • 6.0.4-2 on ubuntu 25.10
  • 6.0.4-2+deb13u4 on debian trixie

Any idea why? Any idea on how to have incus from ubuntu work “correctly”?

Tell me if you need any additional information!

thank you:-)

Oki, someone suggested I use ‘incus’ from the zabbly repository. The doc says “It is often possible to use those packages on other non-LTS Ubuntu releases by picking the closest LTS release prior to the Ubuntu version being run.

So I did setup the repository with Suites: noble (the name of Ubuntu 24.04).

Then:

$ sudo apt update

$ sudo apt install incus
Solving dependencies… Error!
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

Unsatisfied dependencies:
incus : Depends: incus-base (= 1:6.21-ubuntu24.04-202602110129) but it is not going to be installed
Depends: genisoimage but it is not going to be installed
Depends: librados2 but it is not going to be installed
Depends: librbd1 but it is not going to be installed
Depends: libspice-server1 but it is not going to be installed
Depends: libusbredirparser1t64 but it is not going to be installed
Error: Unable to satisfy dependencies. Reached two conflicting decisions:

incus-base:amd64=1:6.21-ubuntu24.04-202602110129 is selected for install because:

incus:amd64=1:6.21-ubuntu24.04-202602110129 is selected for install

incus:amd64=1:6.21-ubuntu24.04-202602110129 Depends incus-base (= 1:6.21-ubuntu24.04-202602110129)

incus-base:amd64=1:6.21-ubuntu24.04-202602110129 Depends libfuse3-3
but none of the choices are installable:
[no choices]

Do you think that something that can be worked around (and sticking to Ubuntu 25.10) ?

One way to solve it to change the priority for the packages. Take a look at this Zabbly Incus will not install on Ubuntu Pro subscribed hosts discussion. It might solve your dependency problem?

Great! There may be one way to solve this!

I will be away for the week to come, but will post back after that with, hopefully, good news!

Thank you!

After a more carefull look at the error and with some help it appears that incus-base depends on the libfuse3-3 package, but this package got renamed to libfuse3-4 due to a a library soname change.

I tried using the incus package from the daily repository, but the package still depends on libfuse3-3 which is not available on ubuntu 25.10.

As libfuse3-4 is already installed, I tried installing a dummy package to let the system believe libfuse3-3 is installed with this steps

  • Create the directory structure: mkdir -p ~/libfuse3-3-fix/DEBIAN && cd ~/libfuse3-3-fix
  • Create the DEBIAN/control file with this content:
Package: libfuse3-3
Version: 3.99-dummy
Section: misc
Priority: optional
Architecture: all
Provides: libfuse3-3
Maintainer: You <you@example.com>
Description: Dummy package for libfuse3-3 compatibility
 Creates symlink from libfuse3.so.4 to libfuse3.so.3.
  • Create the DEBIAN/postinst script:
#!/bin/sh
set -e
if [ ! -e /usr/lib/x86_64-linux-gnu/libfuse3.so.3 ]; then
    ln -s /usr/lib/x86_64-linux-gnu/libfuse3.so.4 /usr/lib/x86_64-linux-gnu/libfuse3.so.3
fi
exit 0
  • Create the DEBIAN/prerm script:
#!/bin/sh
set -e
if [ -L /usr/lib/x86_64-linux-gnu/libfuse3.so.3 ]; then
    target=$(readlink /usr/lib/x86_64-linux-gnu/libfuse3.so.3)
    if [ "$target" = "/usr/lib/x86_64-linux-gnu/libfuse3.so.4" ]; then
        rm /usr/lib/x86_64-linux-gnu/libfuse3.so.3
    fi
fi
exit 0
  • Make them executables: chmod 755 DEBIAN/{prerm,postinst}
  • Build and install the package, then check and confirm the symlink is there :
cd ..
dpkg-deb --root-owner-group --build libfuse3-3-fix libfuse3-3-dummy.deb
sudo dpkg -i libfuse3-3-dummy.deb
ls -l /usr/lib/x86_64-linux-gnu/libfuse3.so.*
  • Install incus and optionnaly incus-ui-canonical: sudo apt install incus incus-ui-canonical

Hopefully this hack won’t come with too many surprises!

@stgraber Could the incus dependencies be updated to reflect the libfuse3-3 to libfuse3-4 package renaming?

A side note. When you want to figure out which package gets installed when you run a command like sudo apt install incus, you run apt policy incus.

Below is a stock Ubuntu 24.04, therefore the Incus package is the one from the universe repository. If you were to install Incus, the Candidate is 6.0.0-1ubuntu0.3, which is the updated package, still from universe.

$ apt policy incus
incus:
  Installed: (none)
  Candidate: 6.0.0-1ubuntu0.3
  Version table:
     6.0.0-1ubuntu0.3 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages
        500 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages
     6.0.0-1 500
        500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages

If you have activated Ubuntu Pro, then you have an extra package for Incus, which may cause conflicts. Here’s the output AFTER we activated Ubuntu Pro (esm-apps is enabled). The esm is the keyword here. And in this case, the ESM package trumps all other packages. Note the 510 number below, which is the priority, and it’s higher than in the universe repository.

$ apt policy incus
incus:
  Installed: (none)
  Candidate: 6.0.0-1ubuntu0.3+esm2
  Version table:
     6.0.0-1ubuntu0.3+esm2 510
        510 https://esm.ubuntu.com/apps/ubuntu noble-apps-security/main amd64 Packages
     6.0.0-1ubuntu0.3 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages
        500 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages
     6.0.0-1 500
        500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages