Skip to main content

Setting up OpenCIS

The following instructions are for Ubuntu 22.04.

Install Dependencies

sudo apt update && \
sudo apt install git python3-pip python3.11-dev libpcap-dev -y
curl -Ls https://astral.sh/uv/install.sh | bash

Get Source Code

Top-level

git clone https://github.com/opencis/opencis.git

This top-level source contains multiple git submodules. We will work through them one at a time.

Get OpenCIS Core

In the root directory of opencis (i.e. top-level project), run:

git submodule update --init --progress opencis-core && cd opencis-core

Install Python Packages

The core component of OpenCIS uses uv to manage Python packages and their dependencies in a virtual environment. This is to both minimize impact to the user's native environment as well as to maximize stability by controlling package versions.

In the root directory of opencis-core, run:

uv python install 3.13 && uv python pin 3.13
uv sync

To confirm that the installation was successful, run:

uv pip list

The output should be something like:

Package                   Version    Editable project location
------------------------- ---------- -------------------------
aiohappyeyeballs 2.6.1
aiohttp 3.11.16
aiosignal 1.3.2
appdirs 1.4.4
astroid 3.3.9
attrs 25.3.0
bidict 0.23.1
black 25.1.0
...

Continue to Setting up QEMU