diff --git a/swh/lister/nixguix/__init__.py b/swh/lister/nixguix/__init__.py --- a/swh/lister/nixguix/__init__.py +++ b/swh/lister/nixguix/__init__.py @@ -2,6 +2,32 @@ # License: GNU General Public License version 3, or any later version # See top-level LICENSE file for more information +""" +NixGuix lister +============== + +Nix and Guix package managers are among other things (lazy) functional package managers. +We cannot easily parse their source declarations as it would require some involved +computations. + +After some discussion and work with both communities, they now expose public manifests +that the lister consumes to extract origins. Be it the `Guix manifest`_ or the `Nixpkgs +manifests`_. + +4 kinds of origins are listed: + +- main `Guix repository`_ or `Nixpkgs repository`_ which are git repositories +- DVCS origins (git, svn, hg) +- unique file +- unique tarball + +.. _Guix repository: https://git.savannah.gnu.org/cgit/guix.git/ +.. _Nixpkgs repository: https://github.com/NixOS/nixpkgs +.. _Guix manifest: https://guix.gnu.org/sources.json +.. _Nixpkgs manifests: https://nix-community.github.io/nixpkgs-swh/sources-unstable-full.json + +""" + def register(): from .lister import NixGuixLister