]> git.saurik.com Git - apt.git/blobdiff - doc/acquire-additional-files.txt
use c++11 algorithms to avoid strange compiler warnings
[apt.git] / doc / acquire-additional-files.txt
index 71ce7b0cb917d5c23e76b40e208c0716ccb8195a..11f4bb76d9c72f908d11c0f9b590ab9b3e52df52 100644 (file)
@@ -29,10 +29,10 @@ like this (see also apt.conf(5) manpage for configuration file syntax):
        Acquire::IndexTargets::deb::Packages {
                MetaKey "$(COMPONENT)/binary-$(ARCHITECTURE)/Packages";
                ShortDescription "Packages";
-               Description "$(SITE) $(RELEASE)/$(COMPONENT) $(ARCHITECTURE) Packages";
+               Description "$(RELEASE)/$(COMPONENT) $(ARCHITECTURE) Packages";
 
                flatMetaKey "Packages";
-               flatDescription "$(SITE) $(RELEASE) Packages";
+               flatDescription "$(RELEASE) Packages";
 
                Optional "false";
        };
@@ -63,6 +63,10 @@ All targets have three main properties you can define:
   of which file is acquired exactly. Mainly used for progress reporting
   and error messages. apt will e.g. use this string in the Get/Hit/Err
   progress lines.
+  An identifier of the site accessed as seen in the sources.list (e.g.
+  "http://example.org/debian" or "file:/path/to/a/repository") is
+  automatically prefixed for this property.
+
 
 Additional optional properties:
 * flat{MetaKey,Description}: APT supports two types of repositories:
@@ -78,14 +82,37 @@ Additional optional properties:
   a hard error and the update process fails. Note that failures while
   downloading (e.g. 404 or hash verification errors) are failures,
   regardless of this setting.
+* KeepCompressed: The default is the value of Acquire::GzipIndexes,
+  which defaults to false. If true, the acquire system will keep the
+  file compressed on disk rather than extract it. If your frontend can't
+  deal with compressed files transparently you have to explicitly set
+  this option to false to avoid problems with users setting the option
+  globally. On the other hand, if you set it to true or don't set it you
+  have to ensure your frontend can deal with all compressed fileformats
+  supported by apt (libapt users can e.g. use FileFd).
 
 
 The acquire system will automatically choose to download a compressed
 file if it is available and uncompress it for you, just as it will also
-use pdiff patching if provided by the repository and enabled by the
+use PDiff patching if provided by the repository and enabled by the
 user. You only have to ensure that the Release file contains the
-information about the compressed files/pdiffs to make this happen.
-NO properties have to be set to enable this.
+information about the compressed files/PDiffs to make this happen.
+*NO* properties have to be set to enable this!
+
+
+More properties exist, but these should *NOT* be set by frontends
+requesting files. They exist for internal and end-user usage only:
+* PDiffs: controls if apt will try to use PDiffs for this target.
+  Defaults to the value of Acquire::PDiffs which is true by default.
+  Can be overridden per-source by the sources.list option of the same
+  name. See the documentation for both of these for details.
+* CompressionTypes: The default value is a space separated list of
+  compression types supported by apt (see Acquire::CompressionTypes).
+  You can set this option to prevent apt from downloading a compression
+  type a frontend can't open transparently. This should always be
+  a temporary workaround through and a bug should be reported against
+  the frontend in question.
+
 
 # More examples
 
@@ -96,19 +123,19 @@ Acquire::IndexTargets {
        deb::Translations {
                MetaKey "$(COMPONENT)/i18n/Translation-$(LANGUAGE)";
                ShortDescription "Translation-$(LANGUAGE)";
-               Description "$(SITE) $(RELEASE)/$(COMPONENT) Translation-$(LANGUAGE)";
+               Description "$(RELEASE)/$(COMPONENT) Translation-$(LANGUAGE)";
 
                flatMetaKey "$(LANGUAGE)";
-               flatDescription "$(SITE) $(RELEASE) Translation-$(LANGUAGE)";
+               flatDescription "$(RELEASE) Translation-$(LANGUAGE)";
        };
 
        deb-src::Sources {
                MetaKey "$(COMPONENT)/source/Sources";
                ShortDescription "Sources";
-               Description "$(SITE) $(RELEASE)/$(COMPONENT) Sources";
+               Description "$(RELEASE)/$(COMPONENT) Sources";
 
                flatMetaKey "Sources";
-               flatDescription "$(SITE) $(RELEASE) Sources";
+               flatDescription "$(RELEASE) Sources";
 
                Optional "false";
        };
@@ -121,10 +148,6 @@ by the acquire system. The following variables are known; note that
 unknown variables have no default value nor are they touched: They are
 printed as-is.
 
-* $(SITE): An identifier of the site we access as seen in sources.list,
-  e.g. "http://example.org/debian" or "file:/path/to/a/repository". You
-  can't use this field in {,flat}MetaKey, it is for description proposes
-  only.
 * $(RELEASE): This is usually an archive- or codename, e.g. "stable" or
   "stretch".  Note that flat-style repositories do not have a archive-
   or codename per-se, so the value might very well be just "/" or so.
@@ -169,7 +192,7 @@ tools like 'grep-dctrl'.
 
 Accessing this information via libapt is done by reading the
 sources.lists (pkgSourceList), iterating over the metaIndex objects this
-creates and calling GetIndexTargets() on them. See the sourcecode of
+creates and calling GetIndexTargets() on them. See the source code of
 "apt-get indextargets" for a complete example.
 
 Note that by default targets are not listed if they weren't downloaded.
@@ -187,7 +210,7 @@ it will always refer to an uncompressed file, even if the index would be
 
 Remarks on fields only available in (default) --release-info mode:
 * Trusted: Denotes with a 'yes' or 'no' if the data in this file is
-  authenticated by a trustchain rooted in a trusted gpg key. You should
+  authenticated by a trust chain rooted in a trusted gpg key. You should
   be careful with untrusted data and warn the user if you use it.
 * Codename, Suite, Version, Origin and Label are fields from the Release
   file, are only present if they are present in the Release file and