summaryrefslogtreecommitdiff
path: root/README
blob: d4ee0b9311df146ce4078b21cf1bc5b184d5a29b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
pkgcore-0.3 < http://www.pkgcore.org >


WHAT IS PKGCORE?

  pkgcore is a framework for package management; via the appropriate class plugins,
  the design should allow for any underlying repository/config/format to be used;
  slackwares tgzs being exempted due to lack of any real metadata, and
  autopackage format being exempted due to the fact they effectively embed the
  manager in each package (pkgcore *does* require being able to treat the pkg as
  data, instead of autopackages method of handing resolution/all manager ops off
  to the package script).


WHAT DOES PKGCORE REQUIRE?

  At least python verison 2.4, and snakeoil- snakeoil is a utility library with
  misc optimizations split out of pkgcore for others to use.  Available via
  http://pkgcore.org/trac/wiki/Releases .


WHO TO CONTACT IF I FIND A BUG?

  Please submit a bug/ticket via http://www.pkgcore.org. Barring that, please at
  least send the details to pkgcore-bugs@pkgcore.org.  Please do not use
  bugs.gentoo.org as the first step; any bugs, pkgcore devs should filter before
  passing up at this point.

  You can also stop by at #pkgcore on irc.freenode.net.


DOCUMENTATION?

  Please take a look at either doc/ and dev-notes/ ; additionally, the code for
  the most part has docstrings, thus pydoc is a good reference.

  doc/getting-started.rst is a good introduction if you're just getting started.
  If you want to start hacking, take a look at dev-notes/developing.rst.

  In addition, html documentation is available at
  http://api.pkgcore.org/pkgcore/ , as is postscript and pdf.


TOOLS?

  pclone_cache: clone a repository cache

  pebuild: low-level ebuild operations, go through phases manually

  pmaint: generic utility for repository maintenance (syncing, copying...)

  pmerge: generic utility for doing resolution, fetching, merging/unmerging,
    etc.

  pquery: generic utility for querying info about repositories, revdeps, pkg
    search, vdb search, etc.

  pregen: script for doing ebuild metadata regeneration; can be parallelized

TESTS?

  A standalone test runner is integrated in setup.py; to run, just execute
  setup.py test
  Aside from that, our runner of choice is twisted's trial; ran via-

  trial pkgcore

  If you're doing development, trial is significantly friendlier; the standalone
  runner is designed to be mainly used for installations of pkgcore, where
  all tests must pass, else installation is aborted.


INSTALLING:

  To build:

    tar jxf pkgcore-0.XX.tar.bz2
    cd pkgcore-0.XX
    python setup.py build

  Run tests:

    cd pkgcore-0.xx
    python setup.py test
     or
    trial pkgcore

  To install:

    cd pkgcore-0.xx
    python setup.py install
    pplugincache