A modern Linux desktop application for ClamAV antivirus
Built with PyGObject, GTK4, and Adwaita for a native GNOME appearance
Features • Screenshots • Installation • Documentation
ClamUI provides a comprehensive set of features designed to make antivirus protection on Linux both powerful and user-friendly.
|
|
|
|
flatpak install flathub io.github.linx_systems.ClamUI
flatpak run io.github.linx_systems.ClamUIgit clone https://github.com/linx-systems/clamui.git
cd clamui
./scripts/local-run.shOn Ubuntu/Pop!_OS 22.04, use ./scripts/local-run.sh instead of raw uv sync. Newer
PyGObject releases require GLib 2.80+, while 22.04 ships GLib 2.72.
More Installation Options: See the Installation Guide for .deb packages and system-wide installation
New users: Start with the Getting Started Guide for a step-by-step introduction
- Launch ClamUI from your application menu or terminal
- Select a file or folder to scan
- Click "Scan" to start the antivirus scan
- View results and take action on any threats detected
ClamUI includes a full CLI for headless use. Run clamui without arguments to launch the GUI, or use subcommands:
# Launch the graphical interface
clamui
# Scan files or directories
clamui scan /path/to/file
clamui scan /home/user/Downloads --profile "Quick Scan" --quarantine --json
# Manage quarantined files
clamui quarantine list
clamui quarantine restore 42
clamui quarantine delete 42
# Manage scan profiles
clamui profile list
clamui profile show "Full Scan"
clamui profile export "Quick Scan" backup.json
clamui profile import backup.json
# View ClamAV and ClamUI status
clamui status
clamui status --json
# View scan history
clamui history
clamui history --limit 50 --type scan --json
# Get help
clamui help
clamui help scanAll subcommands support --json for scripting. Exit codes: 0 = clean/success, 1 = threats found, 2 = error.
Detailed Instructions: See the User Guide
ClamUI stores user preferences and can be configured through the Preferences dialog or by editing the configuration file directly.
Configuration Location: ~/.config/clamui/settings.json
| Category | Description |
|---|---|
| Scan Backend | Choose between automatic detection, daemon (clamd), or direct clamscan |
| Notifications | Control desktop notifications for scan results and updates |
| Auto-Quarantine | Automatically quarantine detected threats |
| Scheduled Scans | Configure automatic scanning with systemd or cron |
| System Tray | Enable start minimized and minimize to tray options |
| Scan Profiles | Create custom scan configurations with exclusion patterns |
| Device Scanning | Automatically scan USB drives and external storage when connected |
For complete configuration reference: See the Configuration Reference for all settings and examples
Comprehensive guides to help you get the most out of ClamUI:
| Document | Description |
|---|---|
| Getting Started | New! Quick start guide for installation, first use, and next steps |
| User Guide | Complete guide to using ClamUI features |
| Installation Guide | Flatpak, .deb, context menu, and tray setup |
| Troubleshooting Guide | Common issues and solutions |
| Development Guide | Dev environment, testing, and contributing |
| Scan Backend Guide | Backend options, performance comparison, and selection guide |
| Security Policy | Security contact and reporting |
ClamUI requires the following components to be installed on your system:
| Component | Description |
|---|---|
| ClamAV | The clamscan command-line tool (bundled in Flatpak; install separately for native packages) |
| GTK4 + libadwaita | For the graphical interface |
| Python 3.11+ | With PyGObject bindings |
Platform-specific installation: See the Installation Guide for dependency installation instructions
Contributions are welcome! Check out the Development Guide for:
- Setting up the development environment
- Running tests with coverage
- Code style guidelines
- Submitting pull requests
This project is open source. See LICENSE file for details.
Made with care for the Linux community





