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