How to Install Exatorrent on NixOS Latest

Exatorrent is a powerful, open-source platform for hosting and sharing files online. It is written in Python3 and provides a web-based interface for managing torrent downloads. In this tutorial, we will guide you through the installation process of Exatorrent on NixOS Latest.

Prerequisites

Before you proceed, make sure you have the following:

  • A NixOS latest version installed
  • Basic knowledge of NixOS and its command-line interface
  • Access to the terminal with sudo privileges

Step 1: Install Required Dependencies

The first step in configuring Exatorrent is to install the necessary dependencies.

  1. Open the terminal and run the following command to update the package list:

    sudo nix-channel --update
    
  2. Next, install the required dependencies using the following command:

    sudo nix-env -i python3 python3Packages.pip
    

Step 2: Install Exatorrent

With the dependencies installed, we can now proceed to install Exatorrent.

  1. Clone the Exatorrent repository from GitHub using the following command:

    git clone https://github.com/varbhat/exatorrent.git
    
  2. Change your directory to Exatorrent using the following command:

    cd exatorrent
    
  3. Install Exatorrent using the pip command:

    sudo pip3 install -r requirements.txt
    

Step 3: Configure Exatorrent

Now that Exatorrent is installed, we need to configure it.

  1. Create a new configuration file using the following command:

    cp example.config.yml config.yml
    
  2. Open the config.yml file using your preferred text editor and make the necessary changes to the configuration parameters.

    nano config.yml
    

    The configuration file has several properties that you can adjust to suit your needs. Here are some of the most important options that you might want to modify:

    • bind_address: This is the IP address that Exatorrent will listen on. By default, it listens on all available network interfaces, but you can set it to a specific IP address if you prefer.
    • listen_port: This is the TCP port that Exatorrent will use to accept incoming connections. By default, it uses port 8112, but you can change it to any other available port.
    • data_dir: This is the directory where Exatorrent will store all its data files (including downloaded files, state files, and logs).
    • auth_token: This is the shared secret that is required to access the Exatorrent web UI. Make sure to set a strong and secure token that nobody else can guess.

Step 4: Start Exatorrent

With everything set up, we can now start Exatorrent.

  1. Run the following command from the terminal to start the Exatorrent daemon:

    ./exatorrent daemon
    
  2. Once the daemon starts, you should see a console output indicating that the server is running.

    [I 210918 15:51:04 rutorrent:71] Starting RTorrent process at /var/nix/store/...
    [I 210918 15:51:04 rutorrent:71] Starting server at 0.0.0.0:8112...
    
  3. Open a web browser and navigate to http://localhost:8112. You should see the Exatorrent web UI login screen.

  4. Enter the auth token that you set in the config.yml file and click on "Login". You should now be able to access the Exatorrent dashboard and start downloading files.

Conclusion

Congratulations! You've successfully installed Exatorrent on NixOS Latest. If you encounter any issues during the installation process or have any questions, feel free to refer to the official Exatorrent documentation or consult the NixOS documentation for more information.