*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Linux man pages -> apt-ftparchive (1)              
Title
Content
Arch
Section
 

APT-FTPARCHIVE(1)

Contents


NAME    [Toc]    [Back]

       apt-ftparchive - Utility to generate index files

SYNOPSIS    [Toc]    [Back]

       apt-ftparchive  [  -hvdsq ]  [ --md5 ]  [ --delink ]  [ --readonly ]  [
       --contents ]  [ -o=config string ]  [ -c=file ]	 [ packages path...  [
       override  [ pathprefix ]  ]  ]  [ sources path... [ override [ pathpre-
       fix ]  ]  ]  [ contents	path ]	[ generate  config-file  section...  ]
       [ clean	config-file ]

DESCRIPTION    [Toc]    [Back]

       apt-ftparchive  is the command line tool that generates the index files
       that APT uses to access a distribution source. The index  files	should
       be generated on the origin site based on the content of that site.

       apt-ftparchive  is  a  superset	of  the  dpkg-scanpackages(8) program,
       incorporating it's entire functionality via the directory command.   It
       also  contains  a  contents  file generator, contents, and an elaborate
       means to 'script' the generation process for a complete archive.

       Internally apt-ftparchive can make use of binary databases to cache the
       contents  of  a .deb file and it does not rely on any external programs
       aside from gzip(1). When doing a full generate  it  automatically  performs
  file-change  checks  and	builds	the  desired compressed output
       files.

       Unless the -h, or --help option is given one of the commands below must
       be present.

       packages
	      The  packages  command generates a package file from a directory
	      tree. It takes the given directory and recursively  searches  it
	      for  .deb  files,  emitting a package record to stdout for each.
	      This  command  is  approximately	equivalent  to	dpkg-scanpack-
	      ages(8).

	      The option --db can be used to specify a binary caching DB.

       sources
	      The  sources command generates a source index file from a directory
  tree.   It	takes  the  given  directory  and  recursively
	      searches	it  for .dsc files, emitting a source record to stdout
	      for each. This command is approximately equivalent to dpkg-scan-
	      sources(8).

	      If  an  override	file  is specified then a source override file
	      will be looked for with an extension of .src. The --source-override
  option can be used to change the source override file that
	      will be used.

       contents
	      The contents command generates a contents file from a  directory
	      tree.  It  takes the given directory and recursively searches it
	      for .deb files, and reads the file list from each file. It  then
	      sorts  and  writes  to stdout the list of files matched to packages.
 Directories are not written to  the  output.  If  multiple
	      packages	own  the same file then each package is separated by a
	      comma in the output.

	      The option --db can be used to specify a binary caching DB.

       generate
	      The generate command is designed to  be  runnable  from  a  cron
	      script  and  builds  indexes according to the given config file.
	      The config language provides  a  flexible  means	of  specifying
	      which  index  files are built from which directories, as well as
	      providing a simple means of maintaining the required settings.

       clean  The clean command tidies the databases used by the given configuration
  file  by removing any records that are no longer necessary.


