Samuel Baldwin schrieb:
I don't use OpenBSD but I can assure you that there is nothing special
about portage's usage of rsync. Every howto about rsync servers and BSD
should work. Just look into the script for settings like recursion and
compression.

Well, I mean't every gentoo one says emerge --sync, I was wondering
what commands I could run/throw into a script to grab exactly what I
want. Also, how would I get rsync to download/sync to a different
location (upstream syncing, not syncing with local clients), such as
/mnt/srv/portage/ or whatnot.

You can choose every directory you want. In fact, it's even better to
use another one so you don't need to exclude /usr/portage/distfiles and
/usr/portage/packages.

Awesome.

Thanks,

I've taken a look into /usr/bin/emerge. There I've found these default settings for rsync:

                                "--recursive",    # Recurse directories
                                "--links",        # Consider symlinks
"--safe-links", # Ignore links outside of tree
                                "--perms",        # Preserve permissions
                                "--times",        # Preserive mod times
"--compress", # Compress the data transmitted "--force", # Force deletion on non-empty dirs "--whole-file", # Don't do block transfers, only entire files "--delete", # Delete files that aren't in the master tree "--delete-after", # Delete only after everything else is done "--stats", # Show final statistics about what was transfered "--timeout="+str(mytimeout), # IO timeout if not done in X seconds "--exclude=/distfiles", # Exclude distfiles from consideration "--exclude=/local", # Exclude local from consideration "--exclude=/packages", # Exclude packages from consideration "--filter=H_**/files/digest-*", # Exclude manifest1 digests and delete on the receiving side


Using these options to sync to a gentoo rsync mirror should give you a very basic emerge --sync. Since you don't use portage on the BSD machine you don't need to update caches etc. However, you will still get an error when syncing your clients because you don't update the server timestamp.

Normally you can still sync by erasing the client's timestamp but I've only tested this with existing but outdated timestamps. I don't know how emerge handles missing timestamps.

I'm no expert in portage, python or rsync so I can't guarantee you that what I tell you works.

By the way: Couldn't you just install portage on OpenBSD? Since it's just python code it should work and if you don't actually emerge something it shouldn't interfere with your normal package manager. I think there is even official documentation how to reinstall portage manually without extracting a stage3.
--
[EMAIL PROTECTED] mailing list

Reply via email to