Package Indexer
Clients will connect to this package Indexer and inform which packages should be indexed,
and which dependencies they might have on other packages.
Messages from clients follow this pattern:
<command>|<package>|<dependencies>\n
Where:
-
<command>
is mandatory, and is either INDEX
, REMOVE
, or QUERY
-
<package>
is mandatory, the name of the package referred to by the command, e.g. mysql
, openssl
, pkg-config
, postgresql
, etc.
-
<dependencies>
is optional, and if present it will be a comma-delimited list of packages that need to be present before <package>
is installed. e.g. cmake,sphinx-doc,xz
-
The message always ends with the character \n
Build the binaries
$ make
To run the test:
$ make test
To start the pkgind
server:
$ ./bin/pkgind -h
To use the client pkgindctl
:
$ ./bin/pkgindctl -h
Run using pkgIndctl
INDEX: pkgIndctl index --package=cloog --dependencies=a,b,c
REMOVE: pkgIndctl index --package=cloog
QUERY: pkgIndctl query --package=cloog
Here are some sample messages:
INDEX|cloog|gmp,isl,pkg-config\n
INDEX|ceylon|\n
REMOVE|cloog|\n
QUERY|cloog|\n
Run within a container
DOCKER: docker run --rm -p 8080:8080 hectorj2f/pkgind start
RKT: rkt run --port=host:8080 docker://hectorj2f/pkgind --exec=/usr/local/bin/pkgind -- start
Further Steps
Check more detailed documentation: docs