Skip to content
This repository was archived by the owner on Jul 26, 2024. It is now read-only.

System Requirements

Michael Stanclift edited this page Oct 22, 2020 · 22 revisions

The main requirement is Gravity Sync requires two at least separate Pi-hole 5.0 instances. These Pi-hole should be already be deployed and verified to be functional, prior to the installation of Gravity Sync.

  • Only the Linux distributions that Pi-hole is certified to run on are supported. (More Here)
  • You will need a user account with local administrator privileges on the host OS at each side. This can be a dedicated account or the system's root account.
  • If you're not using the root account, you can only install Gravity Sync in the user's $HOME directory.
  • If you're not using the root account, make sure that the account is a member of either the sudo or wheel group on both the primary and secondary Pi-hole. Most of the pre-built images available for the Raspberry Pi already have this configured, as does Ubuntu.
  • During installation, this non-root user will be given passwordless sudo permissions to the system.

Docker Pi-hole Installs

  • As of Gravity Sync 3.1, your Pi-hole installs can be a Docker container deployment.
  • Gravity Sync will run directly on the host OS, and not inside of the container image.
  • Only the official Pi-hole Docker image is supported.

Required Components

The installer will perform checks to make sure the required components to use Gravity Sync (such as OpenSSH, etc) are available on both the primary and secondary Pi-hole during installation. If they are missing you will have an opportunity to use whatever package manager is available on your system to correct the missing dependencies.

  • OpenSSH
  • Rsync
  • Crontab
  • Git
  • Sudo
  • SQLite3

If any of these components are missing, you should use the package manager utility that is bundled with your distribution to install them.

Debian/Raspbian/Ubuntu

apt update && apt install sqlite3 sudo git cronie rsync ssh

CentOS/Fedora

dnf install sqlite3 sudo git cronie rsync ssh

Pi-hole Architecture

You will want to designate one Pi-Hole as primary and at least one as secondary.

  • The primary Pi-hole is where you'll make most of your configuration changes through the Web UI, doing things such as; manual allow-listing, adding block-lists, device/group management, configuring custom/local network DNS, and changing other list settings.
  • The secondary Pi-hole(s) are where you will install and configure Gravity Sync.

See also: Reference Architectures

Clone this wiki locally