sharing port files

Boey Maun Suang boeyms at macports.org
Thu Apr 26 00:42:30 PDT 2007


Hi Zoltan,

I'm not completely sure, but it looks to me from the source that  
http, https and ftp addresses are treated as the locations for binary  
packages only.  Looking at base/src/darwinports1.0/darwinports.tcl,  
if you set a url beginning with http, https or ftp in sources.conf,  
all that currently happens when you sync is that PortIndex is  
downloaded; there's no recursion into any deeper directories.   
Furthermore, viewing the contents of PortIndex on the server shows  
that the entry for nlojet++ contains "portarchive science/nlojet+ 
+.tgz", which I don't see in my local file:// or rsync:// PortIndex  
files.  If this is the case, then it would require quite a bit of  
work on base to get it to support http for source port trees, and I'd  
have to find out from those who work on base whether or not this  
would be advisable.

It therefore seems to me that you'd need to set up a separate  
rsync:// repository if you wanted nlojet++ to be publicly accessible  
but separate from the main MacPorts tree.  However, I'd suggest that  
you therefore might as well develop and test it in a file:// tree,  
then submit it as a port for addition to MacPorts.

Kind regards,


Maun Suang

On 24/04/2007, at 04:11, Zoltán Nagy wrote:

> Hi,
>
> I have some port file and I set up a repository which is available  
> via http protocol.
> (http://cern.ch/nagyz/macports)
>
> I added to the sources.conf the following line:
>
> http://cern.ch/nagyz/macports/
>
> The synchronization works fine but when I try to install something  
> I get the following message:
>
> $ sudo port -d install nlojet++
> DEBUG: Found port in http://cern.ch/nagyz/macports//science/nlojet++
> DEBUG: Port extract failed:
> gzip: stdin: not in gzip format
> tar: Child returned status 1
> tar: Error exit delayed from previous errors
>     while executing
> "darwinports::fetch_port $url"
>     ("^https?$|^ftp$" arm line 2)
>     invoked from within
> "switch -regexp -- ${protocol} {
>                         {^file$} {
>                                 return $string
>                         }
>                         {^dports$} {
>                                 return  
> [darwinports::index::fetch_port $url $destdir]
>                         }
>         ..."
>     (procedure "darwinports::getportdir" line 3)
>     invoked from within
> "darwinports::getportdir $porturl $portdir"
>     (procedure "dportopen" line 26)
>     invoked from within
> "dportopen $porturl [array get options] [array get variations]"
> Error: Unable to open port: Port extract failed:
> gzip: stdin: not in gzip format
> tar: Child returned status 1
> tar: Error exit delayed from previous errors
>
> If I set up a local repository then everything is OK.
> Is it possible to use http:// in the sources.conf file?
>
> Best wishes,
> Zoltan
>
>
>
> _______________________________________________
> macports-users mailing list
> macports-users at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo/macports-users

-- 
Boey Maun Suang (Boey is my surname)
Email: boeyms at macports.org






More information about the macports-users mailing list