Skip to content

Installation

Akashdeep Dhar edited this page Dec 20, 2024 · 5 revisions

For development

  1. Install the supported version of project dependencies on your Fedora Linux installation.

    $ sudo dnf install python3 python3-virtualenv poetry nodejs-npm
    
    $ sudo dnf install redis coreutils util-linux
    
  2. Clone the repository to your local storage and make the project directory your present working directory.

    $ git clone https://github.com/gridhead/syncstar.git
    
    $ cd syncstar
    
  3. Establish a virtual environment within the project directory and activate it for installing dependencies.

    $ virtualenv venv
    
    $ source venv/bin/activate
    
  4. Check the validity of the project configuration file and install the dependencies from the lockfile.

    (venv) $ poetry check
    
    (venv) $ poetry install
    
  5. Make the frontend directory your present working directory and install the dependencies from the lockfile.

    $ cd frontend
    
    $ npm install
    

For consumption

From repositories

This method of installation is slightly recommended, but it can only work on Fedora Linux installations.

  1. Install the supported version of project dependencies on your Fedora Linux installation.

    $ sudo dnf install python3 python3-virtualenv
    
    $ sudo dnf install redis coreutils util-linux
    
  2. Install the package from the official Fedora Linux package repositories by executing the following command.

    $ sudo dnf update --refresh
    
    $ sudo dnf install syncstar
    
  3. Configure the service unit files for the endpoint service and worker service in the system services directory.

    $ sudo wget https://raw.githubusercontent.com/gridhead/syncstar/main/syncstar/system/endpoint.service -O /etc/systemd/system/ss-endpoint.service
    
    $ sudo wget https://raw.githubusercontent.com/gridhead/syncstar/main/syncstar/system/worker.service -O /etc/systemd/system/ss-worker.service
    
  4. Enable and start the service units for endpoint service and worker service of SyncStar.

    $ sudo systemctl enable --now ss-endpoint.service
    
    $ sudo systemctl enable --now ss-worker.service
    

From PyPI

This method of installation is slightly discouraged, but it can work on most GNU/Linux distributions.

  1. Install the supported version of Python, Python Package Installer, Redis, CoreUtils, and Util Linux on your installation.

    $ sudo dnf install python3 python3-virtualenv python3-pip
    
    $ sudo dnf install redis coreutils util-linux
    
  2. Elevate the privileges to the superuser level and install the syncstar package from Python Package Index repositories.

    $ sudo -s
    
    # pip3 install syncstar
    
  3. Configure the service unit files for the endpoint service and worker service in the system services directory.

    $ sudo wget https://raw.githubusercontent.com/gridhead/syncstar/main/syncstar/system/endpoint.service -O /etc/systemd/system/ss-endpoint.service
    
    $ sudo wget https://raw.githubusercontent.com/gridhead/syncstar/main/syncstar/system/worker.service -O /etc/systemd/system/ss-worker.service
    
  4. Enable and start the service units for endpoint service and worker service of SyncStar.

    $ sudo systemctl enable --now ss-endpoint.service
    
    $ sudo systemctl enable --now ss-worker.service
    
Clone this wiki locally