.. _rfswift_install: Installing RF Swift =================== To install RF Swift, you have to choice using the pre-compiled binary wrapper depending on your system and pull an existing container image, or to compile the Go project and/or the Docker images from sources. .. warning:: Even if the project, could work on macOS with some manual workaround, we do not adverstise it for the moment, but this system will be a 100% supported anytime soon. This documentation guides you through different steps you can follow to be running the project smoothly. First, you need to get or compile the `rfswift` binary, and then pull or bake your own Docker images. Requirements ------------ The minimum requirements to run the project are the following: .. tabs:: .. group-tab:: Linux Docker is needed at least to run RF Swift containers. It can be directly your prefered package manager, such as APT or installed manually. .. tip:: From Linux systems, Docker can be installed quickly and easily with the following command-line: .. code-block:: bash curl -fsSL "https://get.docker.com/" | sh Other dependencies will be also needed such as: * ``xhost`` to install depending on your distribution * ``pulseaudio`` to install depending on your distribution .. group-tab:: macOS .. warning:: This system will be soon supported at 100% .. group-tab:: Windows * `Docker Desktop `__ to run container * `usbipd `__ to bind USB devices to the host * For programs using PulseAudio, follow steps in the following `pulseaudio page `_ using `new binaries here `_. .. warning:: Make sure Docker Desktop runs in `WSL2 `__. Then RF Swift can be used directly from the precompiled binary, or compile from source. RF Swift binary --------------- Option 1. Pre-compiled binary ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ You can also use one of our `precompiled binaries `_ directly to use RF Swift. For that, download the latest binary depending on your architectures. On Linux you'll have to change the right to make it executable: .. raw:: html Option 2. Compiling from source ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ To install RF Swift from source, you will have to clone the following Git project: .. code-block:: bash git clone https://github.com/PentHertz/RF-Swift.git If you want to compile the project, Golang will be also a requirement, but using the provided installation script in the root directory: .. tabs:: .. group-tab:: Linux .. code-block:: bash ./build.sh [+] Installing Go ... [+] Building RF Switch Go Project ... .. group-tab:: macOS .. warning:: This system will be soon supported at 100% .. group-tab:: Windows .. code-block:: bash build-windows.bat [+] Installing Go ... [+] Building RF Switch Go Project ... Here is an example using Linux: .. raw:: html After building the Go binary is built, we can ``pull`` an existing image, or build one from available Docker files, or also bake one of our own! .. warning:: When the installation script asks for a name to build an image (e.g: ``Enter image tag value``) you can skip it to use prebuilt Docker images to avoid long compilation time, and use ``pull`` command using ``rfswift``.