Your message dated Tue, 15 Mar 2022 03:43:47 +0100
with message-id <Yi/[email protected]>
and subject line Re: Bug#914515: dpkg: please provide an interface to bootstrap
dpkg from zero
has caused the Debian Bug report #914515,
regarding dpkg: please provide an interface to bootstrap dpkg from zero
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
914515: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=914515
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: dpkg
Version: 1.19.2
Severity: wishlist
Hi,
lintian recently tagged mmdebstrap with uses-dpkg-database-directly
because mmdebstrap contains the string "/var/lib/dpkg" in several
places. Instead of overwriting the lintian tag in mmdebstrap, dpkg could
also gain an interface which avoids mmdebstrap having to do anything
with /var/lib/dpkg inside the chroot. Specifically, what mmdebstrap does
is the following:
- create /var/lib/dpkg, /var/lib/dpkg/triggers, /var/lib/dpkg/info,
/var/lib/dpkg/alternatives and /var/lib/dpkg/updates because dpkg
throws an error if these directories are not present
- an empty /var/lib/dpkg/status because dpkg refuses to work without
the file being present
- adds architectures to /var/lib/dpkg/arch because $(dpkg
--add-architecture) doesn't work without any packages inside the
chroot
- cleans up leftover /var/lib/dpkg/lock-frontend and /var/lib/dpkg/lock
This could be avoided if:
- dpkg would not complain anymore about non-existing directories but
instead create them if they don't exist yet
- dpkg would not complain about a non-existing status file but create
an empty one if it doesn't exist yet
- allow $(dpkg --add-architecture) to work in places other than /
- add an interface to clean up /var/lib/dpkg
Thanks!
cheers, josch
--- End Message ---
--- Begin Message ---
Version: 1.20.2
Hi!
On Fri, 2019-03-15 at 14:55:41 +0100, Johannes Schauer wrote:
> Quoting Guillem Jover (2019-03-15 05:22:32)
> > On Sat, 2018-11-24 at 10:24:09 +0100, Johannes 'josch' Schauer wrote:
> > > lintian recently tagged mmdebstrap with uses-dpkg-database-directly
> > > because
> > > mmdebstrap contains the string "/var/lib/dpkg" in several places. Instead
> > > of overwriting the lintian tag in mmdebstrap, dpkg could also gain an
> > > interface which avoids mmdebstrap having to do anything with /var/lib/dpkg
> > > inside the chroot. Specifically, what mmdebstrap does is the following:
> > >
> > > - create /var/lib/dpkg, /var/lib/dpkg/triggers, /var/lib/dpkg/info,
> > > /var/lib/dpkg/alternatives and /var/lib/dpkg/updates because dpkg
> > > throws an error if these directories are not present
> > Right, will handle those.
> >
> > > - an empty /var/lib/dpkg/status because dpkg refuses to work without
> > > the file being present
> > I've fixed this one now in a local next/bootstrap branch which I'll push out
> > tomorrow-
>
> Cool! But I'll only follow up on this in mmdebstrap once we release Buster. :)
>
> Another file that I found is required is /var/lib/dpkg/available. If this file
> does not exist (it can even be empty) then package removals will fail.
This should have been fixed initially with 1.20.0, but then a few
lingering things got fixed in 1.20.2. I'm closing this now, as I
forgot to add the closure on the changelog (which I later amended, but
that did not get picked up by debbugs).
Closing now, please feel free to reopen or file a new one if there's
anything still missing.
Thanks,
Guillem
--- End Message ---