… or: "apt-spy for Ubuntu"

Build Status Gem Version Code Climate Coverage Status


gem install apt-spy2


$ apt-spy2                                                                                                                                                         [21:03:52]
apt-spy2 commands:
  apt-spy2 check           # Evaluate mirrors
  apt-spy2 fix             # Set the closest/fastest mirror
  apt-spy2 help [COMMAND]  # Describe available commands or one specific command
  apt-spy2 list            # List the currently available mirrors

list command

Displays a list of currently available mirrors. These mirrors are automatically selected via ubuntu-mirrors using your IP's location.

$ apt-spy2 list

Since mirrors.ubuntu.com is frequently down, you can the list on Launchpad:

$ apt-spy2 list --launchpad --country=Germany

check command

check works like list, but also determines if the servers returned are working. It supports Launchpad as well.

$ apt-spy2 check
$ apt-spy2 list --launchpad --country=US

fix command

fix applies the result of check and updates /etc/apt/sources.list.

Once the fix is applied, please run apt-get update.

Please note: Depending on the context, it may require sudo.


See apt-spy2 help list|check|fix for available options.

Please note: --launchpad always requires you pass --country=FOO as well.

exit codes

  • 0 - all went well
  • 1 - some kind of error

output and non-interactiveness

See apt-spy2 help COMMAND for more information.

Generally, apt-spy2 plays especially nice in a non-interactive environment and won't ask for anything without setting environment variables or using the usual -y.


New BSD License