[MacPorts] #13704: selfupdate, anything over http?
#13704: selfupdate, anything over http? -----------------------------------+---------------------------------------- Reporter: andre.david@gmail.com | Owner: macports-tickets@lists.macosforge.org Type: enhancement | Status: new Priority: Normal | Milestone: MacPorts base enhancements Component: base | Version: 1.6.0 Keywords: | -----------------------------------+---------------------------------------- Hi, My ISP sucks and I cannot use rsync. I was looking for a way to do selfupdate using only http. Any ideas out there? Thanks, Andre -- Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/13704> MacPorts </projects/macports> Ports system for Mac OS
#13704: selfupdate, anything over http? ------------------------------------+--------------------------------------- Reporter: andre.david@gmail.com | Owner: macports-tickets@lists.macosforge.org Type: enhancement | Status: new Priority: Normal | Milestone: MacPorts base enhancements Component: base | Version: 1.6.0 Resolution: | Keywords: ------------------------------------+--------------------------------------- Comment (by andre.david@gmail.com): For instance: could I use svn? -- Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/13704#comment:1> MacPorts </projects/macports> Ports system for Mac OS
#13704: selfupdate, anything over http? ------------------------------------+--------------------------------------- Reporter: andre.david@gmail.com | Owner: macports-tickets@lists.macosforge.org Type: enhancement | Status: new Priority: Normal | Milestone: MacPorts base enhancements Component: base | Version: 1.6.0 Resolution: | Keywords: ------------------------------------+--------------------------------------- Changes (by jmpp@macports.org): * cc: markd@macports.org, boeyms@macports.org, simon@macports.org (added) Comment: `selfupdate` is composed of two rather orthogonal actions: `sync`, which synchronizes your ports tree with the latest revisions to the Portfiles, and `selfupdate` itself (so much for clarity!), which rebuilds MacPorts if outdated with respect to our latest release. `sync` can indeed be performed over `svn`, but unfortunately we currently do not provide a mean for the former (`selfupdate`) over anything but `rsync`. Such request makes up for a fine MacPorts enhancement, so I'll leave this ticket open to track it. As for `sync`, you have to do three things in order to synchronize your ports tree over `svn`: 1. Pick a `/path/to/your/portsdir` onto which you'll check it out of our repository at `http://svn.macports.org/repository/macports/trunk/dports`; 2. Add an entry for that svn based ports dir to your `${prefix}/etc/macports/sources.conf` file, in the form of `file:///path/to/your/portsdir`; 3. Comment out the rsync based rule that takes care of `sync`'ing over `rsync` (`rsync://rsync.macports.org/release/ports/`). Once that's done, a "`port sync`" call will pull the new Portfiles from `svn` rather than `rsync`. Lastly, as for rebuilding MacPorts itself, you can also check out the `base` code out of `svn` and rebuild it with the manual `./configure && make` dance; Not as handy as the "`port selfupdate`" one liner... but at least something ;-) You can checkout either `trunk` at `http://svn.macports.org/repository/macports/trunk/base` or any of our branches at `http://svn.macports.org/repository/macports/branches` -- pick the `http://svn.macports.org/repository/macports/branches/release_1_6/base` URL if you wish to track the 1.6 set of releases, which is equivalent to selfupdating off the `release/base/` rsync module as per default behavior. Let me know if you have any questions! -jmpp PS: I think these explanations make up for good documentation enhancements, so I'm Cc'ing our docs guys into this ticket so they can have a look and cook something up for our guide ;-) -- Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/13704#comment:2> MacPorts </projects/macports> Ports system for Mac OS
#13704: selfupdate, anything over http? ------------------------------------+--------------------------------------- Reporter: andre.david@gmail.com | Owner: macports-tickets@lists.macosforge.org Type: enhancement | Status: new Priority: Normal | Milestone: MacPorts base enhancements Component: base | Version: 1.6.0 Resolution: | Keywords: ------------------------------------+--------------------------------------- Comment (by andre.david@gmail.com): Replying to [comment:2 jmpp@macports.org]:
`selfupdate` is composed of two rather orthogonal actions: `sync`, which synchronizes your ports tree with the latest revisions to the Portfiles, and `selfupdate` itself (so much for clarity!), which rebuilds MacPorts if outdated with respect to our latest release. `sync` can indeed be performed over `svn`, but unfortunately we currently do not provide a mean for the former (`selfupdate`) over anything but `rsync`. Such request makes up for a fine MacPorts enhancement, so I'll leave this ticket open to track it.
Thanks!
As for `sync`, you have to do three things in order to synchronize your ports tree over `svn`:
1. Pick a `/path/to/your/portsdir` onto which you'll check it out of our repository at `http://svn.macports.org/repository/macports/trunk/dports`;
2. Add an entry for that svn based ports dir to your `${prefix}/etc/macports/sources.conf` file, in the form of `file:///path/to/your/portsdir`;
3. Comment out the rsync based rule that takes care of `sync`'ing over `rsync` (`rsync://rsync.macports.org/release/ports/`).
Once that's done, a "`port sync`" call will pull the new Portfiles from `svn` rather than `rsync`.
Lastly, as for rebuilding MacPorts itself, you can also check out the `base` code out of `svn` and rebuild it with the manual `./configure && make` dance; Not as handy as the "`port selfupdate`" one liner... but at least something ;-) You can checkout either `trunk` at `http://svn.macports.org/repository/macports/trunk/base` or any of our branches at `http://svn.macports.org/repository/macports/branches` -- pick the `http://svn.macports.org/repository/macports/branches/release_1_6/base` URL if you wish to track the 1.6 set of releases, which is equivalent to selfupdating off the `release/base/` rsync module as per default behavior.
Let me know if you have any questions!
-jmpp
PS: I think these explanations make up for good documentation enhancements, so I'm Cc'ing our docs guys into this ticket so they can have a look and cook something up for our guide ;-)
After doing everything, I can confirm that the recipe works. Anyway, after trying it out, it seems to me that this is the vanilla way for a dev to get things going, so it actually answers my next ticket since I have been thinking about adding some ports of my liking. Happy New Year, Andre PS: I was wondering about jmpp and... {{{ $ grep -R "jmpp\@macports.org" /opt/local/ | wc -l 2025 }}} -- Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/13704#comment:3> MacPorts </projects/macports> Ports system for Mac OS
#13704: selfupdate, anything over http? ------------------------------------+--------------------------------------- Reporter: andre.david@gmail.com | Owner: macports-tickets@lists.macosforge.org Type: enhancement | Status: new Priority: Normal | Milestone: MacPorts base enhancements Component: base | Version: 1.6.0 Resolution: | Keywords: ------------------------------------+--------------------------------------- Comment (by jmr@macports.org): A daily tarball of the ports tree is now being generated, and in trunk you can use it to sync, or of course you can do it manually. See [wiki:howto/PortTreeTarball] and r35647. -- Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/13704#comment:4> MacPorts </projects/macports> Ports system for Mac OS
participants (1)
-
MacPorts