Repositories

From HadronWiki

Jump to: navigation, search

Contents

General Information

lpms installs packages with compiling them. So it doesn't provide (or for now, doesn't support) prebuilt/binary packages. There are scripts to define how to compile packages. These scripts hold in a repository. Repositories can be managed with a VCS. Here is how a repository file hierarchy should be:

<repo-name>
 <category>
  <package-name>
   package-name-version1.py
   package-name-version2.py

You can put multiple versions of a package. Packages can be slotted or not, depends on metadata in scripts.

Repository Example

Here is an example repo:

$ ls /var/lib/lpms/seq
app-shells  dev-utils    info    net-irc   sys-devel   sys-libs
dev-lang    gnome-utils  net-im  sys-apps  sys-kernel  x11-terms

Local place for repositories hardcoded in lpms. They should be in the /var/lib/lpms directory. Lpms looks for repo.conf in the info directory to recognize and identify it's a repository. Here is an example /var/lib/lpms/(reponame)/info/repo.conf:

# metadata
name @ seq
summary @ playground for spec files
maintainer @ Gurkan Gur <seqizz@gmail.com>

Repository Configuration

Also in the /etc/lpms directory, there is another repo.conf, which includes all repositories' information your system has. You should add revelant lines about every repository in your system in this file. Here is an example /etc/lpms/repo.conf:


[main]
type @ git
remote @ git@gitorious.org:hadron/main-repo.git

[seq]
type @ git
remote @ git@gitorious.org:hadron-seq/seq.git

[non-free]
type @ git
remote @ git@gitorious.org:hadron-seq/non-free.git

News

In (your) repository, you can add a folder named "news" and add information files (with .py file extension) about what you want to remind to your users. Here is an example news file:

metadata = """
from @ Burak Sezer <purak@foo.com>
summary @ A big change about wget 
date @ 2011-10-19
priority @ high
"""

message = """
You should love wget
"""
Personal tools