[pacman-dev] [PATCH] asdeps flag passed from makepkg to pacman
From: Daniel Wallace <daniel.wallace12@gmail.com> add the asdeps flag for makepkg so that it does pacman -U --asdeps Signed-off-by: Daniel Wallace <daniel.wallace12@gmail.com> --- contrib/bash_completion.in | 6 +++--- contrib/zsh_completion.in | 1 + doc/makepkg.8.txt | 4 ++++ scripts/makepkg.sh.in | 10 ++++++++-- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/contrib/bash_completion.in b/contrib/bash_completion.in index 1b265e0..99b9559 100644 --- a/contrib/bash_completion.in +++ b/contrib/bash_completion.in @@ -74,9 +74,9 @@ _makepkg() { COMPREPLY=() _get_comp_words_by_ref cur prev if [[ $cur = -* && ! $prev =~ ^-(-(config|help)$|\w*[Chp]) ]]; then - opts=('allsource asroot check clean config force geninteg help holdver ignorearch - install log nobuild nocheck nocolor noconfirm nodeps noextract noprogressbar - nosign pkg repackage rmdeps sign skipinteg source syncdeps' + opts=('allsource asdeps asroot check clean config force geninteg help holdver ignorearch + install log nobuild nocheck nocolor noconfirm nodeps noextract + noprogressbar nosign pkg repackage rmdeps sign skipinteg source syncdeps' 'A L R S c d e f g h i m o p r s') _arch_ptr2comp opts fi diff --git a/contrib/zsh_completion.in b/contrib/zsh_completion.in index dc0a544..84ee93c 100644 --- a/contrib/zsh_completion.in +++ b/contrib/zsh_completion.in @@ -483,6 +483,7 @@ _makepkg_longopts=( '--skipinteg[do not perform any verification checks on source files]' '--skippgpcheck[Do not verify source files with PGP signatures]' '--noconfirm[do not ask for confirmation when resolving dependencies]' + '--asdeps[Install packages as non-explicitly installed]' '--noprogressbar[Do not show a progress bar when downloading files]' ) _makepkg(){ diff --git a/doc/makepkg.8.txt b/doc/makepkg.8.txt index 27875a3..b96d768 100644 --- a/doc/makepkg.8.txt +++ b/doc/makepkg.8.txt @@ -179,6 +179,10 @@ Options (Passed to pacman) Prevent pacman from waiting for user input before proceeding with operations. +*\--asdeps*:: + (Passed to pacman) Install packages as non-explicitly installed (used + with -i / --install). + *\--noprogressbar*:: (Passed to pacman) Prevent pacman from displaying a progress bar; useful if you are redirecting makepkg output to file. diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index abfabdf..db95d65 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -52,6 +52,7 @@ splitpkg_overrides=('pkgver' 'pkgrel' 'epoch' 'pkgdesc' 'arch' 'url' 'license' \ readonly -a packaging_options other_options splitpkg_overrides # Options +ASDEPS=0 ASROOT=0 CLEANUP=0 DEP_BIN=0 @@ -83,6 +84,7 @@ FORCE_VER="" PACMAN_OPTS= + shopt -s extglob ### SUBROUTINES ### @@ -1523,13 +1525,15 @@ install_package() { msg "$(gettext "Installing %s package group with %s...")" "$pkgbase" "$PACMAN -U" fi + (( ASDEPS )) && pkglist+=('--asdeps') + local fullver pkgarch pkg pkglist for pkg in ${pkgname[@]}; do fullver=$(get_full_version $pkg) pkgarch=$(get_pkg_arch $pkg) pkglist+=("$PKGDEST/${pkg}-${fullver}-${pkgarch}${PKGEXT}") done - + if ! run_pacman -U ${pkglist[@]}; then warning "$(gettext "Failed to install built package(s).")" return 0 @@ -1986,6 +1990,7 @@ usage() { printf -- "$(gettext "These options can be passed to %s:")\n" "pacman" echo printf -- "$(gettext " --noconfirm Do not ask for confirmation when resolving dependencies")\n" + printf -- "$(gettext " --asdeps Install packages as non-explicitly installed")\n" printf -- "$(gettext " --noprogressbar Do not show a progress bar when downloading files")\n" echo printf -- "$(gettext "If %s is not specified, %s will look for '%s'")\n" "-p" "makepkg" "$BUILDSCRIPT" @@ -2021,7 +2026,7 @@ OPT_LONG=('allsource' 'asroot' 'ignorearch' 'check' 'clean' 'nodeps' 'version' 'config:') # Pacman Options -OPT_LONG+=('noconfirm' 'noprogressbar') +OPT_LONG+=('asdeps' 'noconfirm' 'noprogressbar') if ! parseopts "$OPT_SHORT" "${OPT_LONG[@]}" -- "$@"; then exit 1 # E_INVALID_OPTION; @@ -2032,6 +2037,7 @@ unset OPT_SHORT OPT_LONG OPTRET while true; do case "$1" in # Pacman Options + --asdeps) ASDEPS=1;; --noconfirm) PACMAN_OPTS+=" --noconfirm" ;; --noprogressbar) PACMAN_OPTS+=" --noprogressbar" ;; -- 1.7.11.1
On 09/07/12 15:55, Daniel Wallace wrote:
From: Daniel Wallace <daniel.wallace12@gmail.com>
add the asdeps flag for makepkg so that it does pacman -U --asdeps
Signed-off-by: Daniel Wallace <daniel.wallace12@gmail.com> ---
Push to my working branch with minor changes listed below...
contrib/bash_completion.in | 6 +++--- contrib/zsh_completion.in | 1 + doc/makepkg.8.txt | 4 ++++ scripts/makepkg.sh.in | 10 ++++++++-- 4 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/contrib/bash_completion.in b/contrib/bash_completion.in index 1b265e0..99b9559 100644 --- a/contrib/bash_completion.in +++ b/contrib/bash_completion.in @@ -74,9 +74,9 @@ _makepkg() { COMPREPLY=() _get_comp_words_by_ref cur prev if [[ $cur = -* && ! $prev =~ ^-(-(config|help)$|\w*[Chp]) ]]; then - opts=('allsource asroot check clean config force geninteg help holdver ignorearch - install log nobuild nocheck nocolor noconfirm nodeps noextract noprogressbar - nosign pkg repackage rmdeps sign skipinteg source syncdeps' + opts=('allsource asdeps asroot check clean config force geninteg help holdver ignorearch + install log nobuild nocheck nocolor noconfirm nodeps noextract
trailing whitespace
+ noprogressbar nosign pkg repackage rmdeps sign skipinteg source syncdeps' 'A L R S c d e f g h i m o p r s') _arch_ptr2comp opts fi diff --git a/contrib/zsh_completion.in b/contrib/zsh_completion.in index dc0a544..84ee93c 100644 --- a/contrib/zsh_completion.in +++ b/contrib/zsh_completion.in @@ -483,6 +483,7 @@ _makepkg_longopts=( '--skipinteg[do not perform any verification checks on source files]' '--skippgpcheck[Do not verify source files with PGP signatures]' '--noconfirm[do not ask for confirmation when resolving dependencies]' + '--asdeps[Install packages as non-explicitly installed]' '--noprogressbar[Do not show a progress bar when downloading files]' ) _makepkg(){ diff --git a/doc/makepkg.8.txt b/doc/makepkg.8.txt index 27875a3..b96d768 100644 --- a/doc/makepkg.8.txt +++ b/doc/makepkg.8.txt @@ -179,6 +179,10 @@ Options (Passed to pacman) Prevent pacman from waiting for user input before proceeding with operations.
+*\--asdeps*:: + (Passed to pacman) Install packages as non-explicitly installed (used + with -i / --install). + *\--noprogressbar*:: (Passed to pacman) Prevent pacman from displaying a progress bar; useful if you are redirecting makepkg output to file. diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index abfabdf..db95d65 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -52,6 +52,7 @@ splitpkg_overrides=('pkgver' 'pkgrel' 'epoch' 'pkgdesc' 'arch' 'url' 'license' \ readonly -a packaging_options other_options splitpkg_overrides
# Options +ASDEPS=0 ASROOT=0 CLEANUP=0 DEP_BIN=0 @@ -83,6 +84,7 @@ FORCE_VER=""
PACMAN_OPTS=
+
removed.
shopt -s extglob
### SUBROUTINES ### @@ -1523,13 +1525,15 @@ install_package() { msg "$(gettext "Installing %s package group with %s...")" "$pkgbase" "$PACMAN -U" fi
+ (( ASDEPS )) && pkglist+=('--asdeps') + local fullver pkgarch pkg pkglist
The local declaration of pkglist should be above the added line...
for pkg in ${pkgname[@]}; do fullver=$(get_full_version $pkg) pkgarch=$(get_pkg_arch $pkg) pkglist+=("$PKGDEST/${pkg}-${fullver}-${pkgarch}${PKGEXT}") done - +
whitespace.
if ! run_pacman -U ${pkglist[@]}; then warning "$(gettext "Failed to install built package(s).")" return 0 @@ -1986,6 +1990,7 @@ usage() { printf -- "$(gettext "These options can be passed to %s:")\n" "pacman" echo printf -- "$(gettext " --noconfirm Do not ask for confirmation when resolving dependencies")\n" + printf -- "$(gettext " --asdeps Install packages as non-explicitly installed")\n" printf -- "$(gettext " --noprogressbar Do not show a progress bar when downloading files")\n" echo printf -- "$(gettext "If %s is not specified, %s will look for '%s'")\n" "-p" "makepkg" "$BUILDSCRIPT" @@ -2021,7 +2026,7 @@ OPT_LONG=('allsource' 'asroot' 'ignorearch' 'check' 'clean' 'nodeps' 'version' 'config:')
# Pacman Options -OPT_LONG+=('noconfirm' 'noprogressbar') +OPT_LONG+=('asdeps' 'noconfirm' 'noprogressbar')
if ! parseopts "$OPT_SHORT" "${OPT_LONG[@]}" -- "$@"; then exit 1 # E_INVALID_OPTION; @@ -2032,6 +2037,7 @@ unset OPT_SHORT OPT_LONG OPTRET while true; do case "$1" in # Pacman Options + --asdeps) ASDEPS=1;; --noconfirm) PACMAN_OPTS+=" --noconfirm" ;; --noprogressbar) PACMAN_OPTS+=" --noprogressbar" ;;
participants (2)
-
Allan McRae
-
Daniel Wallace