debian dependecy hell

Lennart Sorensen lsorense-1wCw9BSqJbv44Nm34jS7GywD8/FfD2ys at public.gmane.org
Wed Aug 4 02:10:09 UTC 2004


On Tue, Aug 03, 2004 at 05:30:44PM -0400, Tim Writer wrote:
> Another way to do this is:
> 
>     % cat > /etc/apt/preferences
>     X-comment: ==================== Track testing
>     Package: *
>     Pin: release a=testing
>     Pin-Priority: 600
> 
>     X-comment: ==================== Track stable (lower priority than testing)
>     Package: *
>     Pin: release a=stable
>     Pin-Priority: 500
> 
>     X-comment: ==================== Make unstable available (for manual selection)
>     Package: *
>     Pin: release a=unstable
>     Pin-Priority: 50
>     ^D

That is a heck of a lot more complicated, and I don't think they are
exclusive of each other either.

> Using /etc/apt/preferences gives more flexibility.  You can, for example,
> prevent a particular package from being upgraded.  /etc/apt/preferences is
> documented in Chapters 5 and 6 of the Debian Reference Manual:
> 
>     http://www.debian.org/doc/manuals/reference/reference.en.html
> 
> and in the APT HOWTO:
> 
>     http://www.debian.org/doc/manuals/apt-howto/index.en.html
> 
> [snip]
> 
> > apt-showversions |grep unstable, is one way to check which packages are
> > currently from unstable on the system.  It can also show which are not
> > up to date, or which are local and I think it can list obsolete too by
> > some definition of obsolete.
> 
> I think you mean "apt-show-versions" and you'll need the apt-show-versions
> package installed, i.e.
> 
>     apt-get install apt-show-versions

Yeah I missed a '-'.

> > Once you install a package with a tagged versions, it will continue to
> > use that versions when upgrading.
> 
> Is that true?  I think it justs selects a package based on the priorities
> documented in apt_preferences(5).  For example, on my system:

Well in your case the proiorities decide what to do when you ask it to
install something.  Normally newest has highest priority.

>     halley:~# apt-show-versions | grep imagemagick
>     imagemagick/unstable upgradeable from 5:6.0.2.5-1 to 5:6.0.3.5-2
>     halley:~# apt-get -s install imagemagick
>     Reading Package Lists... Done
>     Building Dependency Tree... Done
>     imagemagick is already the newest version.
>     0 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
>     halley:~# apt-get -s -t unstable install imagemagick
>     Reading Package Lists... Done
>     Building Dependency Tree... Done
>     The following extra packages will be installed:
>       libjasper-1.701-1 libmagick6 libtiff4 libxml2
>     Suggested packages:
>       html2ps libjasper-runtime
>     Recommended packages:
>       xml-core
>     The following NEW packages will be installed:
>       libjasper-1.701-1 libtiff4
>     The following packages will be upgraded:
>       imagemagick libmagick6 libxml2
>     3 upgraded, 2 newly installed, 0 to remove and 790 not upgraded.
>     ...
> 
> Similarly,
> 
>     apt-get upgrade
> 
> won't upgrade imagemagick but
> 
>     apt-get -t unstable upgrade
> 
> will.  Along with everything else (so don't do this)!

True when using the priority overrides you are doing.  Not the case when
using what I wrote.  Then anything listed in apt-show-versions as coming
from unstable, will upgrade when unstable has a new release.  I find
that rather handy (and one of the reasons I don't use the priority
overrides method).

> [snip]
> 
> > This setup allows you to mix and match which packages you really want
> > the latest and greatest of, and which you would rather just have
> > generally work.  it doesn't always work, since sometimes a transition is
> > taking place in unstable and libs go to hell and it start wanting to
> > uninstall stuff.  In that case either don't do an upgrade, or tell it
> > which package to install the latest version of manually, and leave the
> > troublesome packages for a few days until the libs finish the
> > transition.
> 
> Yes, it's not for everybody.  If you're not comfortable with the Linux
> command line and Linux system administration but you want to use Debian as
> your desktop, straight testing is probably your best bet.  On the other hand,
> if you're doing development on Debian you probably do need to become familiar
> with apt pinning.

It certainly can be very helpful.

Lennart Sorensen
--
The Toronto Linux Users Group.      Meetings: http://tlug.ss.org
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://tlug.ss.org/subscribe.shtml





More information about the Legacy mailing list