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

Bug#998867: debootstrap: --no-merged-usr became a no-op



There are multiple issues reported in a single bug.

> This means that I cannot create a Debian chroot from Debian unstable from 10 years ago from snapshot.debian.org without merged-/usr and thus my chroot will behave differently as it did back then.
> Please re-enable --no-merged-usr so that I can re-create old chroots from snapshot.d.o again.

I don't think debootstrap has such goals, or requirement to be able to
bootstrap rolling release without a changing codename like
unstable/sid. debootstrap already sets options that may not be
supported or lead to incorrect chroots if debootstrap & scripts are
used from too far away time window for a rolling release. If you
desire to re-create a debootstrap of unstable as it looked 10 years
ago, it is best to do it using 10 years old debootstrap from the said
snapshot archive too.

Note that stable/testing are not affected as much, because the rolling
alias is resolved to a codename, and hence doing debootstrap from an
old snapshot of "stable" will do what the codename "lenny" wants,
although there is no guarantee that current debootstrap will resolve
things the same way as the 10 year old debootstrap did.

Allowing --no-merged-usr option unguarded may lead to users creating
incorrect installations and chroots for the future releases,
especially since packages can assume merged-usr in the upcoming
releases.

I wonder if I can do some further checks, I.e. if unstable, and the
InRelease / Release Date is old, do split-usr. I.e. anything before
2022. Effectively implement a time guard "old-sid" vs "new-sid", since
the codename for sid has not changed. Thus allowing to bootstrap old
sid snapshots in a manner closer to what old debootstrap from said
snapshot would do. But still wIthout any guarantees that it will be
identical.

> Also, build chroots must still be created without merged-usr for sid/bookworm, until something's been done to migrate user systems.

But Julien, you said that buildds run stable, meaning they are
unaffected by this debootstrap change in sid/bookworm.

> Please point out what you plan to do about this change in debootstrap so that I can adapt the mmdebstrap autopkgtest accordingly.

I did notice the mmdebstrap autopkgtest regression. I also noticed
that mmdebstrap does not support --merged-usr flag, and instead offers
three ways of creating chroots that are merged-usr.
To match the current debootstrap behaviour in sid, as currently
implemented in debootstrap in sid, it seems to me that mmdebstrap
should auto-enable
`--setup-hook=/usr/share/mmdebstrap/hooks/merged-usr/setup00.sh` for
sid/bookworm, but somehow continue to honor user supplied
--setup-hooks (append? override?) I was going to file a bug report
about that after using mmdebstrap, as I have not used it yet and not
sure how that would fit into UX and user expectations.

-- 
Regards,

Dimitri.


Reply to: