aboutsummaryrefslogtreecommitdiffstats
path: root/tool/downloader.rb
diff options
context:
space:
mode:
Diffstat (limited to 'tool/downloader.rb')
-rw-r--r--tool/downloader.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/tool/downloader.rb b/tool/downloader.rb
new file mode 100644
index 0000000000..83554fb19d
--- /dev/null
+++ b/tool/downloader.rb
@@ -0,0 +1,11 @@
+require 'open-uri'
+
+Downloader = "http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=%s;hb=HEAD"
+def Downloader.download(name, dir = nil)
+ uri = URI(self % name)
+ data = uri.read
+ file = dir ? File.join(dir, name) : name
+ open(file, "wb", 0755) {|f| f.write(data)}
+rescue => e
+ raise "failed to download #{name}\n#{e.message}: #{uri}"
+end