[pacman-dev] [PATCH] makepkg: Allow using sources with :: in them
Allan McRae
allan at archlinux.org
Sun May 4 01:52:19 EDT 2014
On 29/04/14 05:16, William Giokas wrote:
> Git has the ability to use helper applications for interfacing with hg,
> and from what we had before, the following url::
>
> foo::git+hg::http://foo.bar/foobar
>
This patch looks fine at first glance. But for examples like that, why
would you not use the hg source directly in the PKGBUILD? What is the
advantage?
> would get converted to something along the lines of:
>
> filename: foo
> URL: http://foo.bar/foobar
>
> and the 'git+hg' part would essentially be ignored when it's getting set
> up in the 'get_protocol' and 'get_downloadclient' functions. With this
> patch it is possible to have a source link with '::' in it, however it
> is not possible to have a filename with '::', which is the current
> behavior.
> ---
> scripts/makepkg.sh.in | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
> index d8cdc88..7d6ecfa 100644
> --- a/scripts/makepkg.sh.in
> +++ b/scripts/makepkg.sh.in
> @@ -275,10 +275,10 @@ get_url() {
> get_protocol() {
> if [[ $1 = *://* ]]; then
> # strip leading filename
> - local proto="${1##*::}"
> + local proto="${1#*::}"
> printf "%s\n" "${proto%%://*}"
> elif [[ $1 = *lp:* ]]; then
> - local proto="${1##*::}"
> + local proto="${1#*::}"
> printf "%s\n" "${proto%%lp:*}"
> else
> printf "%s\n" local
> @@ -293,7 +293,7 @@ get_downloadclient() {
> for i in "${DLAGENTS[@]}"; do
> local handler="${i%%::*}"
> if [[ $proto = "$handler" ]]; then
> - local agent="${i##*::}"
> + local agent="${i#*::}"
> break
> fi
> done
>
More information about the pacman-dev
mailing list