Getting started

Install the SPLENT development environment in under 5 minutes.


Table of contents

  1. System requirements
  2. Configure Git (all platforms)
  3. Create the workspace
  4. Clone repositories
  5. Start Docker
  6. Next steps

System requirements

SPLENT runs natively on Linux and macOS.

If you are using Windows, you must work inside WSL (Windows Subsystem for Linux). All commands in this guide must be executed inside the Linux terminal provided by WSL, not in PowerShell.

Before continuing, ensure that the following tools are installed.

  • Git
  • Docker
  • SSH configured with GitHub
  • GNU Make

On Windows, also ensure the following.

  • WSL is installed
  • Docker Desktop is integrated with WSL
  • Git is configured

Detailed per-platform setup guides are available.


Configure Git (all platforms)

SPLENT runs inside a container that bind-mounts your ~/.gitconfig and ~/.ssh from the host. If ~/.gitconfig does not exist, Docker creates it as an empty directory, which breaks Git inside the container. This is the most common cause of feature:clone / feature:install failures.

Before running make setup, create the file manually and configure your identity.

rm -rf ~/.gitconfig
touch ~/.gitconfig
git config --global user.name "Your Name"
git config --global user.email "your_email@example.com"

Verify that ~/.gitconfig is a file.

ls -l ~/.gitconfig

It should appear as a regular file, not a directory.

The host pre-flight (make preflight, and automatically before make setup / make cli) checks this for you and warns if ~/.gitconfig or ~/.ssh are in a state that would break feature cloning.


Create the workspace

SPLENT is not a single repository. It is an ecosystem, and all components live in a single root directory called the workspace.

mkdir splent_workspace
cd splent_workspace

Clone repositories

git clone https://github.com/diverso-lab/splent_framework.git
git clone https://github.com/diverso-lab/splent_cli.git

If you have SSH access, clone via SSH instead.

git clone git@github.com:diverso-lab/splent_framework.git
git clone git@github.com:diverso-lab/splent_cli.git

Your workspace now looks like this.

splent_workspace/
  splent_framework/       # Runtime core
  splent_cli/             # Command-line interface

Two repositories, plus your products. There is no catalog repository to clone. A product records the DOI of the variability model it derives from in its own pyproject.toml, and the CLI downloads it once from UVLHub into .splent_cache/spls/.


Start Docker

cd splent_cli
make setup

This builds Docker containers and drops you into the CLI shell.

(detached) /workspace$

This is the heavy step, so be patient. The first make setup builds the CLI image from scratch (Python 3.13, Java/PlantUML, Node.js, the Docker CLI and all dependencies), so it downloads and compiles a lot. Expect several minutes on a first run depending on your machine and connection. Subsequent runs are cached and start almost instantly. If the terminal looks idle, the build is still working, so let it finish.

You are now inside the SPLENT environment. Every command from this point runs inside this container.


Next steps

You’re ready. Head to the Tutorials to create your first product.


Back to top

splent. Distributed by an LGPL license v3. Contact us: drorganvidez@us.es