NAME
App::swcat - Software catalog
VERSION
This document describes version 0.015 of App::swcat (from Perl
distribution App-swcat), released on 2021-04-04.
SYNOPSIS
See swcat script.
DESCRIPTION
swcat is a CLI for Software::Catalog.
FUNCTIONS
archive_info
Usage:
archive_info(%args) -> [status, msg, payload, meta]
Get info of a software archive.
This function is not exported.
Arguments ('*' denotes required arguments):
* arch => *software::arch*
* cache_period => *int*
* db_path => *filename*
Location of SQLite database (for caching), defaults to
~/.cache/swcat.db.
* software* => *str*
Returns an enveloped result (an array).
First element (status) is an integer containing HTTP status code (200
means OK, 4xx caller error, 5xx function error). Second element (msg) is
a string containing error message, or 'OK' if status is 200. Third
element (payload) is optional, the actual result. Fourth element (meta)
is called result metadata and is optional, a hash that contains extra
information.
Return value: (any)
available_archs
Usage:
available_archs(%args) -> [status, msg, payload, meta]
Get list of available architectures of a software.
This function is not exported.
Arguments ('*' denotes required arguments):
* cache_period => *int*
* db_path => *filename*
Location of SQLite database (for caching), defaults to
~/.cache/swcat.db.
* software* => *str*
Returns an enveloped result (an array).
First element (status) is an integer containing HTTP status code (200
means OK, 4xx caller error, 5xx function error). Second element (msg) is
a string containing error message, or 'OK' if status is 200. Third
element (payload) is optional, the actual result. Fourth element (meta)
is called result metadata and is optional, a hash that contains extra
information.
Return value: (any)
available_versions
Usage:
available_versions(%args) -> [status, msg, payload, meta]
Get list of available versions of a software.
This function is not exported.
Arguments ('*' denotes required arguments):
* arch => *software::arch*
* cache_period => *int*
* db_path => *filename*
Location of SQLite database (for caching), defaults to
~/.cache/swcat.db.
* software* => *str*
Returns an enveloped result (an array).
First element (status) is an integer containing HTTP status code (200
means OK, 4xx caller error, 5xx function error). Second element (msg) is
a string containing error message, or 'OK' if status is 200. Third
element (payload) is optional, the actual result. Fourth element (meta)
is called result metadata and is optional, a hash that contains extra
information.
Return value: (any)
download_url
Usage:
download_url(%args) -> [status, msg, payload, meta]
Get download URL(s) of a software.
Will return the version number in the payload if given a single software
name. Will return an array of {software=>..., version=>...} in the
payload if given multiple software names or one or more patterns.
This function is not exported.
Arguments ('*' denotes required arguments):
* arch => *software::arch*
* cache_period => *int*
* db_path => *filename*
Location of SQLite database (for caching), defaults to
~/.cache/swcat.db.
* softwares_or_patterns => *array[str]*
Returns an enveloped result (an array).
First element (status) is an integer containing HTTP status code (200
means OK, 4xx caller error, 5xx function error). Second element (msg) is
a string containing error message, or 'OK' if status is 200. Third
element (payload) is optional, the actual result. Fourth element (meta)
is called result metadata and is optional, a hash that contains extra
information.
Return value: (any)
latest_version
Usage:
latest_version(%args) -> [status, msg, payload, meta]
Get latest version of one or more software.
Will return the version number in the payload if given a single software
name. Will return an array of {software=>..., version=>...} in the
payload if given multiple software names or one or more patterns.
This function is not exported.
Arguments ('*' denotes required arguments):
* arch => *software::arch*
* cache_period => *int*
* db_path => *filename*
Location of SQLite database (for caching), defaults to
~/.cache/swcat.db.
* softwares_or_patterns => *array[str]*
Returns an enveloped result (an array).
First element (status) is an integer containing HTTP status code (200
means OK, 4xx caller error, 5xx function error). Second element (msg) is
a string containing error message, or 'OK' if status is 200. Third
element (payload) is optional, the actual result. Fourth element (meta)
is called result metadata and is optional, a hash that contains extra
information.
Return value: (any)
list
Usage:
list(%args) -> [status, msg, payload, meta]
List known software in the catalog (from installed
Software::Catalog::SW::* modules).
This function is not exported.
Arguments ('*' denotes required arguments):
* arch => *software::arch*
* cache_period => *int*
* db_path => *filename*
Location of SQLite database (for caching), defaults to
~/.cache/swcat.db.
* detail => *bool*
Returns an enveloped result (an array).
First element (status) is an integer containing HTTP status code (200
means OK, 4xx caller error, 5xx function error). Second element (msg) is
a string containing error message, or 'OK' if status is 200. Third
element (payload) is optional, the actual result. Fourth element (meta)
is called result metadata and is optional, a hash that contains extra
information.
Return value: (any)
list_cpan
Usage:
list_cpan(%args) -> [status, msg, payload, meta]
List available known software in the catalog (from
Software::Catalog::SW::* modules on CPAN).
This function is not exported.
Arguments ('*' denotes required arguments):
* arch => *software::arch*
* cache_period => *int*
* db_path => *filename*
Location of SQLite database (for caching), defaults to
~/.cache/swcat.db.
* detail => *bool*
* lcpan => *bool*
Returns an enveloped result (an array).
First element (status) is an integer containing HTTP status code (200
means OK, 4xx caller error, 5xx function error). Second element (msg) is
a string containing error message, or 'OK' if status is 200. Third
element (payload) is optional, the actual result. Fourth element (meta)
is called result metadata and is optional, a hash that contains extra
information.
Return value: (any)
list_installed
Usage:
list_installed(%args) -> [status, msg, payload, meta]
List known software in the catalog (from installed
Software::Catalog::SW::* modules).
This function is not exported.
Arguments ('*' denotes required arguments):
* arch => *software::arch*
* cache_period => *int*
* db_path => *filename*
Location of SQLite database (for caching), defaults to
~/.cache/swcat.db.
* detail => *bool*
Returns an enveloped result (an array).
First element (status) is an integer containing HTTP status code (200
means OK, 4xx caller error, 5xx function error). Second element (msg) is
a string containing error message, or 'OK' if status is 200. Third
element (payload) is optional, the actual result. Fourth element (meta)
is called result metadata and is optional, a hash that contains extra
information.
Return value: (any)
release_note
Usage:
release_note(%args) -> [status, msg, payload, meta]
Get release note of (a version of) a software.
This function is not exported.
Arguments ('*' denotes required arguments):
* arch => *software::arch*
* cache_period => *int*
* db_path => *filename*
Location of SQLite database (for caching), defaults to
~/.cache/swcat.db.
* software* => *str*
* version => *str*
Returns an enveloped result (an array).
First element (status) is an integer containing HTTP status code (200
means OK, 4xx caller error, 5xx function error). Second element (msg) is
a string containing error message, or 'OK' if status is 200. Third
element (payload) is optional, the actual result. Fourth element (meta)
is called result metadata and is optional, a hash that contains extra
information.
Return value: (any)
HOMEPAGE
Please visit the project's homepage at
<https://metacpan.org/release/App-swcat>.
SOURCE
Source repository is at <https://github.com/perlancar/perl-App-swcat>.
BUGS
Please report any bugs or feature requests on the bugtracker website
<https://github.com/perlancar/perl-App-swcat/issues>
When submitting a bug or request, please include a test-file or a patch
to an existing test-file that illustrates the bug or desired feature.
SEE ALSO
Software::Catalog
AUTHOR
perlancar <perlancar@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2021, 2019, 2018 by perlancar@cpan.org.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.