[cvs] [Wiki] changed: Doc/Dev/Framework

Chuck Hagenbuch chuck at horde.org
Sat Feb 3 09:38:41 PST 2007


chuck  Sat, 03 Feb 2007 09:38:40 -0800

Modified page: http://wiki.horde.org/Doc/Dev/Framework
New Revision:  1.6
Change log:  Some documentation for every method of installation now.

@@ -4,17 +4,63 @@
  
  The //Horde Framework// modules, also known as //Horde Libraries//, are an integral part of the //Horde Application Framework//. These modules are managed [http://cvs.horde.org/framework/ separately] in our [http://www.horde.org/source/ CVS repository] but are included with the [http://www.horde.org/horde/download/ Horde packages] that can be downloaded from our [http://www.horde.org/mirrors.php FTP servers]. The modules are general purpose libraries that are being used by several Horde applications or the framework itself, but can also be utilized outside the Framework in custom PHP solutions. They are developed, packaged, and distributed similarly to the [http://pear.php.net/ PEAR packages].
  
  ++ Installation
+
+Most of these methods require that you first tell your PEAR installation about the Horde PEAR channel:
+
+<code>pear channel-discover pear.horde.org
+</code>
  
  +++ Installing everything from CVS
  
  You will need the entire Horde Framework module. You can either get a CVS checkout of the {{framework}} module from Horde's anonymous CVS server (see http://horde.org/source/ for instructions on using CVS), or you can download a nightly snapshot from http://snaps.horde.org/. You'll want the latest framework-HEAD snapshot.
+
+Once you have the full framework you have two options: symlinking, or installing with the PEAR installer. If you want to install with the PEAR installer, there is an {{install-packages.php}} script in the framework/ directory that will automate the process for you. Simply run:
+
+<code>php install-packages.php
+</code>
+
+from the framework directory. The major disadvantage of this method is that if you are using CVS, you will need to re-run the script every time you update. If you are doing Horde development or update from CVS frequently, then using symlinks is recommended.
+
+To create a symlinked framework installation automatically, you will first need to install the Horde devtools package:
+
+<code>pear install devtools/package.xml
+</code>
+
+If this succeeds you will now have some development tools in your PATH, including {{horde-fw-symlinks.php}}. This script accepts a framework directory and a target directory as options:
+
+<code>$ horde-fw-symlinks.php --help
+Usage: horde-fw-symlinks.php [OPTION]
+
+Possible options:
+  --copy        Do not create symbolic links, but actually copy the libraries
+                (this is done automatically on Windows).
+  --src DIR     The source directory for the framework libraries.
+  --dest DIR    The destination directory for the framework libraries.
+  --pkg DIR     Path to a single package to install.
+</code>
+
+The default is to run the script from your main Horde directory, with {{framework/}} as the source directory and a {{libs}} directory as the target (these values are assumed if you don't specify --src or --dest). You will see a processing message for each package, and then all you need to do is to add the {{libs/}} directory to your include_path.
  
  
  +++ Installing individual libraries from CVS
+
+You will still need a full checkout or a snapshot of the framework, as above. Then you can install individual packages. For example, to install the Horde_Compress package, in the {{framework/Compress}} directory, you would run:
+
+<code>pear install Compress/package.xml
+</code>
+
  
  +++ Installing from http://pear.horde.org/
+
+Installing from pear.horde.org is simple. Once you have "discovered" the channel as described above, you can install Horde packages just like other PEAR packages. For example to install the Compress package:
+
+<code>pear install horde/Horde_Compress-alpha
+</code>
+
+(the -alpha is necessary if you have not configured PEAR to install alpha state packages by default. This will vary depending on the Horde package that you pick; some are stable, some are beta, and some are alpha.)
+
  
  +++ If you already have a Horde release
  
  Horde releases come with all of the framework libraries bundled in the {{horde/lib/}} directory, and also include the necessary code to make everything in the {{horde/lib/}} directory available to Horde without any further installation or PHP configuration:


More information about the cvs mailing list