aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula/duplicity.rb
blob: 67ef8e5d35c799db677d78fdb42f2aab6044a84e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
require 'formula'

class Duplicity < Formula
  url 'http://launchpad.net/duplicity/0.6-series/0.6.14/+download/duplicity-0.6.14.tar.gz'
  homepage 'http://www.nongnu.org/duplicity/'
  md5 '09747eb1430a3f16888a661e5acbf28d'

  depends_on 'librsync'
  depends_on 'gnupg'

  def install
    ENV.universal_binary
    # Install mostly into libexec
    system "python", "setup.py", "install",
                     "--prefix=#{prefix}",
                     "--install-purelib=#{libexec}",
                     "--install-platlib=#{libexec}",
                     "--install-scripts=#{bin}"

    # Shift files around to avoid needing a PYTHONPATH
    system "mv #{bin}/duplicity #{bin}/duplicity.py"
    system "mv #{bin}/* #{libexec}"
    # Symlink the executables
    ln_s "#{libexec}/duplicity.py", "#{bin}/duplicity"
    ln_s "#{libexec}/rdiffdir", "#{bin}/rdiffdir"
  end

  def patches
    # back-ported fix to ssh-backend. fixed in upstream for 0.6.15.
    # for issue-details see https://bugs.launchpad.net/duplicity/+bug/823556
    DATA
  end
end


__END__
--- 0.6.14/src/backends/sshbackend.py	2011-06-13 14:24:27 +0000
+++ 0.6.15-pre/src/backends/sshbackend.py	2011-08-17 14:21:15 +0000
@@ -278,6 +278,10 @@
         be distinguished from the file boundaries.
         """
         dirs = self.remote_dir.split(os.sep)
+        if len(dirs) > 0:
+            if not dirs[0] :
+                dirs = dirs[1:]
+                dirs[0]= '/' + dirs[0]
         mkdir_commands = [];
         for d in dirs:
             mkdir_commands += ["mkdir \"%s\"" % (d)] + ["cd \"%s\"" % (d)]