Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.bugs.dist > #1201813
| From | Helmut Grohne <helmut@subdivi.de> |
|---|---|
| Newsgroups | linux.debian.bugs.dist |
| Subject | Bug#1073922: systemd-{container,cryptsetup,repart}: ineffective Replaces due to /usr-move (DEP17) |
| Date | 2024-06-21 12:40 +0200 |
| Message-ID | <IRJQu-4uiN-27@gated-at.bofh.it> (permalink) |
| References | <IRlXP-4ftq-1@gated-at.bofh.it> <IRlXP-4ftq-1@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
[Multipart message — attachments visible in raw view] - view raw
Control: reassign -1 systemd-container,systemd-cryptsetup,systemd-repart Control: found -1 systemd/256.1-1 Control: tags -1 + patch On Thu, Jun 20, 2024 at 10:58:23AM +0200, Helmut Grohne wrote: > Package: systemd-container,systemd-cryptsetup,cryptsetup-repart Fixed bad package cryptsetup-repart. > Let me not go into details of this problem just yet and just install > this bug as a temporary migration blocker. I shall have an update within > three working days, ideally with a patch. Thanks for your patience. The recurring theme is that systemd moved all of its files from / to /usr (expected via DEP17) and now moves components from the main systemd package into systemd-container, systemd-cryptsetup and systemd-repart. In all of these cases, affected files may be lost in upgrades from either bookworm or bookworm-backports to unstable and eventually trixie. Users upgrading from trixie to sid, will likely not experience loss unless they skip systemd versions. There are multiple mitigation techniques available. Upgrading Breaks+Replaces to Conflicts provides a relatively strong protection as long as one uses an apt-based package management tool. However, the CTTE advised that packages relevant to booting a system should also be safe when installing packages directly with dpkg and in that scenario, Conflicts are insufficient, because dpkg allows a conflicting package to be unpacked before the conflicted package is removed to facilitate a smooth handover. This is only exercised by apt when the relevant packages employ a mutual conflict, which is not the case here. As such, I also add temporary diversions that exist from preinst to postinst to protect the relevant files from loss. While I could have just written the maintainer scripts, I expect more restructuring to happen until the trixie release and hence went for a templating system. Affected files should be added (with their aliased path) to debian/$PKG.usrmergemitigate. Then a debian/rules snippet will construct relevant debian/*.preinst-usrmerge and debian/*.postinst-usrmerge snippets that substitute #USRMERGEMITIGATEPREINST# and #USRMERGEMITIGATEPOSTINST# in actual debian/*.preinst and debian/*.postinst via dh_installdeb's substitution mechanism. When adding a new debian/*.usrmergemitigate file, one also has to add these substitutions to the relevant .preinst and .postinst. I think this bears a good trade-off regarding complexity and repetition. Let me know whether you disagree with this judgement. Helmut
Back to linux.debian.bugs.dist | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Bug#1073922: systemd-{container,cryptsetup,repart}: ineffective Replaces due to /usr-move (DEP17) Helmut Grohne <helmut@subdivi.de> - 2024-06-20 11:10 +0200
Bug#1073922: systemd-{container,cryptsetup,repart}: ineffective Replaces due to /usr-move (DEP17) Helmut Grohne <helmut@subdivi.de> - 2024-06-21 12:40 +0200
Bug#1073922: systemd-{container,cryptsetup,repart}: ineffective Replaces due to /usr-move (DEP17) Luca Boccassi <bluca@debian.org> - 2024-06-23 14:40 +0200
csiph-web