Skip to end of metadata
Go to start of metadata

<h1>Unix and Linux Distribution Packages</h1>

<ac:macro ac:name="note"><ac:parameter ac:name="title">Package volunteers wanted!</ac:parameter><ac:rich-text-body>
<p>After version 1.0 is released, there will most likely be a great demand for native packages for each Unix/Linux distribution. We're looking for volunteers to maintain such packages. If you're interested, please be sure to see <ac:link><ri:page ri:content-title="Choosing Your Application's Directory Layout" /></ac:link>. Once your package is ready, add it to the list!</p></ac:rich-text-body></ac:macro>

<p>Each Unix/Linux distribution has one or more "preferred" ways to install packages, such as <code>emerge</code> for Gentoo, <code>apt-get</code> for Debian, <code>yum</code>, and so on. The following packages are geared toward these methods.</p>


<p><a href="">Package</a> maintained by <ac:link><ri:user ri:username="glarkin" /></ac:link></p>

<ac:macro ac:name="noformat"><ac:plain-text-body><![CDATA[cd /usr/ports/www/zend-framework && make install clean]]></ac:plain-text-body></ac:macro>


<p><a href="">Package</a> maintained by <ac:link><ri:user ri:username="sebastian" /></ac:link></p>

<ac:macro ac:name="noformat"><ac:plain-text-body><![CDATA[emerge -p ZendFramework]]></ac:plain-text-body></ac:macro>

<h2>Mac OS X</h2>

<p><a href="">Mac OS Forge</a> has a <a href="">ticket</a> (registration required) with a portfile for DarwinPorts. <a href="">Portfile without registration</a> maintained by <ac:link><ri:user ri:username="nico" /></ac:link></p>


<p>Packages are available through the <a href="">openSUSE build service</a>. Maintained by <ac:link><ri:user ri:username="gnanderson" /></ac:link>. Packages are available for SLES 10(SP2), 11.1, 11.0, 10.3</p>

<p>For APC and Memcached backends please see the section after the installation instructions. These are in separate packages due to a dependancy on additional repositories.</p>

<p>Captcha and PDF components are available seperately, as some sysadmins object to having gd extension installed. Please see instructions for installing these components</p>

<p>The easiest installation option is to use the openSUSE 1-Click install system. This will add the required repositories and initiate the download. 1-Click install is available on openSUSE 10.3 and later.</p>

<h3>SUSE Linux Enterprise Server 11</h3>

