VANET Simulation Setup in 2026: The Command Reference

Video CompanionUpdated June 25, 2026

This is the companion reference to the YouTube tutorial on setting up OMNeT++, SUMO, Veins, and INET with opp_env on Fedora Linux. Watch the video for the full walkthrough and context: Getting Started with OMNeT++, INET, Veins, and SUMO (2026 Edition). Keep this open in a second window while you follow along.

Prerequisites

  • Fedora Linux (this guide is Fedora-specific)
  • Python 3 and pip (ships with Fedora by default)
  • Internet connection (opp_env downloads and compiles everything)

Step 1: Install Nix

Use the Determinate Systems installer. It handles Fedora's SELinux out of the box, which the standard Nix installer does not.

curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install

Follow the prompts. When it finishes, close your terminal and open a new one.

Verify:

nix --version

Step 2: Install opp_env

Make sure pip is up to date:

pip install --upgrade pip

Install opp_env:

pip install opp-env

If you hit an externally-managed-environment error:

pip install --user opp-env

Add your local bin to PATH:

echo 'export PATH=$HOME/.local/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

These two commands produce no output. Silence means they worked.

Verify:

opp_env --version

Step 3: Install the full VANET stack

One command installs OMNeT++, SUMO, Veins, and INET with compatible versions resolved automatically:

opp_env install -w vanet-workspace --init veins-latest

This takes a while. opp_env uses Nix under the hood and compiles everything in an isolated environment. Let it run.

Step 4: Enter the simulation environment

Every time you want to work on your simulation:

cd vanet-workspace
opp_env shell

Your prompt changes when you are inside the environment. All tools are on your PATH from here.

Step 5: Open the OMNeT++ IDE

From inside the opp_env shell:

omnetpp

If the Veins project is not visible in the Project Explorer, import it manually: File, Import, General, Existing Projects into Workspace, Browse to the Veins directory inside vanet-workspace, Finish.

Step 6: Run your first simulation

Start the Veins launch daemon first. This must be running before you launch any simulation. From inside the opp_env shell:

veins_launchd -vv -c $(which sumo)

You should see:

Listening on port 9999

Leave this terminal open.

Then run the example scenario in the OMNeT++ IDE. Navigate to the Veins project, open the simulations folder, and find erlangen.ini. Right-click, Run As, OMNeT++ Simulation. Choose the Release configuration when prompted.

SUMO opens with a road network and vehicles moving. OMNeT++ runs alongside it. If both are running, your stack is working.

Troubleshooting reference

TraCI connection refused

veins_launchd is not running, or you are not inside the opp_env shell. Run this before anything else:

opp_env shell

Then start the launch daemon:

veins_launchd -vv -c $(which sumo)

NED file not found

Project references are not set. In OMNeT++, right-click your project, go to Properties, Project References, and check both inet and veins.

opp_env command not found

Your ~/.local/bin is not on your PATH. Run:

echo 'export PATH=$HOME/.local/bin:$PATH' >> ~/.bashrc && source ~/.bashrc

Nix install fails on Fedora

SELinux conflict with the standard Nix installer. Use the Determinate Systems installer instead:

curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install

Simulation runs slowly

You are in the Debug configuration. Switch to Release when the dialog prompts you, or go to Project, Build Configurations, Set Active, Release.

Links