[SOLVED] how to make apt-get ignore broken packages
DebianThis forum is for the discussion of Debian Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
those things require way too much work, I'm probably just gonna go with rewriting the necessary components of a major distro
Slackware is a major distro and has package management without dependency-checking. Would be much less work to install that, instead of re-inventing the wheel. Don't forget to remove the check for mounted filesystems in fsck and your backup for frequently reinstalling because of a broken system.
and that does not require too much work? m come on...
actually not as in this context 'necessary' means only what needs to be changed, right now that only includes apt-get and synaptics.
Quote:
Originally Posted by TobiSGD
Slackware is a major distro and has package management without dependency-checking. Would be much less work to install that, instead of re-inventing the wheel. Don't forget to remove the check for mounted filesystems in fsck and your backup for frequently reinstalling because of a broken system.
I still want dependency-checking, but I want to be able to skip that whenever I want to.
I've tried Slackware - the number of packages available is much, much lower and often you find yourself compiling from source (2/3 of the times it does not really work out and you end up googling for 2 hours for the solution). Things take tons of time to get to work and sometimes they simply don't work, whatever you do. (maybe that's just my lack of knowledge but those are my experiences with Slackware)
As for the backup part I've never had to reinstall my system or any part of it. Everything works flawlessly regardless of the 'broken' status of some packages.
Everything works flawlessly regardless of the 'broken' status of some packages.
No, not everything works flawlessly. Your package-manager does not.
But every one to his own. I just don't see the point in changing your package management instead of just fixing your issues. But it is up to you to do with your system what you want.
Then try to install whatever and if needed use -f.
The whole point of this is not to use -f or autoremove because that would uninstall some packages I need.
Quote:
Originally Posted by alan_ri
Also if you will post the output of:
Code:
apt-show-versions -u
If needed install apt-show-versions.
Code:
apache2.2-bin/squeeze upgradeable from 2.2.16-6 to 2.2.16-6+squeeze1
base-files/squeeze upgradeable from 6.0 to 6.0squeeze1
bind9-host/squeeze upgradeable from 1:9.7.2.dfsg.P3-1.1 to 1:9.7.3.dfsg-1~squeeze1
console-setup/squeeze upgradeable from 1.68 to 1.68+squeeze2
desktop-base/squeeze upgradeable from 6.0.5 to 6.0.5squeeze1
dnsutils/squeeze upgradeable from 1:9.7.2.dfsg.P3-1.1 to 1:9.7.3.dfsg-1~squeeze1
gdm3/squeeze upgradeable from 2.30.5-6 to 2.30.5-6squeeze2 <------------------------------- my DE
gedit/squeeze upgradeable from 2.30.4-1 to 2.30.4-1squeeze1
gedit-common/squeeze upgradeable from 2.30.4-1 to 2.30.4-1squeeze1
gnome-screensaver/squeeze upgradeable from 2.30.0-2 to 2.30.0-2squeeze1
host/squeeze upgradeable from 1:9.7.2.dfsg.P3-1.1 to 1:9.7.3.dfsg-1~squeeze1
isc-dhcp-client/squeeze upgradeable from 4.1.1-P1-15+squeeze1 to 4.1.1-P1-15+squeeze2
isc-dhcp-common/squeeze upgradeable from 4.1.1-P1-15+squeeze1 to 4.1.1-P1-15+squeeze2
keyboard-configuration/squeeze upgradeable from 1.68 to 1.68+squeeze2
libbind9-60/squeeze upgradeable from 1:9.7.2.dfsg.P3-1.1 to 1:9.7.3.dfsg-1~squeeze1
libdns69/squeeze upgradeable from 1:9.7.2.dfsg.P3-1.1 to 1:9.7.3.dfsg-1~squeeze1
libisc62/squeeze upgradeable from 1:9.7.2.dfsg.P3-1.1 to 1:9.7.3.dfsg-1~squeeze1
libisccc60/squeeze upgradeable from 1:9.7.2.dfsg.P3-1.1 to 1:9.7.3.dfsg-1~squeeze1
libisccfg62/squeeze upgradeable from 1:9.7.2.dfsg.P3-1.1 to 1:9.7.3.dfsg-1~squeeze1
liblwres60/squeeze upgradeable from 1:9.7.2.dfsg.P3-1.1 to 1:9.7.3.dfsg-1~squeeze1
libmozjs2d/squeeze upgradeable from 1.9.1.16-5 to 1.9.1.16-6
libnautilus-extension1/squeeze upgradeable from 2.30.1-2 to 2.30.1-2squeeze1
libnm-glib-vpn1/squeeze upgradeable from 0.8.1-6 to 0.8.1-6+squeeze1
libnm-glib2/squeeze upgradeable from 0.8.1-6 to 0.8.1-6+squeeze1
libnm-util1/squeeze upgradeable from 0.8.1-6 to 0.8.1-6+squeeze1
libnss3-1d/squeeze upgradeable from 3.12.8-1 to 3.12.8-1+squeeze1
libpulse-mainloop-glib0/squeeze upgradeable from 0.9.21-3 to 0.9.21-3+squeeze1
libpulse0/squeeze upgradeable from 0.9.21-3 to 0.9.21-3+squeeze1
libtiff4/squeeze upgradeable from 3.9.4-5 to 3.9.4-5+squeeze1
libvlc5/squeeze upgradeable from 1.1.3-1squeeze3 to 1.1.3-1squeeze5
libvlccore4/squeeze upgradeable from 1.1.3-1squeeze3 to 1.1.3-1squeeze5
linux-base/squeeze upgradeable from 2.6.32-30 to 2.6.32-31
linux-image-2.6.32-5-686/squeeze upgradeable from 2.6.32-30 to 2.6.32-31
nautilus/squeeze upgradeable from 2.30.1-2 to 2.30.1-2squeeze1
nautilus-data/squeeze upgradeable from 2.30.1-2 to 2.30.1-2squeeze1
python/squeeze upgradeable from 2.6.6-3+squeeze5 to 2.6.6-3+squeeze6
python-minimal/squeeze upgradeable from 2.6.6-3+squeeze5 to 2.6.6-3+squeeze6
sudo/squeeze upgradeable from 1.7.4p4-2.squeeze.1 to 1.7.4p4-2.squeeze.2
ttf-liberation/squeeze upgradeable from 1.05.2.20091019-4 to 1.05.2.20091019-4squeeze1
tzdata/squeeze upgradeable from 2010o-1 to 2011c-0squeeze1
usb-modeswitch-data/squeeze upgradeable from 20100826-1 to 20100826-1+squeeze0
vlc/squeeze upgradeable from 1.1.3-1squeeze3 to 1.1.3-1squeeze5
vlc-data/squeeze upgradeable from 1.1.3-1squeeze3 to 1.1.3-1squeeze5
vlc-nox/squeeze upgradeable from 1.1.3-1squeeze3 to 1.1.3-1squeeze5
vlc-plugin-notify/squeeze upgradeable from 1.1.3-1squeeze3 to 1.1.3-1squeeze5
vlc-plugin-pulse/squeeze upgradeable from 1.1.3-1squeeze3 to 1.1.3-1squeeze5
x11-xserver-utils/squeeze upgradeable from 7.5+2 to 7.5+3
xserver-common/squeeze upgradeable from 2:1.7.7-11 to 2:1.7.7-13
xserver-xephyr/squeeze upgradeable from 2:1.7.7-11 to 2:1.7.7-13
xserver-xorg-core/squeeze upgradeable from 2:1.7.7-11 to 2:1.7.7-13
xserver-xorg-video-intel/squeeze upgradeable from 2:2.13.0-5 to 2:2.13.0-6
xulrunner-1.9.1/squeeze upgradeable from 1.9.1.16-5 to 1.9.1.16-6
Dependencies are there for a reason and APT is configured so that it works in a way that would be useful for the majority of people who use it and APT itself does not allow broken package dependencies to exist on a system, but if someone wants to break his/her system, well I say, just do it.
APT will not brake your system, that you have to do by yourself.
You didn't want to say what do you want to install exactly, if you did, maybe something could've been done.
Just to clarify;
Quote:
-f--fix-broken Fix; attempt to correct a system with broken dependencies in place. This option, when used with install/remove, can omit any packages to permit APT to deduce a likely solution. Any Package that are specified must completely correct the problem. The option is sometimes necessary when running APT for the first time; APT itself does not allow broken package dependencies to exist on a system. It is possible that a system's dependency structure can be so corrupt as to require manual intervention (which usually means using dselect or dpkg --remove to eliminate some of the offending packages). Use of this option together with -m may produce an error in some situations. Configuration Item: APT::Get::Fix-Broken. -m--ignore-missing--fix-missing Ignore missing packages; If packages cannot be retrieved or fail the integrity check after retrieval (corrupted package files), hold back those packages and handle the result. Use of this option together with -f may produce an error in some situations. If a package is selected for installation (particularly if it is mentioned on the command line) and it could not be downloaded then it will be silently held back. Configuration Item: APT::Get::Fix-Missing. --no-download Disables downloading of packages. This is best used with --ignore-missing to force APT to use only the .debs it has already downloaded.
To note something, you can always install package manually, APT will automagically call dpkg when needed too.
Actually they aren't always there for a reason. Good example: metapackages (imo the most stupid idea ever, they should be banned). When you install gnome in debian it comes with a ton of pointless crap it 'depends' on in the package management system, but actually can run just fine without it.
Distribution: Debian Wheezy, Jessie, Sid/Experimental, playing with LFS.
Posts: 2,900
Rep:
I can't help but think this is taking the "freedom" aspect of Linux a little to far. Do a mini install and only put in what you want, better still go LFS and build your own package management system.
okay, thanks for all the suggestions. can someone please point me to a site where I can download non-meta .deb gnome packages as I'm having a hard time finding one.
Just pick the packages that you want. For example look at what the "gnome" meta package depends on, and from that list install only the packages that you want. To see the list of packages you can do:
Code:
apt-cache show gnome | grep ^Depends
For this particular case I think you'll find that one of the dependencies (gnome-desktop-environment) is also a type of meta package, so just do the same thing with that package:
Code:
apt-cache show gnome-desktop-environment | grep ^Depends
Just pick the packages that you want. For example look at what the "gnome" meta package depends on, and from that list install only the packages that you want. To see the list of packages you can do:
Code:
apt-cache show gnome | grep ^Depends
For this particular case I think you'll find that one of the dependencies (gnome-desktop-environment) is also a type of meta package, so just do the same thing with that package:
Code:
apt-cache show gnome-desktop-environment | grep ^Depends
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.