have any of you tried out Homebrew? http://mxcl.github.com/homebrew/
it's like Appupdater or apt-get for OS X, a package manager that downloads source & compiles it. it's really cool. one issue tho is there's an army of guys (manually it seems?) updating the "Formula" (Ruby files) that describe each app when a new version comes out. so there's some lag, like any package management with maintainers that have to do manual updates. I think this is an opportunity for metalink to automate this process. anyone familiar w/ Ruby that might be interested? that way it could fit in w/ the existing Homebrew stuff. anyways, one possible way would be to add metalink to the Formula (the one for curl's included at the end of msg) metalink 'http://curl.haxx.se/metalink.cgi?curl=tar.gz' then the process would be: download the metalink from similarly autoupdated addresses when new versions of (for instance) aria2 and libmetalink come out hb already uses curl (Library/Homebrew/download_strategy.rb) get the app's version in the version element of the metalink XML. if version's greater than what's in the Formula, update the url and hash what do you think? seems relatively simple. other metalink-related opportunities: they'd like to support torrent downloads. -> a Formula for aria2 is already provided, I guess torrents would need a custom download strategy (see Specifying the Download Strategy section at https://github.com/mxcl/homebrew/wiki/Formula-Cookbook ) the curl metalink has a PGP signature. curl + GPGME? that would be better than the hashes. ----- require 'formula' class Curl < Formula homepage 'http://curl.haxx.se/' url 'http://curl.haxx.se/download/curl-7.27.0.tar.gz' sha256 '8cbad34e58608f0e959fe16c7c987e57f5f3dec2c92d1cebb0678f9d668a6867' keg_only :provided_by_osx, "The libcurl provided by Leopard is too old for CouchDB to use." option 'with-ssh', 'Build with scp and sftp support' option 'with-libmetalink', 'Build with Metalink support' depends_on 'pkg-config' => :build depends_on 'libssh2' if build.include? 'with-ssh' depends_on 'libmetalink' if build.include? 'with-libmetalink' def install args = %W[ --disable-debug --disable-dependency-tracking --prefix=#{prefix} ] args << "--with-libssh2" if build.include? 'with-ssh' args << "--with-libmetalink" if build.include? 'with-libmetalink' system "./configure", *args system "make install" end end -- (( Anthony Bryan ... Metalink [ http://www.metalinker.org ] )) Easier, More Reliable, Self Healing Downloads -- You received this message because you are subscribed to the Google Groups "Metalink Discussion" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/metalink-discussion?hl=en.
