Skip to main content

experimental tool for collecting latest releases of webxdc apps

Project description

xdcget: a command line tool to collect webxdc apps from git repositories

The "xdcget" command line tool collects WebXDC apps via the release API of Codeberg and Github. The main purpose for this tool is to maintain a cache of released webxdc apps and to export release files so they can be imported from the WebXDC Store which in turn can be used by Delta Chat users to discover webxdc apps for sharing in chats.

Getting started

  1. Install xdcget command line tool from a local checkout:

     pip install -e . 
    
  2. Initialize config files:

     xdcget init 
    
  3. Edit xdcget.ini to contain your Codeberg and Github API access token (see below) and also adjust config options as needed.

  4. Edit sources.ini to modify the list of source repositories.

  5. Run the update command to cache all releases for repositories listed in sources.ini:

     xdcget update 
    
  6. Run the export command to create files for xdcstore import <PATH>

     xdcget export 
    

Getting a Codeberg API access token

Login with Codeberg and open https://codeberg.org/user/settings/applications to generate a new token. This token does not need any special "scopes" it's only used for querying releases of public repositories.
You can copy the resulting API token into your clipboard and then insert it into the config file:

# the line you need to put into `xdcget.ini` 
CODEBERG_USER = <your-codeberg-user-name> 
CODEBERG_TOKEN = <paste-your-codeberg-access-token-here> 

Getting a Github API access token

Login with github and open https://github.com/settings/tokens to generate a new token. This token does not need any access to your private repos -- it's only used for querying releases of public repositories. You may give it 90 days or other expiration times as you feel fine with. You can copy the resulting API token into your clipboard and then insert it into the config file:

# the line you need to put into `xdcget.ini` 
GITHUB_USER = <your-github-user-name> 
GITHUB_TOKEN = <paste-your-github-access-token-here> 

Building and publishing xdcget releases (maintainer notes)

This project uses a single pyproject.toml to define all python build/test metadata. See Packaging Python Projects for more details.

Quick notes on requirements for releasing:

  • pip install build twine for building and uploading distribution files

  • python -m build to build the distribution files

  • create API-tokens on PyPI to be able to upload to PyPI repositories.

  • twine upload dist/* to upload all built distribution files

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xdcget-0.2.3.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xdcget-0.2.3-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file xdcget-0.2.3.tar.gz.

File metadata

  • Download URL: xdcget-0.2.3.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for xdcget-0.2.3.tar.gz
Algorithm Hash digest
SHA256 35b2e214a1fc9ce864bb8aa1126f5d136429ccc8c505c8c332071df5e89697c9
MD5 49882e12d337cdcfaa09fa22818be41a
BLAKE2b-256 cda26946bd67deb8cfb80c1aa6d45b5f43c5a2add25042fa4f3af07caa211710

See more details on using hashes here.

File details

Details for the file xdcget-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: xdcget-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 9.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for xdcget-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 60b42b8135491a18fa805f8520a6d259b082a9f22c1f3fd6c56a1f8bedc4e964
MD5 71328a54e2078ddd461d3e38ea12369c
BLAKE2b-256 1c76e7ee38d92c91b241cf5128e67b6dccffcf5eb7757d7f6771c09e24bd4bce

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page