Skip to content

Installation

PyPI version PyPI downloads

EnderChest has minimal package dependencies and should run on pretty much any computer or operating system. It does require Python 3.10 or greater, portable distributions (read: no need for admin privileges) of which are available through miniconda and mambaforge.

You can check your Python version by opening a terminal and running:

python3 -V

Warning

Because of EnderChest's heavy reliance on symlinks, Windows users are required to turn on Developer Mode. Read more here.

Installing EnderChest

The recommended way to install EnderChest is via pipx:

pipx install enderchest[test]

If you can't install pipx on your system or if your system Python is too old, you can use a conda environment instead following the instructions in the next section. If you prefer to use pip directly with the system Python, skip to this section.

Creating a conda environment

These instructions assume that you've already downloaded and installed miniforge or another conda distribution and that mamba/conda is already registered to your system path.

  1. Open a terminal (miniforge prompt on Windows) and create a new virtual environment via:

    mamba create -n enderchest "python>=3.10" "pip>22"
    
    (substitute conda for mamba as needed)

  2. Activate your new environment:

    conda activate enderchest
    

Then continue onto the next section.

Installation via pip

  1. Install enderchest from PyPI using pip:

    python3 -m pip install --user enderchest[test]
    

    Optional

    If you plan on connecting to any remote servers via SFTP instead of rsync, include the sftp extra:

    python3 -m pip install --user enderchest[sftp,test]
    

  2. Ensure that EnderChest is compatible with your system by running:

    enderchest test
    
    If all tests pass, then you're good to go!

Tip

If you'd like enderchest to be available outside of your virtual environment, you can copy the executable to somewhere within your system path, e.g. for Linux, starting with the virtual environment deactivated:

$ echo $PATH
/home/openbagtwo/.mambaforge/condabin:/home/openbagtwo/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin
$ conda activate enderchest
$ which enderchest
/home/openbagtwo/.mambaforge/envs/enderchest/bin/enderchest
$ cp /home/openbagtwo/.mambaforge/envs/enderchest/bin/enderchest ~/.local/bin/

Installing rsync

EnderChest's preferred syncing protocol is rsync, and to use EnderChest with rsync you'll need version 3.2 or newer.

You can check if a sufficiently recent version of rsync is installed on your system by running the command:

rsync -V

If you get a message back stating: rsync: -V: unknown option, then your rsync is too old (you can confirm this by running rsync --version), and you'll need to follow the instructions below to get a more modern version installed:

Conda (macOS and Linux)

If you've already installed EnderChest in a conda-managed virtual environment, following the instructions above, conda builds of rsync are available for Mac and Linux and can be installed within your virtual environment via:

conda activate enderchest
mamba install rsync
(substituting conda for mamba if needed).

Other options for macOS

You can (and, honestly, should) upgrade your system's rsync installation via homebrew or MacPorts

Windows

Use of rsync on Windows is not currently supported, though it may be possible using Cygwin or WSL.

Luckily, other protocols are available, though they may require re-installing EnderChest with additional extras, i.e.

pipx install enderchest[sftp]

Bleeding Edge

If you'd like to test out upcoming features or help with beta testing, you can install from the current development branch via:

python3 -m pip install --user git+https://github.com/OpenBagTwo/EnderChest.git@dev#egg=enderchest[test,sftp]

Be warned that any code on this branch is considered highly experimental. As always, make sure to regularly back up any important data you're managing with this tool.