NAME
pkgctl-version-setup - Automatically detect and setup a basic nvchecker config
SYNOPSIS
pkgctl version setup [OPTIONS] [PKGBASE...]
DESCRIPTION
This subcommand automates the creation of a basic nvchecker(1) configuration file by analyzing the source array specified in the PKGBUILD(1) file of a package. This command intelligently detects various platforms and APIs (e.g., GitHub, GitLab, PyPI) used by the package sources and generates a corresponding .nvchecker.toml configuration based on its best guess.
This is particularly useful for initializing nvchecker(1) settings for a package without manually crafting the .nvchecker.toml file. It simplifies the process of setting up version checks, especially when transitioning a package’s monitoring from one source platform to another or starting version checks for a new package.
If no PKGBASE is specified, the command defaults to using the current working directory.
To obtain a list of supported sources and their expected URL formats, please consult the sources section.
OPTIONS
- -f, --force
-
Overwrite existing nvchecker(1) configuration
- --prefer-platform-api
-
Prefer platform specific GitHub/GitLab API over git for complex cases
- --url URL
-
Derive check target from the given URL instead of the source array entries
- --no-check
-
Do not run pkgctl-version-check(1) after setup
- --no-upstream
-
Setup a blank config for packages without upstream sources, like meta packages. This must only be used for cases without an upstream, please reach out to the developer team for guidance regarding upstream sources that are hard to configure.
- -h, --help
-
Show a help text
SOURCES
Here are the currently supported platforms and sources, along with examples of URL formats that enable their automatic detection as specific source types:
Git
• <https://github.com/example/project>
• <https://gitlab.com/example/group/project>
• git://git.foobar.org/example
• git+https://git.foobar.org/example
GitHub
• <https://github.com/example/project>
• <https://github.com/example/project/archive/v1.0/project-v1.0.tar.gz>
GitLab
• <https://gitlab.com/example/group/project>
• <https://gitlab.archlinux.org/archlinux/devtools.git>
• <https://gitlab.archlinux.org/archlinux/devtools/-/releases/v1.1.0/downloads/devtools-v1.1.0.tar.gz>
Hackage
• <https://hackage.haskell.org/package/xmonad>
• <https://hackage.haskell.org/package/xmonad-0.18.0/xmonad-0.18.0.tar.gz>
• <https://hackage.haskell.org/packages/archive/xmonad/0.18.0/xmonad-0.18.0.tar.gz>
NPM
• <https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz>
• <https://www.npmjs.com/package/node-gyp>
PyPI
• <https://pypi.io/packages/source/p/pyflakes>
• <https://pypi.org/packages/source/b/bleach>
• <https://files.pythonhosted.org/packages/source/p/pyflakes>
• <https://pypi.org/project/SQLAlchemy/>
RubyGems
• <https://rubygems.org/downloads/diff-lcs-1.5.1.gem>
• <https://rubygems.org/gems/diff-lcs>
CPAN
• <https://search.cpan.org/CPAN/authors/id/C/CO/COSIMO/Locale-PO-0.27.tar.gz>
• <https://cpan.metacpan.org/authors/id/C/CO/COSIMO/Locale-PO-0.27.tar.gz>
crates.io
• <https://static.crates.io/crates/shotgun/shotgun-1.0.crate>
• <https://crates.io/api/v1/crates/shotgun/1.0/download>
• <https://crates.io/crates/git-smash>
EXAMPLES
pkgctl version setup
Detects the source from the current directory’s PKGBUILD(1) and sets up a basic .nvchecker.toml.
pkgctl version setup --url <https://github.com/example/project>
Generates an .nvchecker.toml for the current PKGBUILD(1) but overrides the source URL with the specified GitHub project.
SEE ALSO
pkgctl-version(1) pkgctl-version-check(1) nvchecker(1) PKGBUILD(5)
HOMEPAGE
<https://gitlab.archlinux.org/archlinux/devtools>
Please report bugs and feature requests in the issue tracker. Please do your best to provide a reproducible test case for bugs.