Skip to main content

Clone/mirror multiple Linux distro/BSD flavor/etc. repositories to a local server

Project description

This project will let you mirror a Linux distribution's repository/repositories (or BSD, etc.).


Features:

* Logging
* RSync or FTP supported (RSync mirrors require rsync to be installed and in the $PATH environment variable) (HTTP/HTTPS cannot and will not be supported as there's no real way to do it reliably and efficiently.)
* Locking - prevent a specific distribution from syncing if it is currently being synced but allow other distributions to sync
* Customizable rsync arguments
* Changing of directory/file ownership per-distribution
* Mount-checking per-distribution - a distribution will be skipped if its designated mountpoint is not mounted
* Synchronization checks - timestamp files can be read and written and are used to determine if a sync should take place or not
** TODO: customizable "staleness" of repos (e.g. sync if timestamp X is older than timestamp Y on server)


Configuration/Deployment:

See example.config.xml for details on a configuration file, as it's extensively commented and won't be covered in this README.

You can also run reposync -h (or reposync --help) to see all supported options.

You may take special interest in repomirror/utils/find_fastest_upstream/ scripts as they're pre-written to find the fastest (in theory) upstream you can use. Currently only Arch Linux and CentOS have scripts written, but I'll gladly try to add other distros if you open a feature request (see below). You can run -h/--help to see the supported options (there aren't many).


Bugs/Feature Requests:

Please use my tracker at https://bugs.square-r00t.net/index.php?project=14 or, if you prefer to not create an account, simply email me at bts(at)square-r00t[dot]net.


Sources:

This project can be found at/cloned from:

* https://git.square-r00t.net/RepoMirror
* git://git.square-r00t.net/repomirror.git

And has a mirrored repository on GitHub (Issues/Wiki/etc. disabled) at:

* https://github.com/johnnybubonic/repomirror

It can also be found on PyPi at:

* https://pypi.org/project/repomirror/

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

repomirror-1.0.4.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

repomirror-1.0.4-py3-none-any.whl (28.5 kB view details)

Uploaded Python 3

File details

Details for the file repomirror-1.0.4.tar.gz.

File metadata

  • Download URL: repomirror-1.0.4.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for repomirror-1.0.4.tar.gz
Algorithm Hash digest
SHA256 2765e97376344bcff6d0211fb54d4a801144e9306c98845ed8a048fb02a2b126
MD5 39b55008f932dcf6d1a28387b6ca843f
BLAKE2b-256 0e21bb5dc0b0741b2b802c1d588a079862cf73baf76d16d56e7750e3d9e30ea5

See more details on using hashes here.

File details

Details for the file repomirror-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: repomirror-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 28.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for repomirror-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4bc14f8aea4cfa5752b39db6c6472fc0e16a286f9c4139359d1c5ceb2ec36d70
MD5 2044f2cbb4547c7bdfdd268dc13e64c9
BLAKE2b-256 b5aadfcc941cfedccf219f0fd19df1aa5038a27e2328b21247aa516192856128

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page