mirror of
https://gitlab.archlinux.org/archlinux/devtools.git
synced 2025-09-15 10:56:19 +02:00
Compare commits
12 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
a07df0beea | ||
![]() |
c7d627165f | ||
![]() |
e47035e74d | ||
![]() |
9b11b16a7e | ||
![]() |
3283b2ca59 | ||
![]() |
71cb9e97bb | ||
![]() |
1b808b8e32 | ||
![]() |
e4c40a9802 | ||
![]() |
a08bc2acf4 | ||
![]() |
f11cb9018e | ||
![]() |
d759eadb50 | ||
![]() |
1c399778f9 |
19
Makefile
19
Makefile
@@ -1,6 +1,6 @@
|
|||||||
SHELL=/bin/bash
|
SHELL=/bin/bash
|
||||||
|
|
||||||
V=1.0.0
|
V=1.0.2
|
||||||
BUILDTOOLVER ?= $(V)
|
BUILDTOOLVER ?= $(V)
|
||||||
|
|
||||||
PREFIX = /usr/local
|
PREFIX = /usr/local
|
||||||
@@ -145,19 +145,20 @@ uninstall:
|
|||||||
$(DESTDIR)$(DATADIR)/pacman.conf.d \
|
$(DESTDIR)$(DATADIR)/pacman.conf.d \
|
||||||
$(DESTDIR)$(DATADIR)
|
$(DESTDIR)$(DATADIR)
|
||||||
|
|
||||||
TODAY=$(shell date +"%Y%m%d")
|
|
||||||
tag:
|
tag:
|
||||||
@sed -E "s|^V=[0-9]{8}|V=$(TODAY)|" -i Makefile
|
@echo "current version: v$(V)"
|
||||||
@git commit --gpg-sign --message "Version $(TODAY)" Makefile
|
@read -r -p "tag version: v" VERSION && \
|
||||||
@git tag --sign --message "Version $(TODAY)" $(TODAY)
|
sed -E "s|^V=.+|V=$$VERSION|" -i Makefile && \
|
||||||
|
git commit --gpg-sign --message "chore(release): version v$$VERSION" Makefile && \
|
||||||
|
git tag --sign --message "Version v$$VERSION" v$$VERSION
|
||||||
|
|
||||||
|
release: dist
|
||||||
|
glab release create v$(RELEASE) devtools-$(RELEASE).tar.gz*
|
||||||
|
|
||||||
dist:
|
dist:
|
||||||
git archive --format=tar --prefix=devtools-$(V)/ $(V) | gzip > devtools-$(V).tar.gz
|
git archive --format=tar --prefix=devtools-$(V)/ v$(V) | gzip > devtools-$(V).tar.gz
|
||||||
gpg --detach-sign --use-agent devtools-$(V).tar.gz
|
gpg --detach-sign --use-agent devtools-$(V).tar.gz
|
||||||
|
|
||||||
upload:
|
|
||||||
scp devtools-$(V).tar.gz devtools-$(V).tar.gz.sig repos.archlinux.org:/srv/ftp/other/devtools/
|
|
||||||
|
|
||||||
check: $(BINPROGS_SRC) $(LIBRARY_SRC) contrib/completion/bash/devtools.in config/makepkg/x86_64.conf contrib/makepkg/PKGBUILD.proto
|
check: $(BINPROGS_SRC) $(LIBRARY_SRC) contrib/completion/bash/devtools.in config/makepkg/x86_64.conf contrib/makepkg/PKGBUILD.proto
|
||||||
shellcheck $^
|
shellcheck $^
|
||||||
|
|
||||||
|
@@ -265,6 +265,7 @@ _pkgctl_repo_cmds=(
|
|||||||
|
|
||||||
_pkgctl_repo_clone_args=(
|
_pkgctl_repo_clone_args=(
|
||||||
-m --maintainer
|
-m --maintainer
|
||||||
|
--protocol
|
||||||
--switch
|
--switch
|
||||||
-u --unprivileged
|
-u --unprivileged
|
||||||
--universe
|
--universe
|
||||||
@@ -273,6 +274,7 @@ _pkgctl_repo_clone_args=(
|
|||||||
)
|
)
|
||||||
_pkgctl_repo_clone_args__maintainer_opts() { :; }
|
_pkgctl_repo_clone_args__maintainer_opts() { :; }
|
||||||
_pkgctl_repo_clone_args_m_opts() { _pkgctl_repo_clone_args__maintainer_opts; }
|
_pkgctl_repo_clone_args_m_opts() { _pkgctl_repo_clone_args__maintainer_opts; }
|
||||||
|
_pkgctl_repo_clone_args__protocol_opts() { _devtools_completions_protocol; }
|
||||||
_pkgctl_repo_clone_args__switch_opts() { :; }
|
_pkgctl_repo_clone_args__switch_opts() { :; }
|
||||||
_pkgctl_repo_clone_args__jobs_opts() { :; }
|
_pkgctl_repo_clone_args__jobs_opts() { :; }
|
||||||
_pkgctl_repo_clone_args_j_opts() { _pkgctl_repo_clone_args__jobs_opts; }
|
_pkgctl_repo_clone_args_j_opts() { _pkgctl_repo_clone_args__jobs_opts; }
|
||||||
@@ -280,9 +282,11 @@ _pkgctl_repo_clone_opts() { _devtools_completions_all_packages; }
|
|||||||
|
|
||||||
|
|
||||||
_pkgctl_repo_configure_args=(
|
_pkgctl_repo_configure_args=(
|
||||||
|
--protocol
|
||||||
-j --jobs
|
-j --jobs
|
||||||
-h --help
|
-h --help
|
||||||
)
|
)
|
||||||
|
_pkgctl_repo_configure_args__protocol_opts() { _devtools_completions_protocol; }
|
||||||
_pkgctl_repo_configure_args__jobs_opts() { :; }
|
_pkgctl_repo_configure_args__jobs_opts() { :; }
|
||||||
_pkgctl_repo_configure_args_j_opts() { _pkgctl_repo_clone_args__jobs_opts; }
|
_pkgctl_repo_configure_args_j_opts() { _pkgctl_repo_clone_args__jobs_opts; }
|
||||||
_pkgctl_repo_configure_opts() { _filedir -d; }
|
_pkgctl_repo_configure_opts() { _filedir -d; }
|
||||||
@@ -363,6 +367,9 @@ _devtools_completions_build_repo() {
|
|||||||
_devtools_completions_all_packages() {
|
_devtools_completions_all_packages() {
|
||||||
mapfile -t COMPREPLY < <(compgen -W "$(pacman -Sql)" -- "$cur")
|
mapfile -t COMPREPLY < <(compgen -W "$(pacman -Sql)" -- "$cur")
|
||||||
}
|
}
|
||||||
|
_devtools_completions_protocol() {
|
||||||
|
mapfile -t COMPREPLY < <(compgen -W "https" -- "$cur")
|
||||||
|
}
|
||||||
|
|
||||||
__devtools_complete() {
|
__devtools_complete() {
|
||||||
local service=$1
|
local service=$1
|
||||||
|
@@ -108,6 +108,7 @@ _pkgctl_repo_switch_args=(
|
|||||||
|
|
||||||
_pkgctl_repo_clone_args=(
|
_pkgctl_repo_clone_args=(
|
||||||
'(-m --maintainer=)'{-m,--maintainer=}'[Clone all packages of the named maintainer]:maintainer:'
|
'(-m --maintainer=)'{-m,--maintainer=}'[Clone all packages of the named maintainer]:maintainer:'
|
||||||
|
'--protocol[Clone the repository over https]:proto:(https)'
|
||||||
'--switch=[Switch the current working tree to a specified version]'
|
'--switch=[Switch the current working tree to a specified version]'
|
||||||
'--universe[Clone all existing packages, useful for cache warming]'
|
'--universe[Clone all existing packages, useful for cache warming]'
|
||||||
'(-j --jobs)'{-j,--jobs}'[Run up to N jobs in parallel (default: number of processing units)]:jobs:'
|
'(-j --jobs)'{-j,--jobs}'[Run up to N jobs in parallel (default: number of processing units)]:jobs:'
|
||||||
@@ -116,6 +117,7 @@ _pkgctl_repo_clone_args=(
|
|||||||
)
|
)
|
||||||
|
|
||||||
_pkgctl_repo_configure_args=(
|
_pkgctl_repo_configure_args=(
|
||||||
|
'--protocol[Configure remote url to use https]:proto:(https)'
|
||||||
'(-j --jobs)'{-j,--jobs}'[Run up to N jobs in parallel (default: number of processing units)]:jobs:'
|
'(-j --jobs)'{-j,--jobs}'[Run up to N jobs in parallel (default: number of processing units)]:jobs:'
|
||||||
'(-h --help)'{-h,--help}'[Display usage]'
|
'(-h --help)'{-h,--help}'[Display usage]'
|
||||||
'*:git_dir:_files -/'
|
'*:git_dir:_files -/'
|
||||||
|
@@ -25,6 +25,9 @@ Options
|
|||||||
*-m, --maintainer* 'NAME'::
|
*-m, --maintainer* 'NAME'::
|
||||||
Clone all packages of the named maintainer
|
Clone all packages of the named maintainer
|
||||||
|
|
||||||
|
*--protocol* 'https'::
|
||||||
|
Clone the repository over https
|
||||||
|
|
||||||
*--universe*::
|
*--universe*::
|
||||||
Clone all existing packages, useful for cache warming
|
Clone all existing packages, useful for cache warming
|
||||||
|
|
||||||
|
@@ -25,6 +25,9 @@ read-only HTTPS otherwise.
|
|||||||
Options
|
Options
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
*--protocol* 'https'::
|
||||||
|
Configure remote url to use https
|
||||||
|
|
||||||
*-j, --jobs* 'N'::
|
*-j, --jobs* 'N'::
|
||||||
Run up to N jobs in parallel. By default the number of jobs is equal to the
|
Run up to N jobs in parallel. By default the number of jobs is equal to the
|
||||||
number of available processing units. For sequential processing this option
|
number of available processing units. For sequential processing this option
|
||||||
|
@@ -32,6 +32,9 @@ usage() {
|
|||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# save all args for check_root
|
||||||
|
orig_args=("$@")
|
||||||
|
|
||||||
while getopts 'hC:M:c:f:s' arg; do
|
while getopts 'hC:M:c:f:s' arg; do
|
||||||
case "$arg" in
|
case "$arg" in
|
||||||
C) pac_conf="$OPTARG" ;;
|
C) pac_conf="$OPTARG" ;;
|
||||||
@@ -46,7 +49,7 @@ done
|
|||||||
shift $((OPTIND - 1))
|
shift $((OPTIND - 1))
|
||||||
|
|
||||||
(( $# < 1 )) && die 'You must specify a directory.'
|
(( $# < 1 )) && die 'You must specify a directory.'
|
||||||
check_root "" "${BASH_SOURCE[0]}" "$@"
|
check_root "" "${BASH_SOURCE[0]}" "${orig_args[@]}"
|
||||||
|
|
||||||
working_dir=$(readlink -f "$1")
|
working_dir=$(readlink -f "$1")
|
||||||
shift 1
|
shift 1
|
||||||
|
@@ -129,6 +129,10 @@ done
|
|||||||
# assert that they really are controlled by git
|
# assert that they really are controlled by git
|
||||||
if (( ${#needsversioning[*]} )); then
|
if (( ${#needsversioning[*]} )); then
|
||||||
for file in "${needsversioning[@]}"; do
|
for file in "${needsversioning[@]}"; do
|
||||||
|
# skip none existing files
|
||||||
|
if [[ ! -f "${file}" ]]; then
|
||||||
|
continue
|
||||||
|
fi
|
||||||
if ! git ls-files --error-unmatch "$file"; then
|
if ! git ls-files --error-unmatch "$file"; then
|
||||||
die "%s is not under version control" "$file"
|
die "%s is not under version control" "$file"
|
||||||
fi
|
fi
|
||||||
@@ -173,7 +177,15 @@ done
|
|||||||
# check for PKGBUILD standards
|
# check for PKGBUILD standards
|
||||||
check_pkgbuild_validity
|
check_pkgbuild_validity
|
||||||
|
|
||||||
if [[ -n $(git status --short --untracked-files=no) ]]; then
|
# auto generate .SRCINFO if present
|
||||||
|
if [[ -f .SRCINFO ]]; then
|
||||||
|
stat_busy 'Generating .SRCINFO'
|
||||||
|
makepkg --printsrcinfo > .SRCINFO
|
||||||
|
git add .SRCINFO
|
||||||
|
stat_done
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n $(git status --porcelain --untracked-files=no) ]]; then
|
||||||
stat_busy 'Staging files'
|
stat_busy 'Staging files'
|
||||||
for f in $(git ls-files --modified); do
|
for f in $(git ls-files --modified); do
|
||||||
git add "$f"
|
git add "$f"
|
||||||
|
@@ -215,7 +215,8 @@ diff_pkgs() {
|
|||||||
[[ -f $oldpkg ]] || die "No such file: %s" "${oldpkg}"
|
[[ -f $oldpkg ]] || die "No such file: %s" "${oldpkg}"
|
||||||
[[ -f $newpkg ]] || die "No such file: %s" "${newpkg}"
|
[[ -f $newpkg ]] || die "No such file: %s" "${newpkg}"
|
||||||
|
|
||||||
DIFFOPTIONS+=(--label "${oldpkg}" --label "${newpkg}")
|
local -a diffoptions
|
||||||
|
diffoptions=("${DIFFOPTIONS[@]}" --label "${oldpkg}" --label "${newpkg}")
|
||||||
|
|
||||||
if (( TARLIST )); then
|
if (( TARLIST )); then
|
||||||
tar_list "$oldpkg" > "$TMPDIR/old"
|
tar_list "$oldpkg" > "$TMPDIR/old"
|
||||||
@@ -236,7 +237,7 @@ diff_pkgs() {
|
|||||||
# Resolve dynamic auto width one we know the content to diff
|
# Resolve dynamic auto width one we know the content to diff
|
||||||
if [[ $DIFFWIDTH == --width=auto ]]; then
|
if [[ $DIFFWIDTH == --width=auto ]]; then
|
||||||
AUTOLENGTH=$(file_diff_columns "$TMPDIR/old" "$TMPDIR/new")
|
AUTOLENGTH=$(file_diff_columns "$TMPDIR/old" "$TMPDIR/new")
|
||||||
DIFFOPTIONS+=("--width=${AUTOLENGTH}")
|
diffoptions+=("--width=${AUTOLENGTH}")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Print a header for side-by-side view as it lacks labels
|
# Print a header for side-by-side view as it lacks labels
|
||||||
@@ -244,7 +245,7 @@ diff_pkgs() {
|
|||||||
printf -- "--- %s\n+++ %s\n" "${oldpkg}" "${newpkg}"
|
printf -- "--- %s\n+++ %s\n" "${oldpkg}" "${newpkg}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
diff "${DIFFOPTIONS[@]}" "$TMPDIR/old" "$TMPDIR/new"
|
diff "${diffoptions[@]}" "$TMPDIR/old" "$TMPDIR/new"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if (( DIFFOSCOPE )); then
|
if (( DIFFOSCOPE )); then
|
||||||
|
@@ -298,7 +298,7 @@ pkgctl_build() {
|
|||||||
die 'failed to get pacman repo'
|
die 'failed to get pacman repo'
|
||||||
fi
|
fi
|
||||||
if [[ -z "${pkgrepo}" ]]; then
|
if [[ -z "${pkgrepo}" ]]; then
|
||||||
die 'unknown repo, please specify --repo for new packages'
|
die 'unknown repo, specify --repo for packages not currently in any official repo'
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@@ -26,12 +26,13 @@ pkgctl_repo_clone_usage() {
|
|||||||
Clone Git packaging repositories from the canonical namespace.
|
Clone Git packaging repositories from the canonical namespace.
|
||||||
|
|
||||||
The configure command is subsequently invoked to synchronize the distro
|
The configure command is subsequently invoked to synchronize the distro
|
||||||
specs and makepkg.conf settings. The unprivileged option can be used
|
specs and makepkg.conf settings. The protocol option can be used
|
||||||
for cloning packaging repositories without SSH access using read-only
|
for cloning packaging repositories without SSH access using read-only
|
||||||
HTTPS.
|
HTTPS.
|
||||||
|
|
||||||
OPTIONS
|
OPTIONS
|
||||||
-m, --maintainer=NAME Clone all packages of the named maintainer
|
-m, --maintainer=NAME Clone all packages of the named maintainer
|
||||||
|
--protocol https Clone the repository over https
|
||||||
--switch VERSION Switch the current working tree to a specified version
|
--switch VERSION Switch the current working tree to a specified version
|
||||||
--universe Clone all existing packages, useful for cache warming
|
--universe Clone all existing packages, useful for cache warming
|
||||||
-j, --jobs N Run up to N jobs in parallel (default: $(nproc))
|
-j, --jobs N Run up to N jobs in parallel (default: $(nproc))
|
||||||
@@ -69,11 +70,21 @@ pkgctl_repo_clone() {
|
|||||||
pkgctl_repo_clone_usage
|
pkgctl_repo_clone_usage
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
-u|--unprivileged)
|
--protocol=https)
|
||||||
GIT_REPO_BASE_URL=${GIT_PACKAGING_URL_HTTPS}
|
GIT_REPO_BASE_URL=${GIT_PACKAGING_URL_HTTPS}
|
||||||
CONFIGURE_OPTIONS+=("$1")
|
CONFIGURE_OPTIONS+=("$1")
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
--protocol)
|
||||||
|
(( $# <= 1 )) && die "missing argument for %s" "$1"
|
||||||
|
if [[ $2 == https ]]; then
|
||||||
|
GIT_REPO_BASE_URL=${GIT_PACKAGING_URL_HTTPS}
|
||||||
|
else
|
||||||
|
die "unsupported protocol: %s" "$2"
|
||||||
|
fi
|
||||||
|
CONFIGURE_OPTIONS+=("$1" "$2")
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
-m|--maintainer)
|
-m|--maintainer)
|
||||||
(( $# <= 1 )) && die "missing argument for %s" "$1"
|
(( $# <= 1 )) && die "missing argument for %s" "$1"
|
||||||
MAINTAINER="$2"
|
MAINTAINER="$2"
|
||||||
|
@@ -33,11 +33,12 @@ pkgctl_repo_configure_usage() {
|
|||||||
read-only HTTPS otherwise.
|
read-only HTTPS otherwise.
|
||||||
|
|
||||||
OPTIONS
|
OPTIONS
|
||||||
|
--protocol https Configure remote url to use https
|
||||||
-j, --jobs N Run up to N jobs in parallel (default: $(nproc))
|
-j, --jobs N Run up to N jobs in parallel (default: $(nproc))
|
||||||
-h, --help Show this help text
|
-h, --help Show this help text
|
||||||
|
|
||||||
EXAMPLES
|
EXAMPLES
|
||||||
$ ${COMMAND} configure *
|
$ ${COMMAND} *
|
||||||
_EOF_
|
_EOF_
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -94,6 +95,7 @@ pkgctl_repo_configure() {
|
|||||||
local GIT_REPO_BASE_URL=${GIT_PACKAGING_URL_HTTPS}
|
local GIT_REPO_BASE_URL=${GIT_PACKAGING_URL_HTTPS}
|
||||||
local official=0
|
local official=0
|
||||||
local proto=https
|
local proto=https
|
||||||
|
local proto_force=0
|
||||||
local jobs=
|
local jobs=
|
||||||
jobs=$(nproc)
|
jobs=$(nproc)
|
||||||
local paths=()
|
local paths=()
|
||||||
@@ -109,6 +111,19 @@ pkgctl_repo_configure() {
|
|||||||
pkgctl_repo_configure_usage
|
pkgctl_repo_configure_usage
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
|
--protocol=https)
|
||||||
|
proto_force=1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--protocol)
|
||||||
|
(( $# <= 1 )) && die "missing argument for %s" "$1"
|
||||||
|
if [[ $2 == https ]]; then
|
||||||
|
proto_force=1
|
||||||
|
else
|
||||||
|
die "unsupported protocol: %s" "$2"
|
||||||
|
fi
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
-j|--jobs)
|
-j|--jobs)
|
||||||
(( $# <= 1 )) && die "missing argument for %s" "$1"
|
(( $# <= 1 )) && die "missing argument for %s" "$1"
|
||||||
jobs=$2
|
jobs=$2
|
||||||
@@ -152,8 +167,10 @@ pkgctl_repo_configure() {
|
|||||||
fi
|
fi
|
||||||
if is_packager_email_official "${packager_email}"; then
|
if is_packager_email_official "${packager_email}"; then
|
||||||
official=1
|
official=1
|
||||||
proto=ssh
|
if (( ! proto_force )); then
|
||||||
GIT_REPO_BASE_URL=${GIT_PACKAGING_URL_SSH}
|
proto=ssh
|
||||||
|
GIT_REPO_BASE_URL=${GIT_PACKAGING_URL_SSH}
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@@ -26,7 +26,7 @@ pkgctl_repo_web_usage() {
|
|||||||
-h, --help Show this help text
|
-h, --help Show this help text
|
||||||
|
|
||||||
EXAMPLES
|
EXAMPLES
|
||||||
$ ${COMMAND} web linux
|
$ ${COMMAND} linux
|
||||||
_EOF_
|
_EOF_
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -14,7 +14,8 @@ _repos=(
|
|||||||
|
|
||||||
# shellcheck disable=2034
|
# shellcheck disable=2034
|
||||||
_build_repos=(
|
_build_repos=(
|
||||||
extra staging testing
|
core-staging core-testing
|
||||||
|
extra extra-staging extra-testing
|
||||||
multilib multilib-staging multilib-testing
|
multilib multilib-staging multilib-testing
|
||||||
gnome-unstable
|
gnome-unstable
|
||||||
kde-unstable
|
kde-unstable
|
||||||
|
@@ -125,6 +125,9 @@ OPTIONS
|
|||||||
__EOF__
|
__EOF__
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# save all args for check_root
|
||||||
|
orig_args=("$@")
|
||||||
|
|
||||||
while getopts 'dM:c:l:h' arg; do
|
while getopts 'dM:c:l:h' arg; do
|
||||||
case "$arg" in
|
case "$arg" in
|
||||||
d) diffoscope=1 ;;
|
d) diffoscope=1 ;;
|
||||||
@@ -137,7 +140,7 @@ while getopts 'dM:c:l:h' arg; do
|
|||||||
done
|
done
|
||||||
shift $((OPTIND - 1))
|
shift $((OPTIND - 1))
|
||||||
|
|
||||||
check_root "" "${BASH_SOURCE[0]}" "$@"
|
check_root "" "${BASH_SOURCE[0]}" "${orig_args[@]}"
|
||||||
|
|
||||||
[[ -f PKGBUILD ]] || { error "No PKGBUILD in current directory."; exit 1; }
|
[[ -f PKGBUILD ]] || { error "No PKGBUILD in current directory."; exit 1; }
|
||||||
|
|
||||||
|
@@ -32,6 +32,9 @@ usage() {
|
|||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# save all args for check_root
|
||||||
|
orig_args=("$@")
|
||||||
|
|
||||||
while getopts 'hUC:M:c:f:s' arg; do
|
while getopts 'hUC:M:c:f:s' arg; do
|
||||||
case "$arg" in
|
case "$arg" in
|
||||||
U) umode=U ;;
|
U) umode=U ;;
|
||||||
@@ -52,7 +55,7 @@ shift $((OPTIND - 1))
|
|||||||
|
|
||||||
(( $# < 2 )) && die 'You must specify a directory and one or more packages.'
|
(( $# < 2 )) && die 'You must specify a directory and one or more packages.'
|
||||||
|
|
||||||
check_root "" "${BASH_SOURCE[0]}" "$@"
|
check_root "" "${BASH_SOURCE[0]}" "${orig_args[@]}"
|
||||||
|
|
||||||
working_dir="$(readlink -f "$1")"
|
working_dir="$(readlink -f "$1")"
|
||||||
shift 1
|
shift 1
|
||||||
|
Reference in New Issue
Block a user