'\" t .\" Title: pkgctl-version-setup .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.23 .\" Date: 2025-02-25 .\" Manual: \ \& .\" Source: \ \& .\" Language: English .\" .TH "PKGCTL\-VERSION\-SETUP" "1" "2025-02-25" "\ \&" "\ \&" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "NAME" pkgctl-version-setup \- Automatically detect and setup a basic nvchecker config .SH "SYNOPSIS" .sp pkgctl version setup [OPTIONS] [PKGBASE...] .SH "DESCRIPTION" .sp 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 \f(CR.nvchecker.toml\fP configuration based on its best guess. .sp This is particularly useful for initializing nvchecker(1) settings for a package without manually crafting the \f(CR.nvchecker.toml\fP file. It simplifies the process of setting up version checks, especially when transitioning a package\(cqs monitoring from one source platform to another or starting version checks for a new package. .sp If no \f(CRPKGBASE\fP is specified, the command defaults to using the current working directory. .sp To obtain a list of supported sources and their expected URL formats, please consult the sources section. .SH "OPTIONS" .sp \fB\-f, \-\-force\fP .RS 4 Overwrite existing nvchecker(1) configuration .RE .sp \fB\-\-prefer\-platform\-api\fP .RS 4 Prefer platform specific GitHub/GitLab API over git for complex cases .RE .sp \fB\-\-url\fP \fIURL\fP .RS 4 Derive check target from the given URL instead of the source array entries .RE .sp \fB\-\-no\-check\fP .RS 4 Do not run pkgctl\-version\-check(1) after setup .RE .sp \fB\-\-no\-upstream\fP .RS 4 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. .RE .sp \fB\-h, \-\-help\fP .RS 4 Show a help text .RE .SH "SOURCES" .sp Here are the currently supported platforms and sources, along with examples of URL formats that enable their automatic detection as specific source types: .sp \fBGit\fP .RS 4 .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://github.com/example/project" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://gitlab.com/example/group/project" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} git://git.foobar.org/example .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} git+https://git.foobar.org/example .RE .RE .sp \fBGitHub\fP .RS 4 .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://github.com/example/project" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://github.com/example/project/archive/v1.0/project\-v1.0.tar.gz" "" "" .RE .RE .sp \fBGitLab\fP .RS 4 .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://gitlab.com/example/group/project" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://gitlab.archlinux.org/archlinux/devtools.git" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://gitlab.archlinux.org/archlinux/devtools/\-/releases/v1.1.0/downloads/devtools\-v1.1.0.tar.gz" "" "" .RE .RE .sp \fBHackage\fP .RS 4 .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://hackage.haskell.org/package/xmonad" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://hackage.haskell.org/package/xmonad\-0.18.0/xmonad\-0.18.0.tar.gz" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://hackage.haskell.org/packages/archive/xmonad/0.18.0/xmonad\-0.18.0.tar.gz" "" "" .RE .RE .sp \fBNPM\fP .RS 4 .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://registry.npmjs.org/node\-gyp/\-/node\-gyp\-10.0.1.tgz" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://www.npmjs.com/package/node\-gyp" "" "" .RE .RE .sp \fBPyPI\fP .RS 4 .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://pypi.io/packages/source/p/pyflakes" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://pypi.org/packages/source/b/bleach" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://files.pythonhosted.org/packages/source/p/pyflakes" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://pypi.org/project/SQLAlchemy/" "" "" .RE .RE .sp \fBRubyGems\fP .RS 4 .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://rubygems.org/downloads/diff\-lcs\-1.5.1.gem" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://rubygems.org/gems/diff\-lcs" "" "" .RE .RE .sp \fBCPAN\fP .RS 4 .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://search.cpan.org/CPAN/authors/id/C/CO/COSIMO/Locale\-PO\-0.27.tar.gz" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://cpan.metacpan.org/authors/id/C/CO/COSIMO/Locale\-PO\-0.27.tar.gz" "" "" .RE .RE .sp \fBcrates.io\fP .RS 4 .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://static.crates.io/crates/shotgun/shotgun\-1.0.crate" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://crates.io/api/v1/crates/shotgun/1.0/download" "" "" .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} .URL "https://crates.io/crates/git\-smash" "" "" .RE .RE .SH "EXAMPLES" .sp \fBpkgctl version setup\fP .RS 4 Detects the source from the current directory\(cqs PKGBUILD(1) and sets up a basic \f(CR.nvchecker.toml\fP. .RE .sp \fBpkgctl version setup \-\-url \c .URL "https://github.com/example/project" "" "\fP" .RS 4 Generates an \f(CR.nvchecker.toml\fP for the current PKGBUILD(1) but overrides the source URL with the specified GitHub project. .RE .SH "SEE ALSO" .sp pkgctl\-version(1) pkgctl\-version\-check(1) nvchecker(1) PKGBUILD(5) .SH "HOMEPAGE" .sp \fI\c .URL "https://gitlab.archlinux.org/archlinux/devtools" "" "\fP" .sp Please report bugs and feature requests in the issue tracker. Please do your best to provide a reproducible test case for bugs.