Results 1 to 5 of 5
Hello.
I have intentionally installed a package with missing dependencies (dpkg -i --ignore-depends=...) and now I cannot upgrade my system unless I fix the dependencies:
root@mymachine:/root/# apt-get upgrade
Reading Package ...
- 06-12-2007 #1
Continuing to upgrade and install new packages with broken dependencies in the system
Hello.
I have intentionally installed a package with missing dependencies (dpkg -i --ignore-depends=...) and now I cannot upgrade my system unless I fix the dependencies:
Of course apt-get -f install wants to remove the package with the broken dependency, so this solution is out of question.
root@mymachine:/root/# apt-get upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
You might want to run `apt-get -f install' to correct these.
The following packages have unmet dependencies:
opennms-webapp: Depends: tomcat4 (>= 4.1.1
but it is not installable
E: Unmet dependencies. Try using -f.
What I would ideally want to do is to tell to the system to keep going without caring about this broken dependency...
Is there a way to do this?
- 06-12-2007 #2
If you use aptitude, it will suggest a variety of resolutions for your broken packages and will automatically handle whatever resolution you choose (i.e., it will take care of any holds, deletes, and upgrades necessary). See if that gives you a satisfactory solution.
Stand up and be counted as a Linux user!
- 06-12-2007 #3
Zelmo,
Thanx for your reply. I tried:
and although aptitude told me that opennms-webapp will be REMOVED, in the Continue (Y/N/?) I did:aptitude -f install my_packadge
And then aptitude reminded me that the dependencies are broken but offered to install the rest, which is exactly what I wanted to do!= opennms-webapp
Thank you Zelmo!
Now if I could take this one step further, is there a way to tell to the system to hold this package (until further notice of course) so it won't ask me every time I try to upgrade/install any new packages?
- 06-13-2007 #4
Aptitude again makes this easy. Run aptitude with no arguments, and it will pop up its ncurses frontend. Find your package by using the "/" key to bring up the search dialog; if the first hit isn't your package, keep hitting "n" until you get it (the search works exactly like in vim). When you get to your package, hit the "=" key to put a hold on it.
Note that you may need to be root for the hold to take effect. If you start aptitude as a regular user, you can get root status within the program by hitting "CTRL-t" and then "b" (or scroll down the menu that pops up after "CTRL-t"). Or you can just su to root before starting aptitude.
Once you're done, just hit "q" to quit, and "y" to confirm, and you're set. If you get stuck in aptitude's interface, hit "?" to see what key commands are available.Stand up and be counted as a Linux user!
- 06-13-2007 #5
That is great Zelmo! Thank you very much. Someone else also suggested the use of equivs. It is a package that creates dummy packages to satisfy dependencies. Here is a link for those who might be interested:
APT HOWTO - Very useful helpers
Now I can sleep again at nights!


Reply With Quote
