Installation

Dependencies

Components this project depends on include:

After installation, please make sure that binary files are available in your PATH variable. You can check it with this command (example for dnsmasq):

$ which dnsmasq
/usr/sbin/dnsmasq

The package itself depends on a few Python libraries which are installed automatically by Pip package manager. These libraries are:

These dependencies are only for the host running BootTorrent. Please check your distribution specific guide for instructions on how to install them. For building BootTorrent and the list of build dependencies, please refer build dependencies.

From sources

Get the code

The sources for BootTorrent can be downloaded from the Github repo.

You can either clone the public repository:

$ git clone git://github.com/shreyanshk/boottorrent

Or download the tarball:

$ curl  -OL https://github.com/shreyanshk/boottorrent/tarball/dev

Pre-Install: Build assets

You can skip this section if you do not intent to customize BootTorrent as these resources are currently checked in with the repository

Building assets requires additional software. This includes:

Some Golang dependencies are also required to build, you can download them with these commands:

$ cd phase1bootstrap/
$ make dldeps

To build the SliTaz live image that is run on the client, copy the phase1bootstrap/slitaz/ directory to a Virtual Machine or computer running SliTaz with Tazlito installed. Then, open a console and execute:

$ cd <path to copied directory>
$ sudo tazlito gen-distro

Hint: You can also customize the built image to include more packages, drivers or files etc. Read more here in the FAQ.

It will ask if you want to ‘Repack packages from rootfs?’, please press ‘n’ and then enter. This will download SliTaz packages from the internet and make a custom live distribution usable with BootTorrent.

We only need the final Kernel image and the initrd file which are generated in this process. These files are rootcd/boot/bzImage and rootcd/boot/rootfs.gz, please copy these files from this Virtual Machine or computer and place them inside boottorrent/assets/ph1 directory.

To build the client TUI, execute:

$ cd phase1bootstrap
$ make initrd

This will create the assets and place them at proper locations in the repository.

Install

First, check if you have a compatible version (>3.6) of Python.

$ python --version
Python 3.6.5

Otherwise, look at your distribution’s documentation to install it or use tools such as pyenv.

You can install BootTorrent just for your account (this doesn’t require sudo) with pip:

$ pip install --user <repository path>

You can also do a global install with pip:

$ sudo pip install <repository path>

If BootTorrent conflicts with your previously installed packages. You can use virtualenv to setup a virtual environment and install inside it:

$ virtualenv -p python3.6 venv
$ source venv/bin/activate
$ pip install <repository path>

From Pip

First, check if you have a compatible version (>3.6) of Python.

$ python --version
Python 3.6.5

Otherwise, look at your distribution’s documentation to install it or use tools such as pyenv.

After installing runtime dependencies, to install BootTorrent, you can install it just for your account (this doesn’t require sudo) with pip:

$ pip install --user git+https://github.com/shreyanshk/boottorrent

You can also do a global install with pip:

$ sudo pip install git+https://github.com/shreyanshk/boottorrent

If BootTorrent conflicts with your previously installed packages. You can use virtualenv to setup a virtual environment and install inside it:

$ virtualenv -p python3.6 venv
$ source venv/bin/activate
$ pip install git+https://github.com/shreyanshk/boottorrent

These are the preferred methods to install BootTorrent, as they will always install the most recent release.

If you don’t have Pip installed, this Python installation guide can guide you through the process.

Updating/Reinstalling

First, please uninstall the previous version with these commands:

If you’ve installed BootTorrent locally only for the current user:

$ pip uninstall boottorrent

If you’ve installed BootTorrent globally (installed with sudo):

$ sudo pip uninstall boottorrent

Or, If you’ve used virtualenv:

$ source <path to virtualenv>/bin/activate
$ pip uninstall boottorrent

Then, you can install BootTorrent back by any of the above methods.