mirror of
				https://gitlab.archlinux.org/archlinux/devtools.git
				synced 2025-11-04 01:34:42 +01:00 
			
		
		
		
	Compare commits
	
		
			2 Commits
		
	
	
		
			master
			...
			eb4854aa26
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					eb4854aa26 | ||
| 
						 | 
					287d2b4064 | 
@@ -3,7 +3,7 @@ pkgctl-auth(1)
 | 
			
		||||
 | 
			
		||||
Name
 | 
			
		||||
----
 | 
			
		||||
pkgctl-auth - Authenticate with services like GitLab.
 | 
			
		||||
pkgctl-auth - Authenticate with serivces like GitLab.
 | 
			
		||||
 | 
			
		||||
Synopsis
 | 
			
		||||
--------
 | 
			
		||||
 
 | 
			
		||||
@@ -39,17 +39,6 @@ placed in the `$XDG_CONFIG_HOME`/nvchecker` directory. This keyfile is
 | 
			
		||||
used for providing the necessary authentication tokens required for
 | 
			
		||||
accessing the GitHub or GitLab API.
 | 
			
		||||
 | 
			
		||||
Combiner Source
 | 
			
		||||
---------------
 | 
			
		||||
 | 
			
		||||
To utilize the combiner source, the `pkgbase` section must be declared as the
 | 
			
		||||
combiner source. Additionally, individual sections should be added using a
 | 
			
		||||
quoted table key consisting of the `pkgbase` followed by the stage name,
 | 
			
		||||
separated by double colons. For example: `["sudo:stage1"]`.
 | 
			
		||||
 | 
			
		||||
This allows to chain different sources together into one result, or allow
 | 
			
		||||
multi stage transformation of our source via multiple regex.
 | 
			
		||||
 | 
			
		||||
Options
 | 
			
		||||
-------
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -49,9 +49,6 @@ pkgctl diff::
 | 
			
		||||
pkgctl issue::
 | 
			
		||||
	Work with GitLab packaging issues
 | 
			
		||||
 | 
			
		||||
pkgctl license::
 | 
			
		||||
	Check and manage package licenses
 | 
			
		||||
 | 
			
		||||
pkgctl release::
 | 
			
		||||
	Release step to commit, tag and upload build artifacts
 | 
			
		||||
 | 
			
		||||
@@ -73,7 +70,6 @@ pkgctl-build(1)
 | 
			
		||||
pkgctl-db(1)
 | 
			
		||||
pkgctl-diff(1)
 | 
			
		||||
pkgctl-issue(1)
 | 
			
		||||
pkgctl-license(1)
 | 
			
		||||
pkgctl-release(1)
 | 
			
		||||
pkgctl-repo(1)
 | 
			
		||||
pkgctl-search(1)
 | 
			
		||||
 
 | 
			
		||||
@@ -123,10 +123,9 @@ fi
 | 
			
		||||
needsversioning=()
 | 
			
		||||
 | 
			
		||||
if [[ ! -e REUSE.toml || ! -e LICENSE || ! -d LICENSES ]]; then
 | 
			
		||||
	# TODO: Make this a hard failure in the future after packagers have had
 | 
			
		||||
	# some time to add licenses to all packages.
 | 
			
		||||
	warning "package doesn't have proper licensing information, set it up using:"
 | 
			
		||||
	error "package doesn't have proper licensing information, set it up using:"
 | 
			
		||||
	msg2 'pkgctl license setup'
 | 
			
		||||
	exit 1
 | 
			
		||||
else
 | 
			
		||||
	pkgctl license check
 | 
			
		||||
	needsversioning+=(REUSE.toml LICENSE LICENSES/*)
 | 
			
		||||
 
 | 
			
		||||
@@ -54,8 +54,7 @@ export RSYNC_OPTS=(
 | 
			
		||||
  --human-readable
 | 
			
		||||
  --progress
 | 
			
		||||
  --partial
 | 
			
		||||
  # suffix the partial dir with the PID in order to avoid clashes
 | 
			
		||||
  --partial-dir=.partial.$$
 | 
			
		||||
  --partial-dir=.partial
 | 
			
		||||
  --delay-updates
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -442,10 +441,3 @@ relative_date_unit() {
 | 
			
		||||
	done
 | 
			
		||||
	printf "1 second"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# escapes regex metacharacters in a given string
 | 
			
		||||
regex_escape() {
 | 
			
		||||
	# shellcheck disable=SC2001,SC2016
 | 
			
		||||
	sed 's/[\^.\[$()|*+?{\\]/\\&/g' <<<"$1"
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -94,19 +94,19 @@ pkgctl_license_check() {
 | 
			
		||||
		pushd "${path}" >/dev/null
 | 
			
		||||
 | 
			
		||||
		if [[ ! -f PKGBUILD ]]; then
 | 
			
		||||
			msg_error "${BOLD}${path}:${ALL_OFF} no PKGBUILD found"
 | 
			
		||||
			msg_error "${BOLD}${pkgbase}:${ALL_OFF} no PKGBUILD found"
 | 
			
		||||
			return 1
 | 
			
		||||
		fi
 | 
			
		||||
 | 
			
		||||
		if [[ ! -f .SRCINFO ]]; then
 | 
			
		||||
			msg_error "${BOLD}${path}:${ALL_OFF} no .SRCINFO found"
 | 
			
		||||
			return 1
 | 
			
		||||
		fi
 | 
			
		||||
		# reset common PKGBUILD variables
 | 
			
		||||
		unset pkgbase
 | 
			
		||||
 | 
			
		||||
		if ! pkgbase=$(grep --max-count=1 --extended-regexp "pkgbase = (.+)" .SRCINFO | awk '{print $3}'); then
 | 
			
		||||
			msg_error "${BOLD}${path}:${ALL_OFF} pkgbase not found in .SRCINFO"
 | 
			
		||||
		# shellcheck source=contrib/makepkg/PKGBUILD.proto
 | 
			
		||||
		if ! . ./PKGBUILD; then
 | 
			
		||||
			msg_error "${BOLD}${pkgbase}:${ALL_OFF} failed to source PKGBUILD"
 | 
			
		||||
			return 1
 | 
			
		||||
		fi
 | 
			
		||||
		pkgbase=${pkgbase:-$pkgname}
 | 
			
		||||
 | 
			
		||||
		if [[ ! -e LICENSE ]]; then
 | 
			
		||||
			msg_error "${BOLD}${pkgbase}:${ALL_OFF} is missing the LICENSE file"
 | 
			
		||||
 
 | 
			
		||||
@@ -188,7 +188,6 @@ path = [
 | 
			
		||||
    "README.md",
 | 
			
		||||
    "keys/**",
 | 
			
		||||
    ".SRCINFO",
 | 
			
		||||
    ".gitignore",
 | 
			
		||||
    ".nvchecker.toml",
 | 
			
		||||
    "*.install",
 | 
			
		||||
    "*.sysusers",
 | 
			
		||||
 
 | 
			
		||||
@@ -6,8 +6,6 @@
 | 
			
		||||
DEVTOOLS_INCLUDE_UTIL_PKGBUILD_SH=1
 | 
			
		||||
 | 
			
		||||
_DEVTOOLS_LIBRARY_DIR=${_DEVTOOLS_LIBRARY_DIR:-@pkgdatadir@}
 | 
			
		||||
# shellcheck source=src/lib/common.sh
 | 
			
		||||
source "${_DEVTOOLS_LIBRARY_DIR}"/lib/common.sh
 | 
			
		||||
# shellcheck source=src/lib/util/makepkg.sh
 | 
			
		||||
source "${_DEVTOOLS_LIBRARY_DIR}"/lib/util/makepkg.sh
 | 
			
		||||
 | 
			
		||||
@@ -23,8 +21,6 @@ pkgbuild_set_pkgver() {
 | 
			
		||||
	local new_pkgver=$1
 | 
			
		||||
	local pkgver=${pkgver}
 | 
			
		||||
 | 
			
		||||
	pkgver="$(regex_escape "${pkgver}")"
 | 
			
		||||
 | 
			
		||||
	if [[ $(type -t pkgver) == function ]]; then
 | 
			
		||||
		# TODO: check if die or warn, if we provide _commit _gitcommit setter maybe?
 | 
			
		||||
		warning 'setting pkgver variable has no effect if the PKGBUILD has a pkgver() function'
 | 
			
		||||
 
 | 
			
		||||
@@ -304,11 +304,6 @@ get_upstream_version() {
 | 
			
		||||
		return 1
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	if ! output=$(jq --raw-output --exit-status 'select(.name == "'"${pkgbase}"'")' <<< "${output}"); then
 | 
			
		||||
		printf "failed to select pkgbase result from output"
 | 
			
		||||
		return 1
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	if ! upstream_version=$(jq --raw-output --exit-status '.version' <<< "${output}"); then
 | 
			
		||||
		printf "failed to select version from result"
 | 
			
		||||
		return 1
 | 
			
		||||
@@ -351,16 +346,10 @@ nvchecker_check_config() {
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	# check if the config contains any section other than pkgbase
 | 
			
		||||
	if [[ -n ${pkgbase} ]] && property=$(grep --max-count=1 --perl-regexp "^\\[(?!\"?${pkgbase//+/\\+}(:.+)?\"?\\]).+\\]" < "${config}"); then
 | 
			
		||||
	if [[ -n ${pkgbase} ]] && property=$(grep --max-count=1 --perl-regexp "^\\[(?!\"?${pkgbase//+/\\+}\"?\\]).+\\]" < "${config}"); then
 | 
			
		||||
		printf "non-pkgbase section not supported in %s: %s" "${config}" "${property}"
 | 
			
		||||
		return 1
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	# check if the config is using the 'cmd' source
 | 
			
		||||
	if grep --extended-regexp --quiet '^\s*source\s*=\s*["'\'']cmd["'\''].*' "${config}"; then
 | 
			
		||||
		printf "using the 'cmd' source in %s is disallowed" "${config}"
 | 
			
		||||
		return 1
 | 
			
		||||
	fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
nvchecker_check_error() {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user