Просмотр исходного кода

dpkg-source: Add an optional essential=yes key/value to Package-List

This makes this information available in the Sources package files, so
that when bootstrapping a new architecture all Essential:yes packages
are known in advance.

Prompted-by: Helmut Grohne <helmut@subdivi.de>
Guillem Jover лет назад: 11
Родитель
Сommit
2b5045c492
2 измененных файлов с 7 добавлено и 0 удалено
  1. 3 0
      debian/changelog
  2. 4 0
      scripts/dpkg-source.pl

+ 3 - 0
debian/changelog

@@ -29,6 +29,9 @@ dpkg (1.18.2) UNRELEASED; urgency=low
   * Add an extra level of escaping for double $(evals) in architecture.mk
     and buildflags.mk, so that the variables are computed lazily again.
     Regression introduced in dpkg 1.16.2. Closes: #793330
+  * Add binary packages Essential information to Package-List field in the
+    .dsc file, as optional essential=yes entries. This allows precomputing
+    the pseudo-essential set before starting an architecture bootstrap.
   * Perl modules:
     - Remove non-functional timezone name support from
       Dpkg::Changelog::Entry::Debian.

+ 4 - 0
scripts/dpkg-source.pl

@@ -297,6 +297,10 @@ if ($options{opmode} =~ /^(build|print-format|(before|after)-build|commit)$/) {
             $pkg_summary .= " profile=$profile";
         }
 
+        if (defined $pkg->{'Essential'} and $pkg->{'Essential'} eq 'yes') {
+            $pkg_summary .= ' essential=yes';
+        }
+
         push @pkglist, $pkg_summary;
 	push @binarypackages, $p;
 	foreach (keys %{$pkg}) {