README
NAME
Pakku::RecMan - Recommendation Manager for Pakku
SYNOPSIS
Parse all distributions archives in store directory and add them to database
recman.raku --database=recman.sqlite --store=/path/to/distributions/archives updateserve the disributions's meta and archives, ( also can cooperate with other Pakku::RecMans )
PAKKU_RECMAN_HOST=localhost PAKKU_RECMAN_PORT=4242 recman.raku --database=recman.sqlite --store=/store --cooperate=recman.cpan.org --cooperate=recman.pakku.org serve;INSTALLATION
pakku add Pakku::RecMan
# or
zef install Pakku::RecManDESCRIPTION
Pakku::RecMan is a Recommendation Manager for Pakku
storeis anIO::Pathdirectory containing the*.tar.gzarchives of thedistributionsyou want to serve.To request
metaof a distribution:http://recman.pakku.org/meta?name=MyModule&ver=0.0.1Download
archiveof a distribution:http://recman.pakku.org/archive/distribution-path-provided-in-meta.tar.gz( The returnedmetawill haverecmansourcekey containing theurlof the archive )Currently
recman.pakku.orghasmetaandarchivesfor allRakudistribution's inp6candcpan, ( Except distributions with issues inMETAfile )Can request any distribution's
meta, eg:http://recman.pakku.org/meta?name=Inline::Perl5&ver=0.50When running in
cooperativemode,RecMans can cooperate together to fulfill a request
USE CASE
Having MyModule1 and MyModule2 served by local RecMan running in cooperative mode with other RecMans. Requesting MyModule1's meta will provide MyModule1 from the local RecMan and dependencies from the cooperative RecMans
CREDITS
I'm using crai to mirror locally the archives of the distributions in
p6candcpandatabaseschema is stolen fromcraiand modified to suitPakku's needs
AUTHOR
Haytham Elganiny [email protected]
COPYRIGHT AND LICENSE
Copyright 2020 Haytham Elganiny
This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.