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

Bug#994008: marked as done (debian-policy: Clarify relationship between source and binary packages' archive areas)



Your message dated Sun, 07 Apr 2024 05:34:03 +0000
with message-id <E1rtLAJ-005xGO-RX@fasolo.debian.org>
and subject line Bug#994008: fixed in debian-policy 4.7.0.0
has caused the Debian Bug report #994008,
regarding debian-policy: Clarify relationship between source and binary packages' archive areas
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
994008: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=994008
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: debian-policy
Version: 4.6.0.1
Severity: wishlist
Tags: patch
X-Debbugs-Cc: ftpmaster@debian.org

If you have an upstream project consisting of Free source code with a
mixture of Free and non-Free dependencies, it isn't currently clear how
that should be packaged.

For example, if gnome-software added a steam plugin that was itself Free
Software, but had Depends: steam, then it would be in this situation:
the program and the flatpak and snap plugins would still be suitable
for main, but the steam plugin would need to go in contrib.

Based on the precedent seen in the bumblebee package, I believe the
ftp team's intention is that packages like this are allowed to be a
single source package in main, which builds binary packages for main
and contrib, even though this means the contrib binary packages don't
match their source package's archive area.

I think I remember talking to a ftp team member about this in person
and coming to the conclusion that there are good reasons for none of
the other possible source/binary archive area mismatches to be allowed.

In the form of a table, the allowed source/binary combinations are:

                      |        binary           |
                      | main  contrib  non-free |
     -----------------|-------------------------|
             main     |  yes    yes      -      |
     source  contrib  |   -     yes      -      |
             non-free |   -      -      yes     |

ftp team: is this correct?

If it is, I attach proposed patches for Policy. Their commit messages
attempt to capture the rationale for why the other situations are not
allowed; corrections/clarifications welcome.

Thanks,
    smcv
>From eda0f325301bd514e5ac94328dd4b5a01960634a Mon Sep 17 00:00:00 2001
From: Simon McVittie <smcv@debian.org>
Date: Thu, 9 Sep 2021 15:43:20 +0100
Subject: [PATCH 1/2] archive: Point out that mixed main/contrib source
 packages can exist

Most source packages produce only binary packages in the same archive
area, but a few source packages in main (such as bumblebee) produce
a mixture of main and contrib binary packages.

If an upstream project is in this situation (for example a program with
optional plugins that have non-free dependencies) it isn't entirely
obvious how to package it; clarify that a single source package in main
is considered to be appropriate in this case, as long as no non-free
build-dependencies are required.

Signed-off-by: Simon McVittie <smcv@debian.org>
---
 policy/ch-archive.rst | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/policy/ch-archive.rst b/policy/ch-archive.rst
index ab04261..7829601 100644
--- a/policy/ch-archive.rst
+++ b/policy/ch-archive.rst
@@ -130,6 +130,19 @@ In addition, the packages in *main*
 
 - must meet all policy requirements presented in this manual.
 
+If a source package is in the *main* archive area, then each of the
+binary packages that it produces must be in either the *main* or *contrib*
+archive area. Each binary package's archive area is indicated by its
+``Section`` field: see :ref:`s-subsections`.
+
+When a *main* source package has a mixture of *main* and *contrib*
+binary packages, the source package and the *main* binary packages must
+follow the requirements for *main* packages, but the *contrib* binary
+packages may follow the weaker requirements for *contrib* packages.
+In particular, build-dependencies outside *main* are not allowed in
+these source packages, but the *contrib* binary packages may have runtime
+dependencies outside *main*.
+
 .. _s-contrib:
 
 The contrib archive area
-- 
2.33.0

>From 0b855a4a0dbb348269388985fc45c7887376a245 Mon Sep 17 00:00:00 2001
From: Simon McVittie <smcv@debian.org>
Date: Thu, 9 Sep 2021 15:53:20 +0100
Subject: [PATCH 2/2] archive: Clarify binaries produced by contrib and
 non-free source

A source package outside main cannot produce main binary packages, because
we want main to be self-contained: if you download all main source
packages, that should give you the source code of all main binary
packages.

A source package in contrib cannot produce non-free binary packages,
because by definition contrib only contains free software (with non-free
dependencies, but those are not part of the source code).

A source package in non-free cannot produce contrib binary packages,
because we want main + contrib to be self-contained: if you download
all main or contrib source packages, that should give you the source
code of all main and contrib binary packages.

Signed-off-by: Simon McVittie <smcv@debian.org>
---
 policy/ch-archive.rst | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/policy/ch-archive.rst b/policy/ch-archive.rst
index 7829601..35b44bb 100644
--- a/policy/ch-archive.rst
+++ b/policy/ch-archive.rst
@@ -169,6 +169,10 @@ Examples of packages which would be included in *contrib* are:
 -  wrapper packages or other sorts of free accessories for non-free
    programs.
 
+If a source package is in the *contrib* archive area, then each of the
+binary packages that it produces must also be in the *contrib* archive
+area.
+
 .. _s-non-free:
 
 The non-free archive area
