aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Sokolovsky <pmiscml@gmail.com>2007-12-22 12:34:03 +0000
committerPaul Sokolovsky <pmiscml@gmail.com>2007-12-22 12:34:03 +0000
commitfd8586d37984556cc3a730995698494d824832a3 (patch)
tree1b4bbb4af7608726791e12388a81e301119a78cd
parent11060af81e612ab50f0232d254a181ec85e28da4 (diff)
downloadopenembedded-fd8586d37984556cc3a730995698494d824832a3.tar.gz
usermanual.xml: Describe OE feed support facilities, FEED_URIS and FEED_DEPLOYDIR_BASE_URI.
-rw-r--r--usermanual/usermanual.xml70
1 files changed, 70 insertions, 0 deletions
diff --git a/usermanual/usermanual.xml b/usermanual/usermanual.xml
index 4ed7c6a69c..3d9aed941f 100644
--- a/usermanual/usermanual.xml
+++ b/usermanual/usermanual.xml
@@ -253,6 +253,76 @@ they will be added automatically.</para>
<title>Overrides <anchor id="overrides" /></title>
<para>This section is a stub, help us by expanding it</para>
</section>
+
+ <section>
+ <title>Package Feed Support <anchor id="feeds" /></title>
+ <para>"Package feed", or feed for short, is a term used by <command>ipkg</command> package manager, commonly used in embedded
+systems, to name a package repository holding packages. Structurally, a feed is a directory on HTTP of FTP server,
+holding packages and package descriptor file, named <command>Packages</command> or <command>Packages.gz</command>
+if compressed.
+ </para>
+ <para>OpenEmbedded has support to pre-configure feeds within generated images, so once images are
+installed on devices, users can immediately install new software, without the need to manually edit config files.
+There are several ways to pre-configure feed support, described below.
+ </para>
+ <section>
+ <title>Method 1: Using existing feed</title>
+ <para>If you already have a feed(s) set up and available via specific URL, you can
+add them to the image using FEED_URIS variable:
+<screen>
+FEED_URIS = "\
+ feed1##http://some-server.org/feed \
+ feed2##http://some-server.org/feed-another"
+</screen>
+FEED_URIS contains list of feed descriptors, separated by spaces, per OE conventions. Each descriptor
+consists of feed tag and feed URL, joined with "##". Feed tag is an identifier used by ipkg to distinguish
+among the feeds. It can be arbitrary, just useful to the users to understood which feed is used for one
+or another action.
+ </para>
+ </section>
+
+ <section>
+ <title>Method 2: Using OE deploy dir as a feed (development only)</title>
+ <para>OE internally maintains a feed-like collection of directories to create
+images from packages. This package deployment directory structure however has OE-internal
+structure and subject to change at any time. So, using it as feed directly is not recommended
+(distributions which ignored this recommendation are known to have their feeds broken when
+OE upgraded its internal mechanisms).
+ </para>
+ <para>However, using deploy directory as feed directly may be beneficial during
+development and testing, as it allows developers to easily install newly built packages
+without many manual actions. To facilitate this, OE offers a way to prepare feed configs
+for deploy dir usage. To start with this, you first need to configure local HTTP server
+to export a package deployment directory via HTTP.
+Suppose you will
+export it via URL "http://192.168.2.200/bogofeed" (where 192.168.2.200 is the address
+which will be reachable from the device). Add following to your local.conf:
+<screen>
+FEED_DEPLOYDIR_BASE_URI = "http://192.168.2.200/bogofeed"
+</screen>
+Now you need to setup local HTTP server to actually export that directory. For Apache it will be:
+<screen>
+<![CDATA[
+Alias /bogofeed ${DEPLOY_DIR}
+
+<Directory ${DEPLOY_DIR}>
+ Options Indexes FollowSymLinks
+ Order deny,allow
+ Allow from 192.168.2.0/24
+</Directory>
+]]>
+</screen>
+Replace ${DEPLOY_DIR} with the full path of deploy directory (last components of its path will be
+<command>deploy/ipk</command>).
+ </para>
+ <para>Now, when you will build an image, it will automatically contain feed configs
+for the deploy directory (as of time of writing, deploy directory was internally structured with
+per-arch subdirectories; so, there are generated several feed configs, one for each subdirectory).
+ </para>
+
+ </section>
+
+ </section>
</chapter>
<chapter>