<ac:macro ac:name="noformat"><ac:plain-text-body><![CDATA[
su -
zypper sa
zypper in php5-ZendFramework

<h3>SUSE Linux Enterprise Server 10 (SP2)</h3>

<ac:macro ac:name="noformat"><ac:plain-text-body><![CDATA[
su -
zypper sa
zypper in php5-ZendFramework

<h3>openSUSE 11.1</h3>
<p><a href=""><ac:image><ri:attachment ri:filename="ZF_opensuse_1click.png" /></ac:image></a></p>
<ac:macro ac:name="noformat"><ac:plain-text-body><![CDATA[
su -
zypper sa
zypper in php5-ZendFramework

<h3>openSUSE 11.0</h3>
<p><a href=""><ac:image><ri:attachment ri:filename="ZF_opensuse_1click.png" /></ac:image></a></p>
<ac:macro ac:name="noformat"><ac:plain-text-body><![CDATA[
su -
zypper sa
zypper in php5-ZendFramework

<h3>openSUSE 10.3</h3>
<p><a href=""><ac:image><ri:attachment ri:filename="ZF_opensuse_1click.png" /></ac:image></a></p>
<ac:macro ac:name="noformat"><ac:plain-text-body><![CDATA[
su -
zypper sa
zypper in php5-ZendFramework

<h3>APC and Memcache</h3>

<ac:macro ac:name="noformat"><ac:plain-text-body><![CDATA[
su -
zypper sa


zypper in php5-APC php5-ZendFramework-cache-backend-apc


zypper in php5-pecl-memcache php5-ZendFramework-cache-backend-memcache

<h3>Zend_Captcha & Zend_Pdf</h3>

<p>Install these with the instructions below, this will pull in the php5-gd package as a dependancy.</p>
<ac:macro ac:name="noformat"><ac:plain-text-body><![CDATA[
zypper in php5-ZendFramework-captcha php5-ZendFramework-pdf

installation installation Delete
packagers packagers Delete
unix unix Delete
linux linux Delete
gentoo gentoo Delete
freebsd freebsd Delete
osx osx Delete
fedora fedora Delete
redhat redhat Delete
ubuntu ubuntu Delete
debian debian Delete
sles sles Delete
opensuse opensuse Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Oct 12, 2006

    <p>Before making a bunch of packages/installers that put things in whatever place that packager wishes to, shouldn't we maybe determine some standard file locations, in example:</p>

    <p>ZendFramework-0.x.x/documentation => /usr/share/doc/ZendFramework<br />
    ZendFramework-0.x.x/demos => /usr/share/doc/ZendFramework/demo<br />
    ZendFramework-0.x.x/tests => /usr/share/doc/ZendFramework/tests<br />
    ZendFramework-0.x.x/library => /usr/share/ZendFramework/</p>

    <p>ZendFramework-0.x.x/LICENSE.txt => /usr/share/doc/ZendFramework/<br />
    ZendFramework-0.x.x/NEWS.txt => /usr/share/doc/ZendFramework/<br />
    ZendFramework-0.x.x/README.txt => /usr/share/doc/ZendFramework/</p>

    <p>And what of /incubator ?</p>

    <p>Another thing is whether we want to break it out into multiple packages (like ZendFramework, ZendFramework-incubator, ZendFramework-demos, etc.</p>

    1. Oct 13, 2006

      <p>I don't know how it works for other distributions, but Debian mostly ignore whatever the default paths for an app are in favour of consistency across all apps in the distribution.</p>

      <p>And how does this map on to Windows? Or MacOS X?</p>

      <p>It's not up to us decide that sort of thing globally - it's down to whatever makes sense for the particular platform the package is targeted at.</p>

    2. Nov 07, 2006

      <p>I would suggest for Linux and other UNIX-like platforms, that we adhere to the Filesystem Heirarchy Standard (<a class="external-link" href=""></a>). Most vendor-related files should live under /opt.</p>

      <p>Based on the FHS, I would expect to see the layout like this:</p>

      <p>/opt/ZendFramework/doc => this is where the ZF manual and api doc lives<br />
      /opt/ZendFramework/lib => this is where the ZF class library lives<br />
      /opt/Zend/ZendFramework/lib/tests => self-explanatory<br />
      /etc/opt/ => stores ZF-specific config files<br />
      /var/opt/ZendFramework/ => stores ZF-specific temp files, cache files, log files, etc.</p>

      <p>The incubator is tricky. I wouldn't think it should live together with production-ready ZF files. So providing another package for it makes sense, e.g.,</p>

      <p>/opt/ZendFramework-incubator/... (same hierarchy)</p>

      <p>Mac OS X seems to have its own conventions, e.g.,</p>

      <p>/Library/Zend Framework/doc<br />
      /Library/Zend Framework/lib<br />
      /Library/Zend Framework/lib/tests<br />
      /Library/Zend Framework/etc<br />
      /Library/Zend Framework/logs<br />
      /Library/Zend Framework/temp</p>

      <p>/Library/Zend Framework incubator/... (same hierarchy)</p>

      <p>On Windows, what I'd choose is:</p>

      <p>C:\Program Files\Zend Technologies\Zend Framework\lib<br />
      C:\Program Files\Zend Technologies\Zend Framework\lib<br />
      C:\Program Files\Zend Technologies\Zend Framework\lib\tests<br />
      C:\Program Files\Zend Technologies\Zend Framework\conf<br />
      C:\Program Files\Zend Technologies\Zend Framework\logs => for logs<br />
      C:\Program Files\Zend Technologies\Zend Framework\temp => for ephemeral cache files</p>

      <p>Likewise, incubator gets its own matching heirarchy:</p>

      <p>C:\Program Files\Zend Technologies\Zend Framework incubator\... (same hierarchy)</p>

      1. Nov 08, 2006

        <p>For flavors of Linux that I've used, I don't agree. I think each Linux flavor has its own interpretation of FHS and standardized layouts. If distro maintainers follow a specific layout recommended here, it likely will conflict with the layouts expected by users of any particular Linux distro, partly because the location of PHP "libraries" (such as the ZF) are less standardized between distros. However, standards specific to each major distro do exist, for placement of PHP and PEAR.</p>

        <p>I believe both Sebastian and Gregory have made reasonable choices in the "layouts" for the OS/distro they support, such that distro users should not be suprised by an unexpected/inconsistent placement of files with respect to their distro.</p>

  2. Nov 04, 2006

    <p>A good file structure is always needed for consistency, but they vary from platform to platform. IMHO there should be a guideline to group documentation in some place with a logical hierchary in order to make it easy to find and follow.</p>

  3. May 24, 2007

    <p>I might be a bit off here, but I've installed it but even thought I put the right "include_path = " to php.ini I'm getting Fatal error: Class 'Zend_Gdata_AuthSub' not found in...</p>

    <p>Could it be that Apache doesn't have access to /usr/local/share/ZendFramework? If so how do I provide it with those permissions. Thanks!</p>