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

add support for Enabled: no in deb822 sources.list

Michael Vogt лет назад: 12
Родитель
Сommit
7dd62ea934
3 измененных файлов с 11 добавлено и 2 удалено
  1. 4 0
      apt-pkg/sourcelist.cc
  2. 3 2
      doc/sources.list.5.xml
  3. 4 0
      test/integration/test-apt-sources-deb822

+ 4 - 0
apt-pkg/sourcelist.cc

@@ -84,6 +84,10 @@ bool pkgSourceList::Type::ParseStanza(vector<metaIndex *> &List,
       _error->Error(_("Malformed stanza %u in source list %s (URI parse)"),i,Fd.Name().c_str());
       return false;
    }
+
+   string Enabled = Tags.FindS("Enabled");
+   if (Enabled.size() > 0 && StringToBool(Enabled) == false)
+      return true;
    
    // Define external/internal options
    const char* option_deb822[] = { 

+ 3 - 2
doc/sources.list.5.xml

@@ -85,7 +85,7 @@
    <literallayout>
      Type: deb
      URI: http://example.com
-     Suites: stable
+     Suites: stable testing
      Sections: component1 component2
      Description: short
       long long long
@@ -95,9 +95,10 @@
      URI: http://example.com
      Suites: stable
      Sections: component1 component2
-     [option1]: [option1-value]
+     Enabled: no
      Description: short
       long long long
+     [option1]: [option1-value]
    </literallayout>
    </para>
 

+ 4 - 0
test/integration/test-apt-sources-deb822

@@ -75,3 +75,7 @@ Suites: stable
 testequalwithmsg "Invalid deb822 sources.list file gives proper error" "E: Malformed stanza 0 in source list $TMPWORKINGDIRECTORY/rootdir/etc/apt/sources.list (URI parse)
 E: The list of sources could not be read."  aptget update --print-uris
 
+# with Enabled: false
+echo "$BASE"  > $SOURCES
+echo "Enabled: no" >> $SOURCES
+testempty aptget update --print-uris