[focal] cannot resolve dependency when installing a package depending on 'chrony' since 245.4-4ubuntu3.21
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
apt (Ubuntu) |
Won't Fix
|
Low
|
Unassigned | ||
Focal |
Won't Fix
|
Low
|
Unassigned | ||
systemd (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Focal |
Invalid
|
Low
|
Unassigned |
Bug Description
Hello,
Since the publishing of version 245.4-4ubuntu3.21 on focal-updates, we cannot install our product.
Our product depends on specifically chrony for the time-daemon, but apt cannot resolve the dependency anymore when systemd 245.4-4ubuntu3.20 is installed.
It might be specific to systemd-timesyncd, or an issue with apt itself but I am not sure.
Reproduced using the "hello" package by modifying its dependencies:
> root@ubuntu2004:~# apt download hello
> Get:1 http://
> Get:2 http://
> Fetched 28.3 kB in 0s (95.6 kB/s)
> W: Download is performed unsandboxed as root as file '/root/
> root@ubuntu2004:~# dpkg-deb -R hello_2.
> root@ubuntu2004:~# sed -i -e '/Depends/s/$/, chrony/' hello/DEBIAN/
> root@ubuntu2004:~# dpkg -b hello/
> dpkg-deb: building package 'hello' in 'hello.deb'.
> root@ubuntu2004:~# apt -y install ./hello.deb
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> Note, selecting 'hello' instead of './hello.deb'
> 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:
>
> The following packages have unmet dependencies:
> hello : Depends: chrony
> E: Unable to correct problems, you have held broken packages.
The issue can be fixed by upgrading systemd to 245.4-4ubuntu3.21:
> root@ubuntu2004:~# apt -y install systemd
[...]
> Setting up systemd (245.4-4ubuntu3.21) ...
> Setting up systemd-timesyncd (245.4-4ubuntu3.21) ...
[...]
> root@ubuntu2004:~# apt -y install ./hello.deb
[...]
> The following packages will be REMOVED:
> systemd-timesyncd
> The following NEW packages will be installed:
> chrony hello
[...]
But that solution is a bit annoying as our customers might not want to upgrade systemd for some reason.
OR by manually installing chrony:
> root@ubuntu2004:~# apt -y install chrony
[...]
> The following packages will be REMOVED:
> systemd-timesyncd
> The following NEW packages will be installed:
> chrony
[...]
> root@ubuntu2004:~# apt -y install ./hello.deb
[...]
> The following NEW packages will be installed:
> hello
[...]
Conflict with enabled debug logs:
> root@ubuntu2004:~# apt -o Debug::
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> Note, selecting 'hello' instead of './hello.deb'
> Starting pkgProblemResolver with broken count: 1
> Starting 2 pkgProblemResolver with broken count: 1
> Investigating (0) hello:amd64 < none -> 2.10-2ubuntu2 @un puN Ib >
> Broken hello:amd64 Depends on chrony:amd64 < none | 3.5-6ubuntu6.2 @un uH >
> Considering chrony:amd64 1 as a solution to hello:amd64 9999
> Re-Instated chrony:amd64
> Investigating (0) systemd-
> Broken systemd-
> Conflicts//Breaks against version 1:4.2.8p12+
> Considering chrony:amd64 1 as a solution to systemd-
> Added chrony:amd64 to the remove list
> Conflicts//Breaks against version 1:6.2p3-4 for openntpd but that is not InstVer, ignoring
> Conflicts//Breaks against version 1.1.8+dfsg1-4build1 for ntpsec but that is not InstVer, ignoring
> Conflicts//Breaks against version 1:4.2.8p12+
> Conflicts//Breaks against version 3.5-6ubuntu6 for chrony but that is not InstVer, ignoring
> Fixing systemd-
> Investigating (1) hello:amd64 < none -> 2.10-2ubuntu2 @un puN Ib >
> Broken hello:amd64 Depends on chrony:amd64 < none | 3.5-6ubuntu6.2 @un uH >
> Considering chrony:amd64 1 as a solution to hello:amd64 9999
> Considering chrony:amd64 1 as a solution to hello:amd64 9999
> Considering maas:amd64 0 as a solution to hello:amd64 9999
> Re-Instated apparmor:amd64
> Re-Instated liblzo2-2:amd64
> Re-Instated squashfs-
> Re-Instated dbus-user-
> Re-Instated snapd:amd64
> Re-Instated maas:amd64
> Investigating (1) maas:amd64 < none -> 1:0.7 @un uN Ib >
> Broken maas:amd64 Conflicts on isc-dhcp-
> Considering isc-dhcp-
> Holding Back maas:amd64 rather than change isc-dhcp-
> Investigating (2) hello:amd64 < none -> 2.10-2ubuntu2 @un puN Ib >
> Broken hello:amd64 Depends on chrony:amd64 < none | 3.5-6ubuntu6.2 @un uH >
> Considering chrony:amd64 1 as a solution to hello:amd64 9999
> Considering chrony:amd64 1 as a solution to hello:amd64 9999
> Considering maas:amd64 0 as a solution to hello:amd64 9999
> Considering maas:amd64 0 as a solution to hello:amd64 9999
> Done
> 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:
>
> The following packages have unmet dependencies:
> hello : Depends: chrony
> E: Unable to correct problems, you have held broken packages.
Thank you for any help you can provide on that matter!
Changed in systemd (Ubuntu Focal): | |
status: | New → Invalid |
Hello again,
New info on this issue.
I was trying to reproduce on ARM (and I did), but there is a but. And it's kind of an important one.
Our ARM VMs had version 245.4-4ubuntu3.19 installed, and the issue was not seen. When upgrading to 245.4-4ubuntu3.20, the issue appears.
So it seems that the issue is upgrading *from* 245.4-4ubuntu3.20, and not *to* 245.4-4ubuntu3.21.
I don't know what can be done then, maybe remove the version 245.4-4ubuntu3.20 from repositories? It might be a bit aggressive...
But I am still unsure why an available version upgrade of a package creates a conflict...
Any suggestions?
Thanks!