Opened 15 years ago

Closed 14 years ago

#6436 closed enhancement (fixed)

RFC: rsync extended attributes support

Reported by: cssdev@… Owned by: cssdev
Priority: Normal Milestone:
Component: ports Version: 1.0
Keywords: Cc: mnot@…, tedkaz@…, cssdev
Port:

Description

There are existing ports for both rsync and hfsrsync, but neither of these include Apple's support for extended attributes. I created a rsync port that includes Apple's patches. The attached port is intended to duplicate building Apple's rsync 2.6.3 with extended attribute support (same as included in Mac OS X 10.4.3) using darwinports. However, this Portfile also includes patches that work around several Tiger rsync bugs as noted at the URL: http://www.lartmaker.nl/rsync/

This port also includes Apple's copyfile.h header and the Apple Public Source License. The idea here is to integrate Apple's rsync enhancements and the additional fixes from JDB in a port that can be easily built on other systems.

It has been recommend that I attempt to apply these patches to the latest rsync 2.6.6 port, so I'll see if I can get that working. There are some changes to the relevant portions of the code, so if I get that working, I'll upload those changes within this report.

Attachments (7)

rsync-ea.tar.gz (9.7 KB) - added by cssdev@… 15 years ago.
Apple rsync + EA patches port
rsync-266-ea-patches.tar.gz (9.3 KB) - added by cssdev@… 15 years ago.
Apple's EA patches converted for 2.6.6
rsync-eafixes.tar.gz (11.1 KB) - added by cssdev@… 15 years ago.
rsync 2.6.6 eafixes Portfile and patches
rsync-eafixes.tar.2.gz (19.5 KB) - added by cssdev@… 15 years ago.
Fixed archive
rsync-ea.tar.2.gz (19.6 KB) - added by cssdev@… 15 years ago.
rsync-ea port
Portfile (2.8 KB) - added by cssdev@… 15 years ago.
Portfile with enable-ea
Portfile.2 (2.9 KB) - added by cssdev 14 years ago.
Renames the port to rsync-lart and adjusts the distfile directories

Download all attachments as: .zip

Change History (20)

Changed 15 years ago by cssdev@…

Attachment: rsync-ea.tar.gz added

Apple rsync + EA patches port

Changed 15 years ago by cssdev@…

Attachment: rsync-266-ea-patches.tar.gz added

Apple's EA patches converted for 2.6.6

Changed 15 years ago by cssdev@…

Attachment: rsync-eafixes.tar.gz added

rsync 2.6.6 eafixes Portfile and patches

Changed 15 years ago by cssdev@…

Attachment: rsync-eafixes.tar.2.gz added

Fixed archive

comment:1 Changed 15 years ago by cssdev@…

attachments.isobsolete: 01

comment:2 Changed 15 years ago by mnot@…

Cc: mnot@… added

comment:3 Changed 15 years ago by jmpp@…

So Chris, what's the story on this? Have you made any further progress? Or do you believe your last entries on this bug are ready to be committed? Mark, as port maintainer, what's your take? Personally I believe the eafixes section should be included as a "darwin 8" platform declaration instead of a variant, given both that the fixes included therein are necessary on that platform and, secondly, they are not likely to work on any other platform (even darwin 7). Chriss, is this the case for every single patch you included? At this point I don't exactly recall, mind clarifying?

In any case, I'd really like to see this work integrated into the rsync port, most users will appreciate it I'm sure!

-jmpp

PS: Bugzilla seems to have acted up in some strange way, perhaps the db problems OpenDarwin is currently having. When I first tried to make these same comments to this bug, Bugzilla asked me to authenticate; upon successful login the result I got was that my comments were, instead, appended to a bug that was so old that it was fkr who closed it back then, so figure that! Trying again now to see if I get the right bug ;-)

comment:4 Changed 15 years ago by cssdev@…

According to the EA fixes author, the patch does support other operating systems. For example, one could run rsync from a Mac OS X Tiger system to a FreeBSD server running the same patched version of rsync. On other operating systems, this patch should allow rsync to store the associated extended attributes data as sent from Mac OS X Tiger. I haven't had a chance to verify this (I haven't installed DarwinPorts onto my FreeBSD box at work yet). I did verify that this patch retained extended attributes and corrected modification dates for local transfers on my laptop. I would still prefer to see some other people verify everything works with their own files too, just to be safe.

comment:5 Changed 15 years ago by mww@…

what about a rsync-devel port with all your most-cool patches? This way we can assure a stable rsync and get people to testing it w/o much pain.

Awaiting Portfile!

Changed 15 years ago by cssdev@…

Attachment: rsync-ea.tar.2.gz added

rsync-ea port

Changed 15 years ago by cssdev@…

Attachment: Portfile added

Portfile with enable-ea

comment:6 Changed 15 years ago by cssdev@…

I just noticed another page with details about "fixing rsync on Tiger," but it identifies several other issues that are probably not addressed by the patches I'm using. http://www.onthenet.com.au/~q/rsync/

I also noticed that rsync 2.6.7 was just released. http://rsync.samba.org/ftp/rsync/rsync-2.6.7-NEWS

comment:7 Changed 15 years ago by tedkaz@…

Cc: tedkaz@… added

comment:8 Changed 15 years ago by cssdev@…

For the sake of completeness, I'll also note the release of rsync 2.6.8: http://rsync.samba.org/ftp/rsync/rsync-2.6.8-NEWS

comment:9 Changed 15 years ago by markd@…

Type: defectenhancement

comment:10 Changed 14 years ago by cssdev@…

I've been using this port to backup my hard drive for several months now, and it has properly preserved both resource forks and modification dates. Should we consider action on this port? Perhaps try to apply the changes to the latest version of rsync? Consider adding this test with a strong warning that it needs more testing?

comment:11 Changed 14 years ago by cssdev

Cc: css@… added

Should I commit this port for more open testing?

comment:12 Changed 14 years ago by cssdev

Owner: changed from mww@… to css@…
Status: newassigned

I'll commit this as net/rsync-lart unless there are any major objections.

Changed 14 years ago by cssdev

Attachment: Portfile.2 added

Renames the port to rsync-lart and adjusts the distfile directories

comment:13 Changed 14 years ago by cssdev

Resolution: fixed
Status: assignedclosed

I committed rsync-lart in r22516. We'll see if it gets some use, but issues should go into new tickets. I'm marking this ticket closed for now.

Note: See TracTickets for help on using tickets.