My own repo of MacPorts (freezing distfiles)?

Ryan Schmidt ryandesign at macports.org
Sat May 24 01:38:58 PDT 2008


On May 20, 2008, at 09:38, Rainer Müller wrote:

> Tabitha McNerney wrote:
>
>> What if I wanted to place a bunch of "frozen" versioned distfiles  
>> on my
>> server but instead of running rsync, it was just subversion  
>> instead? How
>> does MacPorts currently bridge between the rsync protocol and svn?
>
> You can use a file:/// path in sources.conf pointing to a svn  
> checkout.
> If a file:/// path contains an .svn directory, 'port sync' will use  
> svn
> to sync it.

But in this paragraph she's asking about frozen distfiles, not  
portfiles. Tabitha, distfiles are downloaded directly from the  
various projects' web sites. No rsync or Subversion is involved. The  
URLs from which the distfiles are fetched are coded into each  
portfile. Some ports use fetch groups, which are defined in the  
MacPorts base source. All ports use the MacPorts Subversion  
repository as a fallback; this is coded in the MacPorts base source  
too. You could either rewrite the fetch code in MacPorts base to  
fetch everything from your favorite URL(s) and distribute a custom  
version of MacPorts to your users, or you could pre-fetch the  
distfiles by any means you like and manually (or automatically via a  
script you would write) place them in the right places within /opt/ 
local/var/macports/distfiles. MacPorts will use existing distfiles if  
they are present and correct.

William Siegrist also recently announced the opening of http:// 
distfiles.macports.org/ where distfiles from (some? all? most?) ports  
will be (permanently?) archived. MacPorts does not yet make use of  
this source, but probably will in the future. If your reason for  
wanting to host your own distfiles is a concern over old distfiles  
becoming unavailable, then distfiles.macports.org should be the answer.


The way in which svn and rsync are bridged, for the portfiles  
collection, is that a script runs on the rsync server which updates  
the rsync server with the content from the Subversion repository.  
This occurs every 30 minutes.



More information about the macports-users mailing list