add README.md
This commit is contained in:
parent
e4518918de
commit
af7b3594eb
2 changed files with 90 additions and 2 deletions
89
README.md
Normal file
89
README.md
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
Running
|
||||||
|
=======
|
||||||
|
|
||||||
|
Just start `./setup.sh`. It will do the following:
|
||||||
|
|
||||||
|
1. download apt sources and apt-file data for the amd64 Debian sid snapshot at
|
||||||
|
20141211T041251Z and store them in a directory tree rooted at
|
||||||
|
`./debian-sid-amd64`
|
||||||
|
2. go through all binary packages which have a file `DEBIAN/triggers` in their
|
||||||
|
control archive (the list is stored in the file `control_triggers_packages`)
|
||||||
|
and for each package:
|
||||||
|
2.0. download and unpack its control archive
|
||||||
|
2.1. store all interest-await file triggers in the file `interested-file`
|
||||||
|
2.2. store all interest-await explicit triggers in the file `interested-explicit`
|
||||||
|
2.1. store all activate-await file triggers in the file `activated-file`
|
||||||
|
2.1. store all activate-await explicit triggers in the file `activated-explicit`
|
||||||
|
2.6. remove the downloaded binary package and unpacked control archive
|
||||||
|
3. go through `interested-file` and for each line:
|
||||||
|
3.1. calculate the dependency closure for the binary package and for
|
||||||
|
each package in the closure:
|
||||||
|
3.1.1. use `apt-file` to get all files of the package
|
||||||
|
3.1.2. check if the current file trigger matches any file in the package
|
||||||
|
3.1.3. store any hits in the file `result-file`
|
||||||
|
4. go through `interested-file` and for each line:
|
||||||
|
4.1. calculate the dependency closure for the binary package and for
|
||||||
|
each package in the closure:
|
||||||
|
4.1.1. check if the package activates the current file trigger
|
||||||
|
3.1.3. append any hits to the file `result-file`
|
||||||
|
5. go through `interested-explicit` and for each line:
|
||||||
|
5.1. calculate the dependency closure for the binary package and for
|
||||||
|
each package in the closure:
|
||||||
|
5.1.1. check if the package activate the current explicit trigger
|
||||||
|
3.1.3. store any hits in the file `result-explicit`
|
||||||
|
|
||||||
|
Files
|
||||||
|
=====
|
||||||
|
|
||||||
|
control_triggers_packages
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
The currently known files that ship a `DEBIAN/triggers` file in their control
|
||||||
|
metadata. In the future, this list should be autogenerated.
|
||||||
|
|
||||||
|
interested-file
|
||||||
|
---------------
|
||||||
|
|
||||||
|
Associates binary packages to file triggers they are interested in. The first
|
||||||
|
column is the binary package, the second column is either `interest` or
|
||||||
|
`interest-await` and the last column the path they are interested in.
|
||||||
|
|
||||||
|
interested-explicit
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Associates binary packages to explicit triggers they are interested in. The
|
||||||
|
first column is the binary package, the second column is either `interest` or
|
||||||
|
`interest-await` and the last column the name of the explicit trigger they are
|
||||||
|
interested in.
|
||||||
|
|
||||||
|
activated-file
|
||||||
|
--------------
|
||||||
|
|
||||||
|
Associates binary packages to file triggers they activate. The first column is
|
||||||
|
the binary package, the second column is either `activate` or `activate-await`
|
||||||
|
and the last column the path they activate.
|
||||||
|
|
||||||
|
activate-explicit
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
Associates binary packages to explicit triggers they activate. The first column
|
||||||
|
is the binary package, the second column is either `activate` or
|
||||||
|
`activate-await` and the last column the explicit trigger they activate.
|
||||||
|
|
||||||
|
result-file
|
||||||
|
-----------
|
||||||
|
|
||||||
|
Associates binary packages with other binary packages they can form a file
|
||||||
|
trigger cycle with. The first column is the binary package containing the file
|
||||||
|
trigger, the second column is the file trigger, the third column is a binary
|
||||||
|
package providing a path that triggers the binary package in the first column,
|
||||||
|
the fourth column is the triggering path of provided by the binary package in
|
||||||
|
the third column.
|
||||||
|
|
||||||
|
result-explicit
|
||||||
|
---------------
|
||||||
|
|
||||||
|
Associates binary packages with other binary packages they can form an explicit
|
||||||
|
trigger cycle with. The first column is the binary package interested in the
|
||||||
|
explicit trigger, the second column is the name of the explicit trigger, the
|
||||||
|
third column is the binary package activating the trigger.
|
3
setup.sh
3
setup.sh
|
@ -122,8 +122,7 @@ printf "" > result-explicit
|
||||||
|
|
||||||
# go through those that are interested in an explicit trigger and check them
|
# go through those that are interested in an explicit trigger and check them
|
||||||
# against the packages in their dependency closure which activate it
|
# against the packages in their dependency closure which activate it
|
||||||
#cat interested-explicit | while read pkg ttype iname; do
|
cat interested-explicit | while read pkg ttype iname; do
|
||||||
echo wims-modules interest wims-reindex | while read pkg ttype iname; do
|
|
||||||
echo "working on $pkg..." >&2
|
echo "working on $pkg..." >&2
|
||||||
echo "getting dependency closure..." >&2
|
echo "getting dependency closure..." >&2
|
||||||
# go through all packages in the dependency closure and check if any of
|
# go through all packages in the dependency closure and check if any of
|
||||||
|
|
Loading…
Reference in a new issue