OK, I start with my 100% `stable` (`jessie`) system up-to-date.  IOW,
after `apt-get update`, `apt-get upgrade` reports that there are no
candidates for upgrading:

    % sudo apt-get upgrade
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    Calculating upgrade... Done
    0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Now, I add to my `/etc/apt/sources.list` file the last two lines shown below:

    deb       http://http.us.debian.org/debian     jessie
main   contrib   non-free
    deb-src   http://http.us.debian.org/debian     jessie
main   contrib

    deb       http://http.us.debian.org/debian     jessie-updates
main   contrib
    deb-src   http://http.us.debian.org/debian     jessie-updates
main   contrib

    deb       http://security.debian.org/          jessie/updates
main   contrib   non-free
    deb-src   http://security.debian.org/          jessie/updates
main   contrib   non-free

    deb       http://http.us.debian.org/debian     stretch
main   contrib   non-free
    deb-src   http://http.us.debian.org/debian     stretch
main   contrib

Also, I set the contents of my `/etc/apt/preferences` file to this
(the file was empty before):

    Package: *
      Pin: release a=stable

(BTW, both my `/etc/apt/sources.list.d` and `/etc/apt/preferences.d`
directories are empty.)

Then, I re-run `apt-get update`.

Given the contents of my `/etc/apt/preferences` file, which specifies
that everything should be pinned at `stable`, I expected that the two
new lines in my `/etc/apt/sources.list` would be essentially
irrelevant.  In particular, I expected that `apt-get upgrade` would
still report that there was nothing to upgrade.

To my surprise, this is far from the case: the `apt-get upgrade`
dialog reports: "962 upgraded, 0 newly installed, 0 to remove and 590
not upgraded."

How come there are any upgrades at all (let alone hundreds of them)
when `/etc/apt/preferences` requires that everything sould be pinned
at `stable`?

Thanks in advance!

kj

P.S. FWIW, ultimately, what I want to perform a very controlled,
tightly-targeted upgrade of my R-related packages (i.e. `r-base` and
friends) to `stretch`/`testing`.  IOW, I want to keep the non-`jessie`
packages installed in my system to the absolute minimum that is
compatible with upgrading R to `stretch`/`testing`.

I thought that setting my `/etc/apt/preferences` file as shown below,
coupled with the `/etc/apt/sources.list` file shown earlier, would do
the trick:

    Package: *
      Pin: release a=stable

    Package: r-*
      Pin: release a=testing

But my complete failure to predict the results of the experiment
described in the main part of this post tells me that I probably have
the whole thing wrong.

Reply via email to