Hi,

On 8/15/25 20:23, Lucas Nussbaum wrote:

There is another debate below this: if Debian's workflow is different from a
standard forge workflow, does Debian need to change, or the forge?

Could it be that the standard forge workflow is optimized for
organizations with a few projects, while in many cases, Debian's
organizations (teams) deal with many projects (packages) that require an
additional layer of consistency that is difficult to standardize?

We're doing quite a few things differently than other software projects:

 - the source tree for each package is an overlay file system
- Debian-specific patches are kept in a branch that is continually rebased and seldom fully merged
 - we archive imported artifacts
- packages must be self-contained and may not retrieve artifacts from the network

None of these are handled well by existing forges, even for those where other software projects could benefit from them. The CI system that comes closest to declarative artifacts is SourceHut's -- the rest of the world just writes a CMakeFile with "FetchContent" and hits the download server every few minutes.

The overlay and the perpetually-rebased branch are somewhat related. Neither can be inspected through the forge's web interface, and neither has a good and consistent mapping onto git, even though git should be predestined for that, because we are stacking multiple layers of version control here:

 - the imported source tree comes from another VCS, and
- the branch of Debian patches is itself version-controlled, because we want to archive it for older versions of packages, we want to track changes on it, and we want to collaborate on it.

So far, the majority of packages chooses to track changes to the changes in git, and use tools outside of git for rebasing the branch. These tools, again, are not available through forges.

   Simon

Reply via email to