@@ -191,6 +195,10 @@ In addition, the packages in *non-free*
 -  must meet all policy requirements presented in this manual that it is
    possible for them to meet.  [#]_
 
+If a source package is in the *non-free* archive area, then each of the
+binary packages that it produces must also be in the *non-free* archive
+area.
+
 .. _s-pkgcopyright:
 
 Copyright considerations
-- 
2.33.0


--- End Message ---
--- Begin Message ---
Source: debian-policy
Source-Version: 4.7.0.0
Done: Sean Whitton <spwhitton@spwhitton.name>

We believe that the bug you reported is fixed in the latest version of
debian-policy, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 994008@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Sean Whitton <spwhitton@spwhitton.name> (supplier of updated debian-policy package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Sun, 07 Apr 2024 13:08:55 +0800
Source: debian-policy
Architecture: source
Version: 4.7.0.0
Distribution: unstable
Urgency: medium
Maintainer: Debian Policy Editors <debian-policy@lists.debian.org>
Changed-By: Sean Whitton <spwhitton@spwhitton.name>
Closes: 963524 968226 970234 994008 1029211 1035733 1039102 1068192
Changes:
 debian-policy (4.7.0.0) unstable; urgency=medium
 .
   [ Sean Whitton ]
   * Policy: Prefer native overriding mechanisms to diversions & alternatives
     Wording: Luca Boccassi <bluca@debian.org>
     Seconded: Sean Whitton <spwhitton@spwhitton.name>
     Seconded: Russ Allbery <rra@debian.org>
     Seconded: Holger Levsen <holger@layer-acht.org>
     Closes: #1035733
   * Policy: Improve alternative build dependency discussion
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Wouter Verhelst <wouter@debian.org>
     Seconded: Sean Whitton <spwhitton@spwhitton.name>
     Closes: #968226
   * Policy: No network access for required targets for contrib & non-free
     Wording: Aurelien Jarno <aurel32@debian.org>
     Seconded: Sam Hartman <hartmans@debian.org>
     Seconded: Tobias Frost <tobi@debian.org>
     Seconded: Holger Levsen <holger@layer-acht.org>
     Closes: #1068192
 .
   [ Russ Allbery ]
   * Policy: Add mention of the new non-free-firmware archive area
     Wording: Gunnar Wolf <gwolf@gwolf.org>
     Seconded: Holger Levsen <holger@layer-acht.org>
     Seconded: Russ Allbery <rra@debian.org>
     Closes: #1029211
   * Policy: Source packages in main may build binary packages in contrib
     Wording: Simon McVittie <smcv@debian.org>
     Seconded: Holger Levsen <holger@layer-acht.org>
     Seconded: Russ Allbery <rra@debian.org>
     Closes: #994008
   * Policy: Allow hard links in source packages
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Helmut Grohne <helmut@subdivi.de>
     Seconded: Guillem Jover <guillem@debian.org>
     Closes: #970234
   * Policy: Binary and Description fields may be absent in .changes
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Sam Hartman <hartmans@debian.org>
     Seconded: Guillem Jover <guillem@debian.org>
     Closes: #963524
   * Policy: systemd units are required to start and stop system services
     Wording: Luca Boccassi <bluca@debian.org>
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Luca Boccassi <bluca@debian.org>
     Seconded: Sam Hartman <hartmans@debian.org>
     Closes: #1039102
Checksums-Sha1:
 cceb560f2e75c99e38aade67c89ee61e09e7a3e5 2136 debian-policy_4.7.0.0.dsc
 fb76348525ee83aa8b75eee50d1d0d166997ca5d 560352 debian-policy_4.7.0.0.tar.xz
Checksums-Sha256:
 57cf3ee833405240396b40cc9ee65568c09cb9bd421c8cfdec1ff03cba287319 2136 debian-policy_4.7.0.0.dsc
 cc53cfec06db76e6a26dd61b6f4f8015e95637fc67d5715c54487507ee113a40 560352 debian-policy_4.7.0.0.tar.xz
Files:
 ab2b8b895ec9092a064a72cf0665c47a 2136 doc optional debian-policy_4.7.0.0.dsc
 2f658f4169866f3db703cf78e96dcb9a 560352 doc optional debian-policy_4.7.0.0.tar.xz

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEm5FwB64DDjbk/CSLaVt65L8GYkAFAmYSLcMACgkQaVt65L8G
YkCyJg//cXSHspKUQgje2QUDvo+FMIEWjg8sYUUHhdnq6xLHlc8fxcID1V1kH7F0
bGSzmfJyBTbALWDTmrr9O5dIkSy7Fe4D+qY95r0wuWJ0F2GNyL4sYyBUMwdtevgj
ZoDoO69R/Z9ae54ouFMNg7q8gioWM2HZyvz7Fi8i2fTOfjl1RkAaVgP5IzOSL7OY
AdOPuLRA4OxzwmdoIyuDfzE3ypXA+EThMIRzmsQfeHS2+9WTaqpXCF9DxoSRhrl2
F3K+KATvfd78aWlN3aF3dFbDck4oz2wx+3CH0Q0kFZhlQPs/oXiiRA5Sz1d3ILfK
fX8k0FAATlPWxEEXTsrYPjPQ0Pp6sJKr10K3iZr4RHBOdH9y+XTNavEw+5M5V2Ga
x0ht/HeZwgrGyxJeBJ+SOgZ1WE02UbJVBwPtaR2IVlLJNJH7p5Sjo3JXfwUKcVFG
o+8VcACg+wilO40lynWSVm7/QBFt9BzjOTXiVO7FJsCrYv0sJQFZwlQOdI5oAwEs
FQvxBJKnuYrEjU5q6wsImZSbose+Gz5ptapjb1AE506GZG0CmjUNRwlAGHOGY16L
8SIBByrOGNh867wy7prMBoifwfjP6OMKQpw8DcKKmMGOpoc8ob5nw+ERf2FSCxym
A8qgNRwVoRN4WMvcPcTNcCzhNnITqpNIFcy2ME0o9P1fI6ujgzQ=
=KSE/
-----END PGP SIGNATURE-----

Attachment: pgpES2oONPzLy.pgp
Description: PGP signature


--- End Message ---

Reply to: