--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: dpkg --set-selections ignores available packages never installed or removed by dpkg
- From: Agustin Martin <agmartin@debian.org>
- Date: Fri, 15 Mar 2013 13:17:32 +0100
- Message-id: <20130315121732.GA25635@agmartin.aq.upm.es>
Package: dpkg
Version: 1.16.9
Severity: normal
Dear Maintainers,
I recently noticed that the workflow to install in a basic box the
list of extra packages present in other more complete box seems to
no longer work
full-box# dpkg --get-selections > desired-selections.txt
basic-box# dpkg --get-selections < desired-selections.txt
basic-box# apt-get upgrade
This is better seen in a chroot with following sequence
# debootstrap sid mychroot http://http.debian.net/debian
# chroot mychroot
In the chroot:
mychroot# apt-get update
mychroot# echo "joe install" | dpkg --set-selections
... dpkg: warning: package not in database at line 1: joe
mychroot# apt-get upgrade
... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
mychroot# dpkg --get-selections | grep joe
Selection seems lost. Trying with apt-get dselect-upgrade does not help
mychroot# apt-get install dselect
mychroot# apt-get dselect-upgrade
... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
mychroot# dselect update
mychroot# apt-get dselect-upgrade
... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Only if I set selections again after "dselect update" things work (althouch
only for "apt-get dselect-upgrade"). After previous commands
mychroot# echo "joe install" | dpkg --set-selections
mychroot# apt-get upgrade
... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
mychroot# apt-get dselect-upgrade
... 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
... Setting up joe (3.7-2.3) ...
--------------------
Seems that dpkg ignores setting values for packages that were never installed
or removed in the system, although they are available and can be retrieved
with apt-get. I guess "dselect update" adds apropriate entries to database
that can later be set.
IIRC this workflow is described in a number of places to clone a system, so
behavior should be fixed or clarified. If this change is intentional, some
comment should be added to dpkg man page or to README file.
Regards,
-- System Information:
Debian Release: 7.0
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'stable'), (200, 'unstable'), (1,
'experimental')
Architecture: i386 (i686)
Kernel: Linux 3.2.0-4-686-pae (SMP w/1 CPU core)
Locale: LANG=es_ES.ISO-8859-1, LC_CTYPE=es_ES.ISO-8859-1
(charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/bash
Versions of packages dpkg depends on:
ii libbz2-1.0 1.0.6-4
ii libc6 2.13-38
ii liblzma5 5.1.1alpha+20120614-2
ii libselinux1 2.1.9-5
ii tar 1.26+dfsg-0.1
ii zlib1g 1:1.2.7.dfsg-13
dpkg recommends no packages.
Versions of packages dpkg suggests:
ii apt 0.9.7.8
-- no debconf information
--
Agustin
--- End Message ---
--- Begin Message ---
Hi!
On Mon, 2017-04-17 at 09:25:31 -0400, Antoine Beaupre wrote:
> On Sat, May 04, 2013 at 02:24:01PM -0700, Jonathan Nieder wrote:
> > Index: issues.dbk
> > ===================================================================
> > --- issues.dbk (révision 10063)
> > +++ issues.dbk (copie de travail)
> > @@ -384,6 +384,24 @@
> > </para>
> > </section>
> >
> > +<section id="dpkg-set-selections">
> > + <title><command>dpkg --set-selections</command> changes</title>
> > + <para>
> > + The <command>dpkg --set-selections</command> command is now aware of the
> > + architecture of packages it selects and can only set the state for known
> > + packages. Therefore an up-to-date <filename>available</filename>
> > + database is needed for the command to be useful.
> > + </para>
> > + <para>
> > + To update the <filename>available</filename> database on an
> > + <systemitem role="package">apt</systemitem>-based system, run the
> > + <command>sync-available</command> command from the
> > + <systemitem role="package">dctrl-tools</systemitem> package.
> > + See the <ulink url="&url-wiki;Teams/Dpkg/FAQ">dpkg FAQ</ulink>
> > + for more information.
> > + </para>
> > +</section>
> > +
> > <section id="cyrus-sasl">
> > <title>Cyrus SASL SQL backends</title>
> > <para>
>
> Is this still relevant? The patch probably doesn't apply anymore, and
> this bug has been inactive for over 4 years...
>
> Should we just close this?
Yeah, not much point now I guess. And dpkg already emits warnings and
points to the FAQ so that pople can updated the available file.
Closing.
Thanks,
Guillem
--- End Message ---