Peerdownload is a plugin for yum which attempts to download rpms from participating computers in the local area network (peers). It is composed of two components:

  • the actual plugin, which scan the local network and fetch the rpms
  • the server, which let other peers download our cached files

It should work on any recent yum based distro like Fedora 18 (tested) as long as it has avahi running and a permissive enough firewall.

How to use

  1. get peerdownload and install it (hint: use a virtualenv [1] )
  2. ln -s /usr/lib/yum-plugins/
  3. enable it: echo -e "[main]\nenabled=1" > /etc/yum/pluginconf.d/peerdownload.conf
  4. start the server with python -m peerdownload.main
  5. temporarily disable selinux with setenforce 0 as it prevents dbus to work in yum (or fix it and send a patch :) )
  6. tell yum to keep the downloaded files: add keepcache=1 in the main section of yum.conf
  7. use yum normally


[1]There are few dependencies for the plugin part, it will probably work without running yum in a virtualenv.