Wednesday, April 24, 2024
11
rated 0 times [  11] [ 0]  / answers: 1 / hits: 7947  / 2 Years ago, sun, december 12, 2021, 11:32:54

Let's have a metapackage which depends on the following packages



Depends: A (=2),
B (=2),
C (=2)


Note the '=' - I want to install these particular versions, not the most recent ones.



Additionally:



B depends on A(>=1)



C depends on B(>=1) and A(>=1)



If the most recent versions of A,B,C in the repository are 2 then this works.



Since I have put version 3 of A and version 3 of B in the repo sudo apt-get install my-meta-package refuses to finish with the following info:



The following packages have unmet dependencies:
my-meta-package: Depends: B (= 2) but 3 is to be installed
Depends: A (= 2) but 3 is to be installed


If I manually install versions 2 of A and B then the metapackage installs correctly, which strongly suggests that there is no hidden dependency on A3 or B3. This is not a solution for the problem as the metapackage is installed automatically on many machines.



QUESTION: What to do to make sudo apt-get install my-meta-package install versions 2,2,2?



Additionally, is there a way I could get an extended info what actually creates the need for version 3 of A and version 3 of B?


More From » dependencies

 Answers
7

You have to select the particular versions to install, and install them all at the same time that you install the meta-package.



sudo apt-get install meta-package package1=2 package2=2 package3=2


Like int_ua's answer says, you can find out reverse dependencies with this:



apt-cache rdepends package


If you want to know more information about any of those packages (available versions, dependencies, and lots more), use this:



apt-cache show package


After you finish installing them, and want to keep them at those versions while doing system upgrades, you will need to use apt-pinning as suggested by belacqua.



APT pinning




The APT pinning feature allows administrators to force APT to choose
particular versions of packages which may be available in different
versions from different repositories. This allows administrators to
ensure that packages are not upgraded to versions which may conflict
with other packages on the system, or that have not been sufficiently
tested for unwelcome changes. In order to do this, the pins in APT's
preferences file (/etc/apt/preferences) must be modified.



[#37399] Monday, December 13, 2021, 2 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
tocklftime

Total Points: 110
Total Questions: 109
Total Answers: 100

Location: Mayotte
Member since Mon, Sep 12, 2022
2 Years ago
;