Control: tags -1 wontfix David Paul: > On Sat, 18 Dec 2021 10:49:14 +0100 > Niels Thykier <ni...@thykier.net> wrote: > >> Hi, >> >> I think I am missing a rationale / What problem are you trying to >> solve with this change/RFC?. >> >> Thanks, >> ~Niels > > Let me try to clarify. I was recently locally building a source package > that listed 'Rules-Requires-Root: no' in its debian/control file. > Seeing that, I attempted, I think not unreasonably, to execute the > binary target of the debian/rules file without using root. AKA: > ``` > $ debian/rules binary > ``` > > [...] > > My proposal is to modify both dh_testroot and Policy to remove this > requirement from case A. > > Thoughts? > > [...] I see where you are coming from.
This reminds me of #884999 in the sense that there is an assumption that Rules-Requires-Root is something that "only" involves debhelper. For most parts, I think this is a testament to how seamless we have managed to implement this feature rather than anything else. Rules-Requires-Root is an declaration/interface between packager and the person/tool involving debian/rules saying that the package *supports* building without (fake)root. And as you noted, DEB_RULES_REQUIRES_ROOT is there for the builder to declare its support for this feature towards debian/rules. The important thing here: debian/rules, not debhelper. Said debian/rules could implement this feature however it wants (provided it follows the "bit-for-bit" reproducible requirement), which implies it *can* do things beyond what debhelper can see - such as defining configure args based on DEB_RULES_REQUIRES_ROOT before calling into the debhelper stack and expect dh_testroot to ensure that the legacy case works. Thanks, ~Niels