THE GENERATE CONFIGURATION    [Toc]    [Back]

       The generate command uses a configuration file to describe the archives
       that  are  going to be generated. It follows the typical ISC configuration
 format as seen in ISC tools like bind 8  and  dhcpd.   apt.conf(5)
       contains a description of the syntax. Note that the generate configuration
 is parsed in sectional manner, but apt.conf(5) is parsed in a tree
       manner. This only effects how the scope tag is handled.

       The  generate  configuration  has  4  separate  sections, each decribed
       below.

   DIR SECTION    [Toc]    [Back]
       The Dir section defines the standard directories needed to  locate  the
       files  required	during	the  generation process. These directories are
       prepended to certain relative paths defined in later sections  to  produce
 a complete an absolute path.

       ArchiveDir    [Toc]    [Back]
	      Specifies the root of the FTP archive, in a standard Debian configuration
 this is the directory that contains  the  ls-LR,  and
	      dist nodes.

       OverrideDir    [Toc]    [Back]
	      Specifies the location of the override files.

       CacheDir    [Toc]    [Back]
	      Specifies the location of the cache files

       FileListDir    [Toc]    [Back]
	      Specifies  the  location of the file list files, if the FileList
	      setting is used below.


   DEFAULT SECTION    [Toc]    [Back]
       The Default section specifies default values, and settings that control
       the  operation  of  the	generator.  Other  sections may override these
       defaults with a per-section setting.

       Packages::Compress
	      Sets the default compression schemes  to	use  for  the  Package
	      index files. It is a string that contains a space separated list
	      of at least one of: '.' (no compression),  'gzip'  and  'bzip2'.
	      The default for all compression schemes is '. gzip'.

       Packages::Extensions
	      Sets the default list of file extensions that are package files.
	      This defaults to '.deb'.

       Sources::Compress
	      This is similar to Packages::Compress except  that  it  controls
	      the compression for the Sources files.

       Sources::Extensions
	      Sets  the default list of file extensions that are source files.
	      This defaults to '.dsc'.

       Contents::Compress
	      This is similar to Packages::Compress except  that  it  controls
	      the compression for the Contents files.

       DeLinkLimit    [Toc]    [Back]
	      Specifies  the  number  of kilobytes to delink (and replace with
	      hard links) per run. This is used in conjunction with  the  persection
 External-Links setting.

       FileMode    [Toc]    [Back]
	      Specifies  the  mode  of all created index files. It defaults to
	      0644. All index files are set to this mode with no regard to the
	      umask.


   TREEDEFAULT SECTION    [Toc]    [Back]
       Sets  defaults  specific  to  Tree sections. All of these variables are
       substitution variables and have the  strings  $(DIST),  $(SECTION)  and
       $(ARCH) replaced with their respective values.

       MaxContentsChange    [Toc]    [Back]
	      Sets  the  number of kilobytes of contents files that are generated
 each day. The contents files are round-robined so that over
	      several days they will all be rebuilt.

       ContentsAge    [Toc]    [Back]
	      Controls	the  number  of  days a contents file is allowed to be
	      checked without changing. If this limit is passed the  mtime  of
	      the contents file is updated. This case can occur if the package
	      file is changed in such a way that does not result in a new contents
  file  [overried edit for instance]. A hold off is allowed
	      in hopes that new .debs will be installed, requiring a new  file
	      anyhow. The default is 10, the units are in days.

       Directory    [Toc]    [Back]
	      Sets   the   top	 of  the  .deb	directory  tree.  Defaults  to
	      $(DIST)/$(SECTION)/binary-$(ARCH)/

       Packages    [Toc]    [Back]
	      Sets  the  output  Packages  file.  Defaults  to	$(DIST)/$(SEC-
	      TION)/binary-$(ARCH)/Packages

       Sources    [Toc]    [Back]
	      Sets  the  output  Packages  file.  Defaults  to	$(DIST)/$(SEC-
	      TION)/source/Sources

       InternalPrefix    [Toc]    [Back]
	      Sets the path prefix that causes a symlink to be	considered  an
	      internal	 link	instead  of  an  external  link.  Defaults  to
	      $(DIST)/$(SECTION)/

       Contents    [Toc]    [Back]
	      Sets  the  output  Contents  file.  Defaults   to   $(DIST)/Con-
	      tents-$(ARCH). If this setting causes multiple Packages files to
	      map onto a single Contents file (such as the default) then  apt-
	      ftparchive will integrate those package files together automatically.


       Contents::Header
	      Sets header file to prepend to the contents output.

       BinCacheDB    [Toc]    [Back]
	      Sets the binary cache database to use for this section. Multiple
	      sections can share the same database.

       FileList    [Toc]    [Back]
	      Specifies  that  instead	of  walking  the  directory tree, apt-
	      ftparchive should read the list of files from  the  given  file.
	      Relative files names are prefixed with the archive directory.

       SourceFileList    [Toc]    [Back]
	      Specifies  that  instead	of  walking  the  directory tree, apt-
	      ftparchive should read the list of files from  the  given  file.
	      Relative	files  names  are prefixed with the archive directory.
	      This is used when processing source indexs.


   TREE SECTION    [Toc]    [Back]
       The Tree section defines a standard Debian file tree which consists  of
       a  base	directory,  then  multiple sections in that base directory and
       finally multiple Architectures in each section. The exact pathing  used
       is defined by the Directory substitution variable.

       The  Tree section takes a scope tag which sets the $(DIST) variable and
       defines the root of the tree (the  path	is  prefixed  by  ArchiveDir).
       Typically this is a setting such as dists/woody.

       All  of the settings defined in the TreeDefault section can be use in a
       Tree section as well as three new variables.

       When processing a Tree section  apt-ftparchive  performs  an  operation
       similar to:


       for i in Sections do
	  for j in Architectures do
	     Generate for DIST=scope SECTION=i ARCH=j


       Sections    [Toc]    [Back]
	      This  is	a  space separated list of sections which appear under
	      the distribution, typically this is something like main  contrib
	      non-free.

       Architectures    [Toc]    [Back]
	      This  is	a  space  separated list of all the architectures that
	      appear under seach section. The special architecture 'source' is
	      used to indicate that this tree has a source archive.

       BinOverride    [Toc]    [Back]
	      Sets  the  binary override file. The override file contains section,
 priority and maintainer address information.

       SrcOverride    [Toc]    [Back]
	      Sets the source override file. The override file	contains  section
 information.

       ExtraOverride    [Toc]    [Back]
	      Sets the binary extra override file.

       SrcExtraOverride    [Toc]    [Back]
	      Sets the source extra override file.


   BINDIRECTORY SECTION    [Toc]    [Back]
       The  bindirectory  section defines a binary directory tree with no special
 structure. The scope tag specifies	the  location  of  the	binary
       directory and the settings are similar to the Tree section with no substitution
 variables or SectionArchitecture settings.

       Packages    [Toc]    [Back]
	      Sets the Packages file output.

       SrcPackages    [Toc]    [Back]
	      Sets the Sources file output. At least one of Packages  or  SrcPackages
 is required.

       Contents    [Toc]    [Back]
	      Sets the Contents file output. (Optional)

       BinOverride    [Toc]    [Back]
	      Sets the binary override file.

       SrcOverride    [Toc]    [Back]
	      Sets the source override file.

       ExtraOverride    [Toc]    [Back]
	      Sets the binary extra override file.

       SrcExtraOverride    [Toc]    [Back]
	      Sets the source extra override file.

       BinCacheDB    [Toc]    [Back]
	      Sets the cache DB.

       PathPrefix    [Toc]    [Back]
	      Appends a path to all the output paths.

       FileList, SourceFileList
	      Specifies the file list file.

