mirror of
				https://gitlab.archlinux.org/archlinux/devtools.git
				synced 2025-10-30 23:34:43 +01:00 
			
		
		
		
	Compare commits
	
		
			5 Commits
		
	
	
		
			v1.4.0
			...
			feat/ports
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | e70a0e69d2 | ||
|   | 3f0ebbc6d2 | ||
|   | fc56ebedf3 | ||
|   | 01757e6904 | ||
|   | c5fe8ff3e6 | 
| @@ -150,6 +150,7 @@ _pkgctl_cmds=( | ||||
| 	db | ||||
| 	diff | ||||
| 	issue | ||||
| 	license | ||||
| 	release | ||||
| 	repo | ||||
| 	search | ||||
|   | ||||
| @@ -155,7 +155,7 @@ if (( ${#needsversioning[*]} )); then | ||||
| 		if [[ ! -f "${file}" ]]; then | ||||
| 			continue | ||||
| 		fi | ||||
| 		if ! git ls-files --error-unmatch "$file"; then | ||||
| 		if ! git ls-files --error-unmatch "$file" >/dev/null; then | ||||
| 			die "%s is not under version control" "$file" | ||||
| 		fi | ||||
| 	done | ||||
|   | ||||
| @@ -312,7 +312,7 @@ pkgctl_build() { | ||||
|  | ||||
| 	# Update pacman cache for auto-detection | ||||
| 	if [[ -z ${REPO} ]]; then | ||||
| 		update_pacman_repo_cache multilib | ||||
| 		update_pacman_repo_cache stable | ||||
| 	# Check valid repos if not resolved dynamically | ||||
| 	elif ! in_array "${REPO}" "${DEVTOOLS_VALID_REPOS[@]}"; then | ||||
| 		die "Invalid repository target: %s" "${REPO}" | ||||
|   | ||||
| @@ -51,7 +51,6 @@ pkgctl_db_remove() { | ||||
| 	local partial=0 | ||||
| 	local confirm=1 | ||||
| 	local dbscripts_options=() | ||||
| 	local lookup_repo=multilib | ||||
| 	local pkgname | ||||
|  | ||||
| 	# option checking | ||||
| @@ -106,13 +105,13 @@ pkgctl_db_remove() { | ||||
| 				update_pacman_repo_cache unstable | ||||
| 				;; | ||||
| 			*-staging) | ||||
| 				update_pacman_repo_cache multilib-staging | ||||
| 				update_pacman_repo_cache staging | ||||
| 				;; | ||||
| 			*-testing) | ||||
| 				update_pacman_repo_cache multilib-testing | ||||
| 				update_pacman_repo_cache testing | ||||
| 				;; | ||||
| 			*) | ||||
| 				update_pacman_repo_cache multilib | ||||
| 				update_pacman_repo_cache stable | ||||
| 				;; | ||||
| 		esac | ||||
|  | ||||
|   | ||||
| @@ -188,10 +188,13 @@ path = [ | ||||
|     "README.md", | ||||
|     "keys/**", | ||||
|     ".SRCINFO", | ||||
|     ".gitignore", | ||||
|     ".nvchecker.toml", | ||||
|     "*.install", | ||||
|     "*.sysusers", | ||||
|     "*sysusers.conf", | ||||
|     "*.tmpfiles", | ||||
|     "*tmpfiles.conf", | ||||
|     "*.logrotate", | ||||
|     "*.pam", | ||||
|     "*.service", | ||||
|   | ||||
| @@ -124,7 +124,7 @@ pkgctl_release() { | ||||
|  | ||||
| 	# Update pacman cache for auto-detection | ||||
| 	if [[ -z ${REPO} ]]; then | ||||
| 		update_pacman_repo_cache multilib | ||||
| 		update_pacman_repo_cache stable | ||||
| 	# Check valid repos if not resolved dynamically | ||||
| 	elif ! in_array "${REPO}" "${DEVTOOLS_VALID_REPOS[@]}"; then | ||||
| 		die "Invalid repository target: %s" "${REPO}" | ||||
|   | ||||
							
								
								
									
										26
									
								
								src/lib/util/machine.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								src/lib/util/machine.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| #!/hint/bash | ||||
| # | ||||
| # SPDX-License-Identifier: GPL-3.0-or-later | ||||
|  | ||||
| [[ -z ${DEVTOOLS_INCLUDE_UTIL_MACHINE_SH:-} ]] || return 0 | ||||
| DEVTOOLS_INCLUDE_UTIL_MACHINE_SH=1 | ||||
|  | ||||
| _DEVTOOLS_LIBRARY_DIR=${_DEVTOOLS_LIBRARY_DIR:-@pkgdatadir@} | ||||
| # shellcheck source=src/lib/common.sh | ||||
| source "${_DEVTOOLS_LIBRARY_DIR}"/lib/common.sh | ||||
|  | ||||
|  | ||||
| set -eo pipefail | ||||
|  | ||||
| machine_get_hardware_name() { | ||||
| 	uname --machine | ||||
| } | ||||
|  | ||||
| machine_has_multilib() { | ||||
| 	case "$(machine_get_hardware_name)" in | ||||
| 		x86_64*) | ||||
| 			return 0 | ||||
| 			;; | ||||
| 	esac | ||||
| 	return 1 | ||||
| } | ||||
| @@ -8,6 +8,8 @@ DEVTOOLS_INCLUDE_UTIL_PACMAN_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/machine.sh | ||||
| source "${_DEVTOOLS_LIBRARY_DIR}"/lib/util/machine.sh | ||||
|  | ||||
| set -e | ||||
|  | ||||
| @@ -18,7 +20,8 @@ readonly _DEVTOOLS_MAKEPKG_CONF_DIR=${_DEVTOOLS_LIBRARY_DIR}/makepkg.conf.d | ||||
|  | ||||
|  | ||||
| update_pacman_repo_cache() { | ||||
| 	local repo=${1:-multilib} | ||||
| 	local repo=${1:-stable} | ||||
| 	repo=$(pacman_resolve_virtual_repo_name "${repo}") | ||||
|  | ||||
| 	mkdir -p "${_DEVTOOLS_PACMAN_CACHE_DIR}" | ||||
| 	msg "Updating pacman database cache" | ||||
| @@ -32,7 +35,8 @@ update_pacman_repo_cache() { | ||||
|  | ||||
| get_pacman_repo_from_pkgbuild() { | ||||
| 	local path=${1:-PKGBUILD} | ||||
| 	local repo=${2:-multilib} | ||||
| 	local repo=${2:-stable} | ||||
| 	repo=$(pacman_resolve_virtual_repo_name "${repo}") | ||||
| 	local -a pkgnames | ||||
|  | ||||
| 	# shellcheck source=contrib/makepkg/PKGBUILD.proto | ||||
| @@ -72,6 +76,7 @@ get_pkgnames_from_repo_pkgbase() { | ||||
|  | ||||
| 	# update the pacman repo cache if it doesn't exist yet | ||||
| 	if [[ ! -d "${_DEVTOOLS_PACMAN_CACHE_DIR}" ]]; then | ||||
| 		# TODO: universe includes multilib, switch for architecture | ||||
| 		update_pacman_repo_cache universe | ||||
| 	fi | ||||
|  | ||||
| @@ -91,3 +96,23 @@ get_pkgnames_from_repo_pkgbase() { | ||||
| 	printf "%s\n" "${pkgnames[@]}" | ||||
| 	return 0 | ||||
| } | ||||
|  | ||||
| pacman_resolve_virtual_repo_name() { | ||||
| 	local repo=$1 | ||||
|  | ||||
| 	local repo_class=extra | ||||
| 	if machine_has_multilib; then | ||||
| 		repo_class=multilib | ||||
| 	fi | ||||
|  | ||||
| 	case "${repo}" in | ||||
| 		stable) | ||||
| 			repo=${repo_class} | ||||
| 			;; | ||||
| 		testing|staging) | ||||
| 			repo="${repo_class}-${repo}" | ||||
| 			;; | ||||
| 	esac | ||||
|  | ||||
| 	printf "%s" "${repo}" | ||||
| } | ||||
|   | ||||
| @@ -6,6 +6,7 @@ | ||||
| # shellcheck disable=2034 | ||||
| DEVTOOLS_VALID_BINARY_ARCHES=( | ||||
| 	x86_64 | ||||
| 	aarch64 | ||||
| ) | ||||
|  | ||||
| # shellcheck disable=2034 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user