opp-repl-overlay-builds — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited opp-repl-overlay-builds (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Overlay builds use fuse-overlayfs to create a writable layer over a read-only source tree. Builds happen in the overlay; the original source stays pristine — useful for building read-only checkouts, parallel multi-mode builds, and sandboxed runs.
(Note: compare_simulations_between_commits() uses git worktrees, not overlays — see opp-repl-comparing-simulations.)
Upstream reference: https://github.com/omnetpp/opp_repl/blob/main/doc/overlay_builds.md
fuse-overlayfs installed and user-mountable.sudo apt install fuse-overlayfs # Debian/Ubuntu sudo dnf install fuse-overlayfs # Fedora
Set overlay_name in the .opp file; builds happen in a layer named by that string:
SimulationProject( name="inet+omnetpp", root_folder=".", omnetpp_project="omnetpp", overlay_name="inet+omnetpp", # key line library_folder="src", bin_folder="bin", build_types=["dynamic library"], dynamic_libraries=["INET"], ... )
The overlay build root defaults to ~/.omnetpp/build; override globally with the OPP_BUILD_ROOT environment variable, or per-project with overlay_build_root= in the .opp (relative paths resolved against the .opp file's directory).
from opp_repl.simulation.overlay import *
list_overlays() # names of overlay layers under the root cleanup_overlays() # unmount all overlays clear_build_root() # unmount + wipe all overlay data
opp_mount / opp_unmount mount and unmount overlays from the shell (the Python API above does the same in-process):
opp_mount "~/workspace/opp/*.opp" # mount overlays for matching projects opp_unmount # unmount all (or pass a glob)
Mount overlays before entering opp_sandbox — the sandbox restricts fuse-overlayfs, so it cannot create them itself:
opp_mount "~/workspace/opp/.opp" opp_sandbox -w ~/workspace -- opp_repl --load "opp/.opp" opp_unmount
See opp-repl-sandbox for the isolation details.
sanitize) without Makefile collisions.
cleanup_overlays() andclear_build_root() are your friends; run them in CI cleanup.
fusegroup, or user_allow_other must be set in /etc/fuse.conf.
.opp files with the sameoverlay_name but different root_folder values will conflict.
opp-repl-opp-files — where overlay_name gets set.opp-repl-comparing-simulations — uses git worktrees (not overlays).opp-repl-sandbox — pre-mount overlays before bubblewrap isolation.opp-repl-opp-env-integration — alternative installation method.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.