From 96f39525bf60a499aa840015159d9040b53be69a Mon Sep 17 00:00:00 2001 From: Levente Polyak Date: Sat, 13 Jan 2024 15:27:34 +0100 Subject: feat(version): support nvchecker keyfile from user config home This adds support for global keyfile from the user config home XDG_CONFIG_HOME which allows to set tokens for GitHub and GitLab for certain nvchecker configuration. When ~/.config/nvchecker/keyfile.toml exists, it will automatically be appended as keyfile of the local .nvchecker.toml file. Component: pkgctl version check Signed-off-by: Levente Polyak --- src/lib/version/check.sh | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/lib') diff --git a/src/lib/version/check.sh b/src/lib/version/check.sh index c78e364..600a346 100644 --- a/src/lib/version/check.sh +++ b/src/lib/version/check.sh @@ -23,6 +23,9 @@ pkgctl_version_check_usage() { The current working directory is used if no PKGBASE is specified. + To provide GitHub or GitLab tokens to nvchecker, a keyfile.toml + will be supplied from \${XDG_CONFIG_HOME}/nvchecker. + OPTIONS -h, --help Show this help text @@ -110,6 +113,8 @@ get_upstream_version() { local config=.nvchecker.toml local output errors upstream_version local output + local opts=() + local keyfile="${XDG_CONFIG_HOME:-${HOME}/.config}/nvchecker/keyfile.toml" # check nvchecker config file if ! errors=$(nvchecker_check_config "${config}"); then @@ -117,7 +122,12 @@ get_upstream_version() { return 1 fi - if ! output=$(nvchecker --file "${config}" --logger json 2>&1 | \ + # populate keyfile to nvchecker opts + if [[ -f ${keyfile} ]]; then + opts+=(--keyfile "${keyfile}") + fi + + if ! output=$(nvchecker --file "${config}" --logger json "${opts[@]}" 2>&1 | \ jq --raw-output 'select(.level != "debug")'); then printf "failed to run nvchecker: %s" "${output}" return 1 -- cgit v1.2.3-70-g09d2