THE BINARY OVERRIDE FILE    [Toc]    [Back]

       The binary override file is fully compatible with dpkg-scanpackages(8).
       It contains 4 fields separated by spaces. The first field is the  package
  name,  the	second	is  the priority to force that package to, the
       third is the the section to force that package to and the  final  field
       is the maintainer permutation field.

       The general form of the maintainer field is:

       old [// oldn]* => new

       or simply,

       new

       The  first  form  allows  a  double-slash  separated  list of old email
       addresses to be specified. If any of those are found then new  is  substituted
 for the maintainer field. The second form unconditionally substitutes
 the maintainer field.

THE SOURCE OVERRIDE FILE    [Toc]    [Back]

       The source override file is fully compatible with  dpkg-scansources(8).
       It  contains  2	fields	separated  by  spaces. The first fields is the
       source package name, the second is the section to assign it.

THE EXTRA OVERRIDE FILE    [Toc]    [Back]

       The extra override file allows any arbitary tag to be added or replaced
       in  the	output. It has 3 columns, the first is the package, the second
       is the tag and the remainder of the line is the new value.

OPTIONS    [Toc]    [Back]

       All command line options may be set using the configuration  file,  the
       descriptions  indicate  the  configuration  option  to set. For boolean
       options you can override  the  config  file  by	using  something  like
       -f-,--no-f, -f=no or several other variations.

       --md5  Generate MD5 sums. This defaults to on, when turned off the generated
 index files will not have MD5Sum fields  where  possible.
	      Configuration Item: APT::FTPArchive::MD5.

       -d

       --db   Use a binary caching DB. This has no effect on the generate command.
  Configuration Item: APT::FTPArchive::DB.

       -q

       --quiet
	      Quiet; produces output suitable for logging,  omitting  progress
	      indicators.  More q's will produce more quiet up to a maximum of
	      2. You can also use -q=# to set the quiet level, overriding  the
	      configuration file.  Configuration Item: quiet.

       --delink
	      Perform  Delinking.  If  the External-Links setting is used then
	      this option actually enables delinking of the files. It defaults
	      to  on  and  can	be turned off with --no-delink.  Configuration
	      Item: APT::FTPArchive::DeLinkAct.

       --contents
	      Perform contents generation. When this option is set and package
	      indexes  are being generated with a cache DB then the file listing
 will also be extracted and stored in the DB for  later  use.
	      When using the generate command this option also allows the creation
 of any Contents files. The default is  on.	 Configuration
	      Item: APT::FTPArchive::Contents.

       -s

       --source-override
	      Select the source override file to use with the sources command.
	      Configuration Item: APT::FTPArchive::SourceOverride.

       --readonly
	      Make the	caching  databases  read  only.   Configuration  Item:
	      APT::FTPArchive::ReadOnlyDB.

       -h

       --help Show a short usage summary.

       -v

       --version
	      Show the program verison.

       -c

       --config-file
	      Configuration  File;  Specify  a configuration file to use.  The
	      program will read the default configuration file and  then  this
	      configuration file. See apt.conf(5) for syntax information.

       -o

       --option
	      Set a Configuration Option; This will set an arbitary configuration
 option. The syntax is -o Foo::Bar=bar.

SEE ALSO    [Toc]    [Back]

      
      
       apt.conf(5)

DIAGNOSTICS    [Toc]    [Back]

       apt-ftparchive returns zero on normal operation, decimal 100 on	error.

BUGS    [Toc]    [Back]

       See  the APT bug page <URL:http://bugs.debian.org/apt>.	If you wish to
       report a bug in APT, please see /usr/share/doc/debian/bug-reporting.txt
       or the bug(1) command.

AUTHOR    [Toc]    [Back]

       APT was written by the APT team <apt@packages.debian.org>.



				 12 March 2001		     APT-FTPARCHIVE(1)
[ Back ]
 Similar pages
Name OS Title
apt-sortpkgs Linux Utility to sort package index files
ftr2mime IRIX utility to generate mailcap and mime.type files from ftrs
ranlib Linux generate index to archive.
ranlib FreeBSD generate index to archive.
ranlib NetBSD generate index to archive.
ranlib OpenBSD generate index to archive.
texindex FreeBSD sort Texinfo index files
texindex OpenBSD sort Texinfo index files
fonts.alias Tru64 create an index of X font files in a directory
mkfontdir Tru64 create an index of X font files in a directory
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service