Smart Repository Setup

From Yocto Project
Revision as of 13:50, 5 February 2013 by PaulEggleton (talk | contribs) (Add page about smart repo setup)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search
NOTE: smart replaces zypper for the upcoming 1.4 version. For 1.3 and older, please see Zypper Repository Setup.

Requirements

Setting up a zypper repository from the rpm files created during a Poky build is fairly straightforward. You will need:

  • Apache 2 installed and configured (may not need too much configuration); other http servers are available
  • createrepo installed

Steps

1. Add the directory to your apache config (/etc/httpd/conf/httpd.conf):

<VirtualHost *:80>
  ....
    Alias /rpm /path/to/tmp/deploy/rpm
    <Directory "/path/to/tmp/deploy/rpm/">
      Options +Indexes
    </Directory>
</VirtualHost>

2. Reload apache configuration (service httpd reload as root on Fedora)

3. cd to the tmp/deploy/rpm directory

cd /path/to/tmp/deploy/rpm/

4. Create the repository data (if you're updating, add --update to save time)

createrepo .

5. If you're using SELinux you need to label the files accessible via apache:

chcon -R -h -t httpd_sys_content_t .

6. On the target machine add the repo to smart (where somealias is a local alias for the repo):

smart channel --add somealias type=rpm-md baseurl=http://server.name/rpm

7. Fetch the repository information:

smart update