[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Jessie sufficiently stable for general use?



Brian wrote:
> But what do we think about this as a procedure? [1]
> 
>   apt-get update
>   apt-get -y upgrade
>   aptitude -y upgrade
>   apt-get -y dist-upgrade
>   aptitude -y dist-upgrade
>   apt-get -y autoremove

I first see that and it shocks me somewhat.  I didn't understand why
there would be a recommendation to use apt-get and aptitude one after
the other.  Usually those are alternatives and so it would be one or
the other.  I go look at the bug you referenced and read the
discussion.  My comments further down.

I wouldn't ever recommend dist-upgrade -y.  It just might produce a
bad solution and will then want to remove everything.  Just recently
on 2015-02-28 my Sid system tried for the new perl packages.  Due to
some issue the upgrade surrounding libcommon-sense-perl wanted to
remove everything associated with perl on my system.  I needed to wait
for the next archive update before it was settled.  It just isn't safe
for an automated upgrade.  It is possible to configure apt
specifically with APT::Get::Remove "false" to avoid this but that
would get in the way of normal use of apt.

Running upgrade -y with is fine.  I don't see a way to get in trouble
with it.  This illustrates one of the reasons I think 'upgrade' is
still very valuable even when also needing to run dist-upgrade.  You
can fire off upgrade -y without fear or nervousness.  Then when
running dist-upgrade the problem is simpler and the review of the
actions is also much simpler.

> When asked about it the response was [1]:
> 
>   First apt-get upgrade does the easy upgrades.
>   Then aptitude upgrade does the slightly harder upgrades (new packages).
>   Then apt-get dist-upgrade does the easy dist-upgrades.
>   Then aptitude dist-upgrade does the harder dist-upgrades where manual
>   intervention via the GUI might be needed.
> 
> [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=780028

I have these thoughts about it.  But I am rushed and didn't spend a
huge amount of time with a considered opinion.

1. I don't think it *should* be needed to run aptitude after having
run apt-get.  The goal of those programs is to be equivalent in end
result.  They are completely different however and might not actually
accomplish the same result.  I think if it is then it is simply an
accident that exists at this moment in time and won't be necessary in
previous or later releases.

2. The only times I have seen the need for running one of aptitude or
apt-get instead of the other one was due to bugs and deficiencies in
the solution engine.  Time goes by.  People have improved both since
the last round of issues that I remember.  In a previous Debian
release aptitude had been recommended due to this.  Time passed and
code changes were implemented all around.  Now it is back to being the
reverse.  In many ways friendly competition here helps both.

3. Having read the bug discussion I see they are concerned about what
appears to me to be "the accidental solution result" of the two to be
different in that particular case.  (Which I don't want to mention
because I don't want to rathole into that topic here and just
mentioning it would.)  I didn't see it as a general issue either way.

4. My understanding (possibly flawed) is that aptitude's upgrade is a
dist-upgrade.  And therefore they have undocumented use of "aptitude
upgrade" in order to discourage it.  I thought they only documented
and recommend "aptitude safe-upgrade" or "aptitude full-upgrade" these
days.  Therefore the above doesn't match best practices for aptitude.
In order to get the "apt-get upgrade" behavior out of aptitude I think
it is "aptitude --no-new-installs safe-upgrade".  Having done
"aptitude upgrade" I think the following "apt-get dist-upgrade" won't
ever have any work to do.  Or if it does then it is a deficiency of
aptitude.

5. It looked to me to be more of a cargo cult science rather than real
science.  I think they were simply trying to cover all possibilities
by doing both with the thinking of how could one go wrong if you used
both?

Bottom line is that I think people that prefer apt-get (like me) would
say that only apt-get is necessary and will write the recipe to only
use apt-get.  People that prefer aptitude will say that only aptitude
is necessary and will write the recipe to only use aptitude.  I think
that is fine.  Friendly competition of features between the tools can
be a win for the user.  For the most part I expect either to be
interchangeable with the other.  I would like to see a two recipe
solution where one uses apt-get and one uses aptitude.  I think they
would be equivalent to each other.

Full disclosure is that I prefer apt-get over aptitude.  Speed and
performance is one reason since apt-get is a lot faster.  However for
people who like to manually shape the solution and have spent the time
to learn the tool I can see aptitude being very good for them.  I have
not invested the time to learn aptitude's interactive interface.
Using apt-get produces the same result of crafting solutions but in
the different way of using different command line commands.  It is six
of one or a half dozen of the other.

Bob

Attachment: signature.asc
Description: Digital signature


Reply to: