2024-04-02 10:21:59 |
Juozas Pocius |
description |
I'm getting dependency conflict when trying to install vim in Ubuntu noble chroot. The dependency version it wants is older then what is available in repositories. Running apt-get install vim fails with error as shown below:
(chroot) $ sudo apt-get install vim
Reading package lists... Done
Building dependency tree... Done
Reading state information... 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:
vim : Depends: vim-common (= 2:9.1.0016-1ubuntu3) but 2:9.1.0016-1ubuntu6 is to be installed
Depends: vim-runtime (= 2:9.1.0016-1ubuntu3) but 2:9.1.0016-1ubuntu6 is to be installed
E: Unable to correct problems, you have held broken packages.
Apt-cache policy shows older version of vim available while in launchpad the newer version is shown, also the amd64 package version 2:9.1.0016-1ubuntu6 is missing from repositories, no amd64 deb within repository pool directory of repository files
(chroot) $ apt-cache policy vim
vim:
Installed: (none)
Candidate: 2:9.1.0016-1ubuntu3
Version table:
2:9.1.0016-1ubuntu3 500
500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
If vim was installed before, it would be uninstalled by upgrading vim-common and vim-runtime
My sources list file:
(chroot) $ cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu noble main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-backports main restricted universe multiverse
Contents of /etc/lsb-release
(chroot) $ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.04
DISTRIB_CODENAME=noble
DISTRIB_DESCRIPTION="Ubuntu Noble Numbat (development branch)"
Host is Ubuntu 22.04 LTS, using schroot 1.6.10 to access Ubuntu Noble chroot |
I'm getting dependency conflict when trying to install vim in Ubuntu noble chroot. The dependency version it wants is older then what is available in repositories. Running apt-get install vim fails with error as shown below:
(chroot) $ sudo apt-get install vim
Reading package lists... Done
Building dependency tree... Done
Reading state information... 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:
vim : Depends: vim-common (= 2:9.1.0016-1ubuntu3) but 2:9.1.0016-1ubuntu6 is to be installed
Depends: vim-runtime (= 2:9.1.0016-1ubuntu3) but 2:9.1.0016-1ubuntu6 is to be installed
E: Unable to correct problems, you have held broken packages.
Apt-cache policy shows older version of vim available while in launchpad the newer version is shown, also the amd64 package version 2:9.1.0016-1ubuntu6 is missing from repositories, no amd64 deb within repository pool directory of repository files
(chroot) $ apt-cache policy vim
vim:
Installed: (none)
Candidate: 2:9.1.0016-1ubuntu3
Version table:
2:9.1.0016-1ubuntu3 500
500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
If vim was installed before, it would be uninstalled by upgrading vim-common and vim-runtime
My sources list file:
(chroot) $ cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu noble main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-backports main restricted universe multiverse
Contents of /etc/lsb-release
(chroot) $ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.04
DISTRIB_CODENAME=noble
DISTRIB_DESCRIPTION="Ubuntu Noble Numbat (development branch)"
Host is Ubuntu 22.04 LTS, using schroot 1.6.10 to access Ubuntu Noble chroot
Edit: This is caused by broken apt repositories for Ubuntu Noble caused by mitigation of the related cve not yet being completed.
Workaround: Add pinning override to apt config to make noble-updates be more prefered than noble by also allowing downgrade to older version that might be uploaded later than the compromised ones.
To do that, add an apt pinning override, e.g. create a new file in /etc/apt/preferences.d/, where pinning > 1000 means allowing downgrade and installing vim and other packages correctly:
Package: *
Pin: release a=noble-updates
Pin-Priority: 1002
Package: *
Pin: release a=noble
Pin-Priority: 1001
Apt cache policy should return something like this:
Package files:
100 /var/lib/dpkg/status
release a=now
1002 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=multiverse,b=amd64
origin archive.ubuntu.com
1002 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=universe,b=amd64
origin archive.ubuntu.com
1002 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=restricted,b=amd64
origin archive.ubuntu.com
1002 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=main,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=multiverse,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=universe,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=restricted,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=main,b=amd64
origin archive.ubuntu.com
Pinned packages:
Also don't forget to check for obsolete packages by running apt list ?obsolete and remove them or install an alternative dependency if needed by checking package depends by running apt-cache depends or something alike. |
|
2024-04-02 10:24:13 |
Juozas Pocius |
description |
I'm getting dependency conflict when trying to install vim in Ubuntu noble chroot. The dependency version it wants is older then what is available in repositories. Running apt-get install vim fails with error as shown below:
(chroot) $ sudo apt-get install vim
Reading package lists... Done
Building dependency tree... Done
Reading state information... 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:
vim : Depends: vim-common (= 2:9.1.0016-1ubuntu3) but 2:9.1.0016-1ubuntu6 is to be installed
Depends: vim-runtime (= 2:9.1.0016-1ubuntu3) but 2:9.1.0016-1ubuntu6 is to be installed
E: Unable to correct problems, you have held broken packages.
Apt-cache policy shows older version of vim available while in launchpad the newer version is shown, also the amd64 package version 2:9.1.0016-1ubuntu6 is missing from repositories, no amd64 deb within repository pool directory of repository files
(chroot) $ apt-cache policy vim
vim:
Installed: (none)
Candidate: 2:9.1.0016-1ubuntu3
Version table:
2:9.1.0016-1ubuntu3 500
500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
If vim was installed before, it would be uninstalled by upgrading vim-common and vim-runtime
My sources list file:
(chroot) $ cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu noble main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-backports main restricted universe multiverse
Contents of /etc/lsb-release
(chroot) $ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.04
DISTRIB_CODENAME=noble
DISTRIB_DESCRIPTION="Ubuntu Noble Numbat (development branch)"
Host is Ubuntu 22.04 LTS, using schroot 1.6.10 to access Ubuntu Noble chroot
Edit: This is caused by broken apt repositories for Ubuntu Noble caused by mitigation of the related cve not yet being completed.
Workaround: Add pinning override to apt config to make noble-updates be more prefered than noble by also allowing downgrade to older version that might be uploaded later than the compromised ones.
To do that, add an apt pinning override, e.g. create a new file in /etc/apt/preferences.d/, where pinning > 1000 means allowing downgrade and installing vim and other packages correctly:
Package: *
Pin: release a=noble-updates
Pin-Priority: 1002
Package: *
Pin: release a=noble
Pin-Priority: 1001
Apt cache policy should return something like this:
Package files:
100 /var/lib/dpkg/status
release a=now
1002 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=multiverse,b=amd64
origin archive.ubuntu.com
1002 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=universe,b=amd64
origin archive.ubuntu.com
1002 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=restricted,b=amd64
origin archive.ubuntu.com
1002 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=main,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=multiverse,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=universe,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=restricted,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=main,b=amd64
origin archive.ubuntu.com
Pinned packages:
Also don't forget to check for obsolete packages by running apt list ?obsolete and remove them or install an alternative dependency if needed by checking package depends by running apt-cache depends or something alike. |
I'm getting dependency conflict when trying to install vim in Ubuntu noble chroot. The dependency version it wants is older then what is available in repositories. Running apt-get install vim fails with error as shown below:
(chroot) $ sudo apt-get install vim
Reading package lists... Done
Building dependency tree... Done
Reading state information... 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:
vim : Depends: vim-common (= 2:9.1.0016-1ubuntu3) but 2:9.1.0016-1ubuntu6 is to be installed
Depends: vim-runtime (= 2:9.1.0016-1ubuntu3) but 2:9.1.0016-1ubuntu6 is to be installed
E: Unable to correct problems, you have held broken packages.
Apt-cache policy shows older version of vim available while in launchpad the newer version is shown, also the amd64 package version 2:9.1.0016-1ubuntu6 is missing from repositories, no amd64 deb within repository pool directory of repository files
(chroot) $ apt-cache policy vim
vim:
Installed: (none)
Candidate: 2:9.1.0016-1ubuntu3
Version table:
2:9.1.0016-1ubuntu3 500
500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
If vim was installed before, it would be uninstalled by upgrading vim-common and vim-runtime
My sources list file:
(chroot) $ cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu noble main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-backports main restricted universe multiverse
Contents of /etc/lsb-release
(chroot) $ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.04
DISTRIB_CODENAME=noble
DISTRIB_DESCRIPTION="Ubuntu Noble Numbat (development branch)"
Host is Ubuntu 22.04 LTS, using schroot 1.6.10 to access Ubuntu Noble chroot
Edit: This is caused by broken apt repositories for Ubuntu Noble caused by mitigation of the related cve not yet being completed.
Workaround: Add pinning override to apt config to make noble-updates be more prefered than noble by also allowing downgrade to older version that might be uploaded later than the compromised ones.
To do that, add an apt pinning override, e.g. create a new file in /etc/apt/preferences.d/, where pinning > 1000 means allowing downgrade and installing vim and other packages correctly:
Package: *
Pin: release a=noble-updates
Pin-Priority: 1002
Package: *
Pin: release a=noble
Pin-Priority: 1001
Apt cache policy should return something like this:
Package files:
100 /var/lib/dpkg/status
release a=now
1002 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=multiverse,b=amd64
origin archive.ubuntu.com
1002 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=universe,b=amd64
origin archive.ubuntu.com
1002 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=restricted,b=amd64
origin archive.ubuntu.com
1002 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
release v=24.04,o=Ubuntu,a=noble-updates,n=noble,l=Ubuntu,c=main,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=multiverse,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=universe,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=restricted,b=amd64
origin archive.ubuntu.com
1001 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages
release v=24.04,o=Ubuntu,a=noble,n=noble,l=Ubuntu,c=main,b=amd64
origin archive.ubuntu.com
Pinned packages:
Also don't forget to check for obsolete packages by running apt list ?obsolete and remove them or install an alternative dependency if needed by checking package depends by running apt-cache depends or something alike.
Finaly you can run apt upgrade and apt dist-upgrade then to "downgrade" versions to ones provided by -updates archive. |
|