duplicity-talk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Duplicity-talk] Adding resource fork awareness to tarfile.py


From: Apple Consultants Network
Subject: [Duplicity-talk] Adding resource fork awareness to tarfile.py
Date: Tue, 11 Jul 2006 09:32:14 -0400

Dear List,

I am new to the list so hello to all. I just discovered duplicity yesterday and have it running on OS X 10.4.7. So far I've only done file:// archives and everything appears great with the exception of the Apple user's bane... resource forks. Originally I thought I would dig out my copy of hfstar (before I realized that Apple is shipping an extended attribute aware tar in 10.4.x) and symlink tar to hfstar to capture forked files properly. This was before I dug in and discovered that it appears that tarfile.py is defining the behavior of tar. Admittedly, I am below a newbie to python (translated - I have no idea what I am looking at). So, therein is my problem.

Apple ships a tarfile.py file in /System/Library/Frameworks/ Python.framework/Versions/2.3/lib/python2.3/ which appears to be newer (?) than the tarfile that shipped with Duplicity. It also has some additional Mac specific blocks on code. So naturally, I replaced the duplicity tarfile.py with the one from Apple, built, and installed. However, when I run duplicity, it throws errors and exits out. Obviously the tarfile.py files are not interchangeable. For what it is worth, here is the error:

Traceback (most recent call last):
  File "./duplicity", line 373, in ?
    if __name__ == "__main__": main()
  File "./duplicity", line 367, in main
    else: incremental_backup(sig_chain)
  File "./duplicity", line 169, in incremental_backup
    sig_chain.get_fileobjs(), new_sig_outfp)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/ python2.3/site-packages/duplicity/diffdir.py", line 251, in DirDelta_WriteSig
    return DeltaTarBlockIter(delta_iter)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/ python2.3/site-packages/duplicity/diffdir.py", line 377, in __init__
    self.tf = tarfile.TarFromIterator(None)
AttributeError: 'module' object has no attribute 'TarFromIterator'

Does anyone have suggestions of how I might be able to support resource forks from an HFS volume when using duplicity? My hope was that it simply called tar from the file system to create the archives. And since Apple has been so kind as to support forked files with common unix tools, I really thought I had an easy solution here.

Thanks for your time and suggestions.

Reid





reply via email to

[Prev in Thread] Current Thread [Next in Thread]