Installation
STEPSS comes in two editions, and this page installs either. STEPSS GUI is the desktop application: install it once, then work from windows and menus. STEPSS in Python is the stepss package: pip install it and drive the same engines from a script or a notebook. Both read the same data files, so a case built in one runs unchanged in the other, and installing one does not commit you to it.
The last two sections, the Fortran toolchain and CODEGEN Studio, are for writing your own models. Skip them unless you intend to.
Watch it
Section titled “Watch it”Episode 1 of the video series, Installation and Setup, covers this page.
Installing STEPSS GUI
Section titled “Installing STEPSS GUI”STEPSS GUI comes as an installer, which brings its own Java, on every release. There is also a package manager on each platform, delivering the same application so that later releases arrive on their own: an APT repository on Debian and Ubuntu, a Scoop bucket on Windows, and a Homebrew tap on macOS.
The installers bundle a Java runtime, so an existing Java on the machine is neither required nor disturbed. On Windows and Linux nothing else needs installing. On macOS the simulation engines also need two Homebrew packages, which the .dmg cannot bring with it.
- Download the one for your system from the release’s assets:
- Windows:
STEPSS-<version>.msi, though the Windows (Scoop) tab is the better route if you can use it: same application, later releases arrive on their own, and it needs no administrator rights. - macOS (Apple Silicon):
STEPSS-<version>.dmg, and runbrew install gcc openblasonce, or the application opens normally and the first simulation fails. The macOS (Homebrew) tab is the better route if you can use it: same application, both packages come with it, and later releases arrive on their own. - Linux (Debian, Ubuntu):
stepss_<version>_amd64.deb, though the Debian and Ubuntu (apt) tab is the better route if you can use it: same package, and later releases arrive on their own.
- Windows:
- Open it and follow the installer.
- Launch STEPSS from the Start menu, Applications, or your desktop’s application list.
On Linux, install the .deb with sudo apt install ./stepss_<version>_amd64.deb rather than dpkg -i, so that the libraries it needs are pulled in with it. It requires Ubuntu 24.04 or newer, or a Debian of the same vintage or later.
Uninstall the way you would any other application on your system: Add or Remove Programs on Windows, dragging it to the Trash on macOS, sudo apt remove stepss on Debian and Ubuntu.
STEPSS has an APT repository, so it installs like any other package and every later release arrives through apt upgrade instead of being downloaded by hand. It is the same .deb as the Installer tab, served from apt.sps-lab.org.
Set it up once:
sudo install -d -m 0755 /etc/apt/keyringssudo curl -fsSL https://apt.sps-lab.org/sps-l-archive-keyring.asc \ -o /etc/apt/keyrings/sps-l-archive-keyring.asc
sudo tee /etc/apt/sources.list.d/sps-l.sources >/dev/null <<'EOF'Types: debURIs: https://apt.sps-lab.orgSuites: stableComponents: non-freeArchitectures: amd64Signed-By: /etc/apt/keyrings/sps-l-archive-keyring.ascEOFThen install, and from that point on upgrade with the rest of the system:
sudo apt updatesudo apt install stepssRun it with stepss, or from the Science section of the applications menu. Remove it with sudo apt remove stepss.
STEPSS has a Scoop bucket, so it installs from the command line and every later release arrives through scoop update instead of being downloaded by hand. It is the same application as the .msi, delivered as a portable build.
It needs no administrator rights. Scoop installs into your own profile, so this is the route that works on a managed or locked-down machine where an installer cannot be run at all.
If you do not have Scoop yet, install it in a normal (not elevated) PowerShell:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserInvoke-RestMethod -Uri https://get.scoop.sh | Invoke-ExpressionThen add the bucket once and install:
scoop bucket add sps-l https://github.com/SPS-L/stepss-scoopscoop install stepssFrom that point on, upgrade with the rest of your Scoop applications:
scoop update stepssYou get STEPSS on the Start menu under Scoop Apps, an icon on your desktop, and a stepss command on your PATH. Remove it with scoop uninstall stepss, which takes both shortcuts with it.
STEPSS has a Homebrew tap, so it installs from the command line and every later release arrives through brew upgrade instead of being downloaded by hand. It is the same application as the .dmg.
It brings what the engines need. The simulation engines load the gfortran runtime and OpenBLAS from Homebrew, and this route installs both as dependencies. With the .dmg you install them yourself.
brew install --cask sps-l/stepss/stepssFrom that point on, upgrade with the rest of your Homebrew applications:
brew upgrade --cask stepssYou get STEPSS in Applications. Remove it with brew uninstall --cask stepss.
If STEPSS is already in Applications from a .dmg, move it to the Trash first: Homebrew does not overwrite an application it did not install, and stops with It seems there is already an App at '/Applications/STEPSS.app'.
Installing STEPSS in Python
Section titled “Installing STEPSS in Python”STEPSS in Python is the stepss package on PyPI. It needs Python 3 and no Java at all:
pip install stepssThat one command brings the engines with it: the package carries pre-compiled RAMSES and Helios binaries for Windows, Linux and macOS, so there is nothing to install alongside it and nothing to point it at. Trajectory plotting is built in, on top of Matplotlib, in place of the DYNGRAPH viewer the GUI launches.
Two things it does not do for you, both covered by the Python API Installation Guide: on Linux and macOS the bundled binaries link against system runtime libraries (OpenBLAS, the gfortran and OpenMP runtimes) that your machine may not already have, and plotting observables while a run proceeds is your own loop over the curve file the engine writes, rather than something the package does for you. That page also covers version pinning, which is how you fix the engine version a script runs against.
Installing a Fortran Toolchain
Section titled “Installing a Fortran Toolchain”Compiling a custom model produces a simulator built from the bundled URAMSES kit,
which is a gfortran build. You therefore need gfortran, GNU make and
OpenBLAS on your machine.
This applies to either edition: URAMSES links custom
models into stepss and into STEPSS GUI alike. It is the compiling that needs a
toolchain, and it is separate from writing the model in the first place, which is
CODEGEN’s job and ships only with the GUI.
Install MSYS2, or, if you installed STEPSS with Scoop
and would rather not run a second installer, scoop install msys2. Then, from an
MSYS2 shell:
pacman -S mingw-w64-x86_64-gcc-fortran mingw-w64-x86_64-openblas makeSTEPSS looks for the installation in C:\msys64, in Scoop’s applications
directory, or wherever the MSYS2_ROOT environment variable points, so the MinGW
bin directory does not have to be on the system PATH and there is nothing to
configure by hand on either route. It searches every one of those that exists
rather than stopping at the first, because scoop install msys2 leaves an MSYS2
already at C:\msys64 alone and only one of the two is likely to be the one you
ran pacman in.
Note that the Scoop bucket suggests MSYS2 rather than depending on it, so
scoop install stepss does not pull it in. That is deliberate: it is a large
download, nothing else in STEPSS needs it, and .mod files are readable only by
the gfortran release that wrote them, so installing whatever MSYS2’s rolling
repository holds on a given day would not guarantee a matching toolchain anyway.
sudo apt install gfortran make libopenblas-devInstalling STEPSS through apt offers these three as recommended packages, so on that route they are already there unless you declined them.
Installing CODEGEN Studio
Section titled “Installing CODEGEN Studio”CODEGEN Studio is the browser-based visual editor for building models: drag blocks onto a canvas, connect them, and export a DSL file instead of writing one by hand. It is its own Python package, tied to neither edition, and needs Python 3.10 or newer:
pip install stepss-cg-studiocg-studiocg-studio starts a local server and opens the editor at
http://localhost:8765. If the script is not on your PATH,
python -m cg_studio does the same thing. Browser-based here means the
interface is a web page, not that anything leaves your machine: the server is
local and so is every file it reads.
See CODEGEN Studio for the command-line options, a source install, and how to drive the editor itself.