This release includes significant, but experimental, Linux support.
While it has always been possible to use and build NSClient on Linux we now build official packages which are ready to be installed.
In addition to this there are a lot of fixes and enhancements to make running on Linux much more viable.
🐧 Experimental Linux Support
The Linux version is now complete and mirrors the Windows experience more closely than ever before.
- Unified Commands:
CheckSystemUnixhas been renamed toCheckSystem. Linux users can now use the same configuration as Windows users. - Distribution-Specific Binaries: We now provide optimized builds for Debian, and Rocky Linux (redhat).
- Scripting Parity: Full support for Python and Lua scripts is now available on Linux, including proper script-folder routing.
- Permission Improvements: Default logging on Linux is now directed to the console, allowing the agent to run without sudo when testing. Also now certificates are generated when you run
nscp web installto prevent sudo requirements when running as a service.
🛠️ Installer & Core Stability
After a series of regression tests in the 0.11.x branch, the installer has been hardened.
- Fixed Upgrade Logic: Resolved a critical issue where a DLL name change caused the WiX installer to fail or leave files missing during upgrades in some instances.
- Configuration Protection: Added safeguards to prevent the installer from overwriting or wiping existing .ini configurations during an upgrade.
- Silent Install Flags: Reintroduced and documented ALLOW_CONFIGURATION=0 for msiexec, allowing admins to deploy the MSI without touching existing config files.
🏗️ Architectural Refactoring
- Modular Codebase: Significant internal refactoring of nscapi and protobuf functions to improve long-term maintainability.
- Windows Core Cleanup: Reorganized Windows-specific code into a dedicated internal directory structure to separate it from cross-platform logic.
- Enhanced Testing: Many unit tests as well as a new Azure-based automated integration test.
⚠️ Upgrade Note for Pre-Release Users
If you are currently running any pre-release version between 0.11.9 and 0.11.20, a direct upgrade may fail due to either invalid DLLs or missing configuration.
Recommended Path: Manually uninstall the pre-release version and then perform a fresh installation of this release. Your configuration files will be preserved if you do not manually delete them.
⚠️ Upgrade Note for ALLOW_CONFIGURATION=0
If you use ALLOW_CONFIGURATION when upgrading from an old version the configuration might be deleted. This is an issue which is in the old installer and thus not possible to fix. This has however been fixed in future upgrades.
Full Changelog: 0.11.23...0.11.8