# livecheck
[![QA](https://github.com/Tatsh/livecheck/actions/workflows/qa.yml/badge.svg)](https://github.com/Tatsh/livecheck/actions/workflows/qa.yml)
[![Tests](https://github.com/Tatsh/livecheck/actions/workflows/tests.yml/badge.svg)](https://github.com/Tatsh/livecheck/actions/workflows/tests.yml)
[![Coverage Status](https://coveralls.io/repos/github/Tatsh/livecheck/badge.svg?branch=master)](https://coveralls.io/github/Tatsh/livecheck?branch=master)
[![Documentation Status](https://readthedocs.org/projects/livecheck/badge/?version=latest)](https://livecheck.readthedocs.io/en/latest/?badge=latest)
![PyPI - Version](https://img.shields.io/pypi/v/livecheck)
![GitHub tag (with filter)](https://img.shields.io/github/v/tag/Tatsh/livecheck)
![GitHub](https://img.shields.io/github/license/Tatsh/livecheck)
![GitHub commits since latest release (by SemVer including pre-releases)](https://img.shields.io/github/commits-since/Tatsh/livecheck/v0.0.13/master)
Tool for overlays to update ebuilds. Inspired by the MacPorts `port` subcommand of the same name.
## Installation
On Gentoo, add my overlay and install:
```shell
eselect overlay enable tatsh-overlay
emerge --sync
emerge livecheck
```
## Command line usage
```plain
Usage: livecheck [OPTIONS] [PACKAGE_NAMES]...
Options:
-a, --auto-update Rename and modify ebuilds.
-d, --debug Enable debug logging.
-e, --exclude TEXT Exclude package(s) from updates.
-g, --git Use git and pkgdev to make changes.
-k, --keep-old Keep old ebuild versions.
-p, --progress Enable progress logging.
-W, --working-dir DIRECTORY Working directory. Should be a port tree root.
--help Show this message and exit.
```
## Heuristic update detection
This package can do automated lookups based on commonly used hosts. Currently:
- GitHub archives
- GitHub commit hashes
- GitHub releases
- JetBrains products
- PyPI
This works as long as the version system is usable with Portage's version
comparison function. For anything else, see [Package configuration](#package-configuration).
## Package configuration
For packages that will not work with currently heuristic checking, a configuration file named
`livecheck.json` can be placed in the directory alongside the ebuild.
### Configuration keys
- `branch` - The GitHub branch name to use for commits.
- `keep_old` - boolean - Keep old ebuild versions.
- `no_auto_update` - boolean - Do not allow auto-updating of this package.
- `regex` - The regular expression to use.
- `semver` - When set to `false`, do not allow detection of semantic versioning.
- `transformation_function` - string - Function to use to transform the version string. Currently
only `dotize` is supported. Others are for internal use.
- `type` - `none`, `regex`, or `checksum`.
- `url` - URL of the document to run regular expressions against.
- `use_vercmp` - boolean - if `vercmp` from Portage should be used. Default: `true`.
## Development use
### Set up PYTHONPATH
As root, set the environment variable `PYTHONPATH` to include where the `livecheck` module is
located. Use `python -m livecheck` instead of `livecheck` to execute commands.
### With a virtualenv
Run `poetry install --all-extras --with=dev,docs,tests` to set up a virtualenv.
Fully copy `/etc/portage` to the root of your virtualenv. Then you must fix `make.profile`. Also
consider making changes in `repos.conf` if necessary.
Example:
```shell
poetry shell
cd "${VIRTUAL_ENV}/etc"
cp -R /etc/portage .
cd portage
ln -sf "$(readlink -f /etc/portage/make.profile)" make.profile
```
Raw data
{
"_id": null,
"home_page": "https://github.com/Tatsh/livecheck",
"name": "livecheck",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.11",
"maintainer_email": null,
"keywords": "command line, ebuild, gentoo, portage",
"author": "Andrew Udvare",
"author_email": "audvare@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/3e/30/641720f8f0a87d5b6096f0b8464767222af32c3a5e8759e2e02da8b6d9da/livecheck-0.0.13.tar.gz",
"platform": null,
"description": "# livecheck\n\n[![QA](https://github.com/Tatsh/livecheck/actions/workflows/qa.yml/badge.svg)](https://github.com/Tatsh/livecheck/actions/workflows/qa.yml)\n[![Tests](https://github.com/Tatsh/livecheck/actions/workflows/tests.yml/badge.svg)](https://github.com/Tatsh/livecheck/actions/workflows/tests.yml)\n[![Coverage Status](https://coveralls.io/repos/github/Tatsh/livecheck/badge.svg?branch=master)](https://coveralls.io/github/Tatsh/livecheck?branch=master)\n[![Documentation Status](https://readthedocs.org/projects/livecheck/badge/?version=latest)](https://livecheck.readthedocs.io/en/latest/?badge=latest)\n![PyPI - Version](https://img.shields.io/pypi/v/livecheck)\n![GitHub tag (with filter)](https://img.shields.io/github/v/tag/Tatsh/livecheck)\n![GitHub](https://img.shields.io/github/license/Tatsh/livecheck)\n![GitHub commits since latest release (by SemVer including pre-releases)](https://img.shields.io/github/commits-since/Tatsh/livecheck/v0.0.13/master)\n\nTool for overlays to update ebuilds. Inspired by the MacPorts `port` subcommand of the same name.\n\n## Installation\n\nOn Gentoo, add my overlay and install:\n\n```shell\neselect overlay enable tatsh-overlay\nemerge --sync\nemerge livecheck\n```\n\n## Command line usage\n\n```plain\nUsage: livecheck [OPTIONS] [PACKAGE_NAMES]...\n\nOptions:\n -a, --auto-update Rename and modify ebuilds.\n -d, --debug Enable debug logging.\n -e, --exclude TEXT Exclude package(s) from updates.\n -g, --git Use git and pkgdev to make changes.\n -k, --keep-old Keep old ebuild versions.\n -p, --progress Enable progress logging.\n -W, --working-dir DIRECTORY Working directory. Should be a port tree root.\n --help Show this message and exit.\n```\n\n## Heuristic update detection\n\nThis package can do automated lookups based on commonly used hosts. Currently:\n\n- GitHub archives\n- GitHub commit hashes\n- GitHub releases\n- JetBrains products\n- PyPI\n\nThis works as long as the version system is usable with Portage's version\ncomparison function. For anything else, see [Package configuration](#package-configuration).\n\n## Package configuration\n\nFor packages that will not work with currently heuristic checking, a configuration file named\n`livecheck.json` can be placed in the directory alongside the ebuild.\n\n### Configuration keys\n\n- `branch` - The GitHub branch name to use for commits.\n- `keep_old` - boolean - Keep old ebuild versions.\n- `no_auto_update` - boolean - Do not allow auto-updating of this package.\n- `regex` - The regular expression to use.\n- `semver` - When set to `false`, do not allow detection of semantic versioning.\n- `transformation_function` - string - Function to use to transform the version string. Currently\n only `dotize` is supported. Others are for internal use.\n- `type` - `none`, `regex`, or `checksum`.\n- `url` - URL of the document to run regular expressions against.\n- `use_vercmp` - boolean - if `vercmp` from Portage should be used. Default: `true`.\n\n## Development use\n\n### Set up PYTHONPATH\n\nAs root, set the environment variable `PYTHONPATH` to include where the `livecheck` module is\nlocated. Use `python -m livecheck` instead of `livecheck` to execute commands.\n\n### With a virtualenv\n\nRun `poetry install --all-extras --with=dev,docs,tests` to set up a virtualenv.\n\nFully copy `/etc/portage` to the root of your virtualenv. Then you must fix `make.profile`. Also\nconsider making changes in `repos.conf` if necessary.\n\nExample:\n\n```shell\npoetry shell\ncd \"${VIRTUAL_ENV}/etc\"\ncp -R /etc/portage .\ncd portage\nln -sf \"$(readlink -f /etc/portage/make.profile)\" make.profile\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Tool to update ebuilds.",
"version": "0.0.13",
"project_urls": {
"Documentation": "https://livecheck.readthedocs.io/",
"Homepage": "https://github.com/Tatsh/livecheck",
"Repository": "https://github.com/Tatsh/livecheck"
},
"split_keywords": [
"command line",
" ebuild",
" gentoo",
" portage"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0ac9b7e5ff80557dcf312baa8455852993aecee4d5ea6fa29a5f863948b7bd1a",
"md5": "2b044117c3aed530604e63f9e58b4501",
"sha256": "d1a01e62c0b3cd10b255d569a220eaa97adba99129fd646f511fad85ebe5d138"
},
"downloads": -1,
"filename": "livecheck-0.0.13-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2b044117c3aed530604e63f9e58b4501",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.11",
"size": 27983,
"upload_time": "2024-11-15T22:26:28",
"upload_time_iso_8601": "2024-11-15T22:26:28.547240Z",
"url": "https://files.pythonhosted.org/packages/0a/c9/b7e5ff80557dcf312baa8455852993aecee4d5ea6fa29a5f863948b7bd1a/livecheck-0.0.13-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3e30641720f8f0a87d5b6096f0b8464767222af32c3a5e8759e2e02da8b6d9da",
"md5": "477ee5efd333c5e60ef42fd3f96be663",
"sha256": "4fbce177d3e184bbc6d5e0eeb791500b49cffdfb7d875435cadd345e9aa36dd5"
},
"downloads": -1,
"filename": "livecheck-0.0.13.tar.gz",
"has_sig": false,
"md5_digest": "477ee5efd333c5e60ef42fd3f96be663",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.11",
"size": 25630,
"upload_time": "2024-11-15T22:26:30",
"upload_time_iso_8601": "2024-11-15T22:26:30.239575Z",
"url": "https://files.pythonhosted.org/packages/3e/30/641720f8f0a87d5b6096f0b8464767222af32c3a5e8759e2e02da8b6d9da/livecheck-0.0.13.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-15 22:26:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Tatsh",
"github_project": "livecheck",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "livecheck"
}