How to install

Before installing vdist, it is important that you have the Docker daemon running. I recommend getting the latest version of Docker to use with vdist.

Install from Pypi

Installing vdist is as easy as this:

$ pip install vdist

The vdist executable will be placed in /bin folder of python interpreter folder you used when calling pip (e.g. if you called pip from a virtualenv, vdist executable will be placed in virtualenv's bin folder).

Install in Ubuntu using deb package

You can download a deb package from releases section of vdist GitHub page. Be aware that vdist depends on docker-ce package that it is not available in standard ubuntu repositories. So you should add docker repositories before installing vdist:

$ sudo apt-get update
$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo apt-key fingerprint 0EBFCD88

    pub   4096R/0EBFCD88 2017-02-22
          Key fingerprint = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
    uid                  Docker Release (CE deb) <docker@docker.com>
    sub   4096R/F273FCD8 2017-02-22

$ sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

To install it locally resolving dependencies type:

$ sudo apt-get update
$ sudo dpkg -i <vdist_deb_package>.deb
$ sudo apt-get -f install

Alternatively, you can configure vdist's apt repository and download package from there. This is the preferred way of installation because using apt repository has the benefit of continuous updates so you have not to check vdist website to get updates. To configure vdist's apt repository and install from there, type:

$ sudo apt-get update
$ curl -s https://packagecloud.io/install/repositories/dante-signal31/vdist/script.deb.sh | sudo bash
$ sudo apt-get update
$ sudo apt-get install vdist

If second "apt update" ends with an error check that file /etc/apt/sources.list.d/dante-signal31_vdist.list has next contents:

# this file was generated by packagecloud.io for
# the repository at https://packagecloud.io/dante-signal31/vdist

deb https://packagecloud.io/dante-signal31/vdist/ubuntu/ jammy main
deb-src https://packagecloud.io/dante-signal31/vdist/ubuntu/ jammy main

If your file differs that's surely because your box is not an Ubuntu Jammy. It doesn't matter, just make necessary changes to that file to be what I've posted and repeat the "apt update" command. After this fix your error will probably be gone.

Install in Fedora using rpm package

You can download a rpm package from releases section of vdist GitHub page. Be aware that vdist depends on docker-ce package that it is not available in standard centos repositories. So you should add docker repositories before installing vdist:

$ sudo yum install -y yum-utils
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Afterwards you can install vdist rpm packages locally resolving dependencies. Just type:

$ sudo yum --nogpgcheck localinstall <vdist_rpm_package>.rpm

Alternatively, you can configure vdist's RPM repository for Fedora37 and download packages from there. This is the preferred way of installation because using apt repository has the benefit of continuous updates so you have not to check vdist website to get updates. To configure vdist's rpm repository and install from there, type:

$ sudo yum update
$ curl -s https://packagecloud.io/install/repositories/dante-signal31/vdist/script.rpm.sh | sudo bash
$ sudo yum update
$ sudo yum install vdist

Install from GitHub

Alternatively, you can clone the source directly from Github and install its dependencies via pip. When doing that, I recommend using virtualenv. For example:

$ git clone https://github.com/objectified/vdist
$ cd vdist
$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt