diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/verbs/__init__.py | 0 | ||||
| -rw-r--r-- | src/verbs/sync.py | 20 | ||||
| -rw-r--r-- | src/xi.py | 6 | 
3 files changed, 23 insertions, 3 deletions
| diff --git a/src/verbs/__init__.py b/src/verbs/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/verbs/__init__.py diff --git a/src/verbs/sync.py b/src/verbs/sync.py new file mode 100644 index 0000000..f23d4fc --- /dev/null +++ b/src/verbs/sync.py @@ -0,0 +1,20 @@ + + +# have separate list and download methods for each scheme +def sync_package_infos(source_name, url, repos): +    scheme = url.split(":")[0] +     +    # TODO: add ftp +    if scheme.startswith("http"): +        sync_func = download_repo +    else: +        # Assume its a location on the file system +        sync_func = copy_repo + +    for repo in repos: +        sync_func(output, url + f"/{repo}" if url[-1] == "/" else repo) + +         +def sync(options, config): +    sources = config["sources"] +    print("Synced!") @@ -1,14 +1,14 @@  import options  import config +from verbs.sync import sync +  def search():      pass  def install():      pass  def remove():      pass -def sync(): -    pass  verbs = { v: globals()[v] for v in [                  "search", @@ -32,7 +32,7 @@ def main():          (              verbs[verb] if verb in verbs else search          )( -            args[1:] if len(args) > 1 else [] +            args[1:] if len(args) > 1 else [],  conf          )      else:          options.print_usage() | 
