[MacPorts] #43717: ./port -d sync fails when using "file:" protocol
MacPorts
noreply at macports.org
Thu May 15 13:35:54 PDT 2014
#43717: ./port -d sync fails when using "file:" protocol
--------------------------+--------------------------------
Reporter: joe.dipol@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: base | Version: 2.2.1
Resolution: | Keywords:
Port: |
--------------------------+--------------------------------
Changes (by mf2k@…):
* component: ports => base
Old description:
> Because I'm behind an http proxy I'm using svn and not rsync to
> synchronize. I added the following to sources.conf:
>
> file://opt/local/var/macports/sources/svn.macports.org/trunk/dports/
>
> But when I run sync it fails because it is using a bad path (note it is
> preceded with /opt/local/bin):
>
> mac$ ./port -d sync
> ---> Updating the ports tree
> Synchronizing local ports tree from
> file://opt/local/var/macports/sources/svn.macports.org/trunk/dports/
> couldn't change working directory to
> "/opt/local/bin/opt/local/var/macports/sources/svn.macports.org/trunk/dports":
> no such file or directory
> Command failed: /opt/local/bin/portindex
> /opt/local/bin/opt/local/var/macports/sources/svn.macports.org/trunk/dports
> Exit code: 1
> Error: updating PortIndex for
> file://opt/local/var/macports/sources/svn.macports.org/trunk/dports/
> failed
>
> I think this is caused by an off by one error in macports.tcl:proc
> macports::getportdir
>
> The following change seems to fix the problem:
>
> set path [file normalize [string range $url [expr [string length
> $protocol] + 3] end]]
>
> to
>
> set path [file normalize [string range $url [expr [string length
> $protocol] + 2] end]]
New description:
Because I'm behind an http proxy I'm using svn and not rsync to
synchronize. I added the following to sources.conf:
{{{
file://opt/local/var/macports/sources/svn.macports.org/trunk/dports/
}}}
But when I run sync it fails because it is using a bad path (note it is
preceded with /opt/local/bin):
{{{
mac$ ./port -d sync
---> Updating the ports tree
Synchronizing local ports tree from
file://opt/local/var/macports/sources/svn.macports.org/trunk/dports/
couldn't change working directory to
"/opt/local/bin/opt/local/var/macports/sources/svn.macports.org/trunk/dports":
no such file or directory
Command failed: /opt/local/bin/portindex
/opt/local/bin/opt/local/var/macports/sources/svn.macports.org/trunk/dports
Exit code: 1
Error: updating PortIndex for
file://opt/local/var/macports/sources/svn.macports.org/trunk/dports/
failed
}}}
I think this is caused by an off by one error in macports.tcl:proc
macports::getportdir
The following change seems to fix the problem:
{{{
set path [file normalize [string range $url [expr [string length
$protocol] + 3] end]]
}}}
to
{{{
set path [file normalize [string range $url [expr [string length
$protocol] + 2] end]]
}}}
--
Comment:
In the future, please use WikiFormatting.
--
Ticket URL: <https://trac.macports.org/ticket/43717#comment:1>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list