Documentation
Building SEB Linux
Quick Start
git clone https://github.com/Jvr2022/seb-linux.git
cd seb-linux
./scripts/dependencies.sh # Install build dependencies
./scripts/build.sh # Configure and build
./build/bin/safe-exam-browser --version
Build Options
| Option | Description |
|---|---|
SEB_FORCE_QTWEBENGINE | Use the QtWebEngine browser engine (default) |
SEB_FORCE_WEBKITGTK | Use the WebKitGTK browser engine (fallback) |
Browser Engines
SEB Linux supports two browser engines. By default it picks the best one available on your system. You only need the dependencies for the engine you are using.
Faster Rebuilds
The build system automatically uses ccache when available, which makes repeated builds much faster after the first build. A precompiled header also speeds up compilation.
Running SEB Linux
./build/bin/safe-exam-browser
When launched, SEB will ask for administrator permission to lock down the system. This is normal and ensures the exam environment is secure.
Opening a Configuration File
./build/bin/safe-exam-browser /path/to/exam.seb
SEB can also open configuration files via sebs:// or seb:// links in a web browser.
Building an AppImage
To create a portable AppImage for distribution:
./scripts/build-release.sh 0.1.0
Continuous Integration
The project includes GitHub Actions workflows that build and test SEB Linux automatically on every change. This helps catch issues early and ensures the project stays in a working state.
Troubleshooting
Authentication Problems
If SEB fails to get permission to lock down the system, this is usually a system configuration issue. Common causes include a missing authentication agent (common on some window managers) or a missing system configuration file. Check your distribution documentation for polkit configuration.
Display Problems
Do not run SEB with sudo directly. The application handles permission elevation itself and forwards the necessary environment variables automatically.