Skip to content

Install

Anti Ops edited this page Oct 20, 2022 · 81 revisions

Install

ArchiveBox only has a few main dependencies apart from python3, and they can all be installed using your normal package manager. It usually takes 1min to get up and running if you use the helper script, or about 5min if you install everything manually.

Supported Systems

ArchiveBox officially supports the following operating systems:

  • macOS: >=10.12 (with homebrew)
  • Linux: Ubuntu, Debian, etc (with apt)
  • BSD: FreeBSD, OpenBSD, NetBSD etc (with pkg)

Other systems that are not officially supported but probably work to varying degrees:

  • Windows: Via Docker, Docker in WSL2, bare WSL/WSL2, or even directly in batch/powershell with pip (if you're adventurous)
  • Other Linux distros: Fedora, SUSE, Arch, CentOS, etc.

Platforms other than Linux, BSD, and macOS are untested, but you can probably get it working on them without too much effort.

It's recommended to use a filesystem with compression and/or deduplication abilities (e.g. ZFS or BTRFS) for maximum archive storage efficiency.

You will also need 500MB of RAM (bare minimum), though 2GB or greater recommended. You may be able to reduce the RAM requirements if you disable all the chrome-based archiving methods with USE_CHROME=False.

Dependencies

Not all the dependencies are required for all modes. If you disable some archive methods you can avoid those dependencies, for example, if you set FETCH_MEDIA=False you don't need to install youtube-dl, and if you set FETCH_[PDF,SCREENSHOT,DOM]=False you don't need chromium.

  • python3 >= 3.7
  • wget >= 1.16
  • chromium >= 59 (google-chrome >= v59 works fine as well)
  • youtube-dl
  • curl (usually already on most systems)
  • git (usually already on most systems)

More info:

Automatic Setup

If you're on Linux with apt, or macOS with brew there is an automatic setup script provided to install all the dependencies. BSD, Windows, and other OS users should follow the Manual Setup or Docker instructions.

# docker or the manual setup are preferred on all platforms now, if you want to use the old install script you can run:
curl https://raw.githubusercontent.com/pirate/ArchiveBox/master/bin/setup.sh | sh

The script explains what it installs beforehand, and will prompt for user confirmation before making any changes to your system.

After running the setup script, continue with the Quickstart guide...

Manual Setup

If you don't like running random setup scripts off the internet (👍), you can follow these manual setup instructions.

1. Install dependencies

macOS

brew tap homebrew-ffmpeg/ffmpeg
brew install homebrew-ffmpeg/ffmpeg/ffmpeg --with-fdk-aac
brew install python3 git wget curl youtube-dl
brew cask install chromium  # Skip this if you already have Google Chrome/Chromium installed in /Applications/

Ubuntu/Debian

apt install python3 python3-pip python3-distutils git wget curl youtube-dl
apt install chromium-browser  # Skip this if you already have Google Chrome/Chromium installed

BSD

FreeBSD:

pkg install python git wget curl youtube-dl 
pkg install chromium-browser  # Skip this if you already have Google Chrome/Chromium installed

OpenBSD:

pkg_add python3 git wget curl youtube-dl chromium

Install ArchiveBox using pip

python3 -m pip install --upgrade archivebox

Check that everything worked and the versions are high enough.

python3 --version | head -n 1 && 
git --version | head -n 1 && 
wget --version | head -n 1 && 
curl --version | head -n 1 && 
youtube-dl --version | head -n 1 && 
echo "[√] All dependencies installed."

archivebox version

If you have issues setting up Chromium / Google Chrome, see the Chromium Install page for more detailed setup instructions.

2. Get your bookmark export file

Follow the Quickstart guide to download your bookmarks export file containing a list of links to archive.

3. Run archivebox

# create a new folder to hold your data and cd into it
mkdir data && cd data
archivebox init
archivebox version
archivebox add < ~/Downloads/bookmarks_export.html

You can also use the update subcommand to resume the archive update at a specific timestamp archivebox update --resume=153242424324.123.

Next Steps

Docker Setup

First, if you don't already have docker installed, follow the official install instructions for Linux, macOS, or Windows https://docs.docker.com/install/#supported-platforms.

Then see the Docker page for next steps.