Package: release.debian.org User: [email protected] Usertags: transition
Dear release team, you may be aware from [email protected] discussions that things got rolling regarding a way forward from our current /usr-merge state. The results of various discussions have been recorded in DEP17[1]. The rough idea is that files in all packages move from / to /usr. I think this change qualifies as a transition and should be coordinated with you. If you disagree with this and do not want to get involved, please just close this transition request. A major blocker regarding this finalization is the file move moratorium. I note that this is given as advice/recommendation rather than being mandatory (thanks Ansgar). However, the release team also indicated enforcement[2] of it. The current best idea is to progressively lift the moratorium by documenting the current state of lifting at https://wiki.debian.org/UsrMerge (not yet documented there) and then officially repealing the moratorium while recommending to follow those guides. As we move files, we will run into issues such as lost files. Some of the issues are automatically identified by the Debian Usr Merge Analysis Tool https://salsa.debian.org/helmutg/dumat. I'm regularly updating the output https://subdivi.de/~helmut/dumat.yaml. The intention is to automatically file RC bugs for some classes of issues (e.g file conflicts), but at the time of this writing I'm still filing bugs manually. The exact way of lifting the moratorium is not clear at this time. It shall be adapted depending on the amount of (expected and unexpected) issues we face. In total, there are around 2000 affected binary packages. More than half of them is only affected due to installing systemd units. As such moving those units from / to /usr is the first step. We first move those where upstream build systems install them and debhelper is prepared to recognize units below /usr. Once that works reasonably well, dh_installsystemd shall be changed to install to /usr. This change will cause latent issues. When packages are restructured or renamed the famous file loss scenario may happen. The dumat service shall run for the entire release period and detect such issues before they hit testing. Moving beyond this step requires more preparation. While systemd still deals nicely with users in / or /usr, other tools may not and our buildds are still unmerged. We'll have to wait until DSA has updated debootstrap to SPU request from Simon McVittie. Also moving files may affect udebs and the debian-installer is still unmerged. The relevant MR addressing this needs to be merged. Once these issues have been resolved, we can move most files except for a small set of essential packages. For those, a coordinated upload moving their files will be needed as will be an upload of base-files adding the aliasing symlinks there. We probably have to use NMUs to convert remaining packages at this point. Once everything is moved, we may think we're done, but we're not. As packages are restructured throughout the release cycle, they may introduce file loss scenarios. Continued monitoring for problems until trixie is released is crucial. As problems are located, context-dependent mitigations from DEP17 are to be applied. We'll recommend that maintainers upload restructuring changes to experimental first and given quick bug filing that should reduce the number of issues in unstable and keep most issues out of testing. In any case, you can only call this transition bug finished once trixie is released. For the purpose of keeping bugs out of testing, I intend to file all relevant bugs (such as file conflicts, file loss, directory loss, ineffective diversions, missing trigger invocations, etc.) at RC severity. I hope this all makes sense to you. Let me know if you disagree about any of this. Quite probably I am missing some important aspects here. Unless there is disagreement, I intend to move forward with moving systemd units on the grounds that the moratorium only is a recommendation and this transition request. Helmut [1] https://salsa.debian.org/dep-team/deps/-/merge_requests/5 rendered version at https://subdivi.de/~helmut/dep17.html [2] https://lists.debian.org/debian-devel-announce/2022/07/msg00002.html

