Removed used of deprecated os.open2
[zeroinstall/zeroinstall-rsl.git] / zeroinstall / injector / __init__.py
blob258ffe582a2fcd7597ea21aa485d5bf01174e0ec
1 """
2 Code relating to interfaces and policies.
4 To run a program using the injector, the following steps are typical:
6 1. Instantiate a L{policy.Policy}, giving it the root interface's URI.
7 2. Ask the policy object to choose a set of implementations.
8 1. The policy will try to find a compatible set of implementations that meet the user's policy
9 and work on the current L{arch}itecture, using a L{solve.Solver}.
10 2. The solver looks up feeds in the L{iface_cache}.
11 3. The policy will L{fetch} any feeds that are missing or out of date.
12 4. The cached or downloaded XML is parsed into a L{model} using the L{reader} module.
13 3. Download the selected implementations and L{zerostore.unpack} into the L{zerostore}.
14 4. Finally, L{run} the program.
16 The L{cli} module provides the B{0launch} command-line interface.
17 """