NEMS Linux 1.8 Changelogs (2026-Present)
NEMS Linux 1.8 is the currently-supported version, introducing significant enterprise-focused features. NEMS Linux 1.8 is built to be the most cohesive Nagios Core appliance yet, with an improved UX and industry compliant focus.
Key Development Features
Web-Based *nems-init*: Initialization has been modernized into a clean web interface. No more need to enter the CLI.
Comprehensive Single Sign-On (SSO) with User-Level Access (ULA): Full SSO integration across Nagios Core, Adagios, Monit and more, all powered by a brand new NEMS ULA system. Adagios now recognizes your actual username through the SSO account instead of defaulting to an anonymous user.
NEMS User Manager: Includes integrated role access (e.g., Operator+ access for Adagios, Admin-only access for Cockpit). This is huge for industry compliance, and the cohesiveness it provides between multiple applications provides a refined user experience.
Backend Modernization: Revived and fixed the Glances web frontend, activated PNP4Nagios, integrated new checks (like check_ssl_cert), and patched core components for PHP 8.4 compatibility.
Fine-Tuned Details: Modernized MOTD, optimized log rotations, and fine-tuned system permissions across the entire system.
Key Dates
July 20 - August 3, 2026 - NEMS Linux 1.8 was the primary focus of the 3rd annual NEMS Developer Lockdown. The normally 1-week-long event was extended for a second week to ensure the successful release of NEMS Linux 1.8.
August 16, 2026 - NEMS Linux 1.8 SOHO for Raspberry Pi released to Patrons.
September 1, 2026 - NEMS Linux 1.8 SOHO for Raspberry Pi released to public. NEMS Linux 1.8 Enterprise released (OVA, VHD, QCOW2).
Changelogs
[Security] nemsadmin user no longer supports passwordless login. See https://github.com/NEMSLinux/nems-scripts/issues/6
[New Feature] check_rpi_watchdog - Monitor state of Raspberry Pi’s built-in watchdog. See https://github.com/NEMSLinux/nems-admin/issues/19
[Bug Fix]
nems-info usernamenow correctly obtains the nemsuser value from config.[Improvement]
nems-info usernamefallback to htpasswd now restricts result to first username since NEMS Linux 1.8 introduces multi-user support. The first user in the htpasswd will be the nemsuser fromnems-initsince it was added at file creation time.[Improvement]
nems-info usersnow offers an optional variableplainwhich strips the human-readable text, resulting in only a number being output.[Bug Fix] Livestatus join typo fixed in
nems-apiwithinnems-www. See https://github.com/NEMSLinux/nems-www/issues/1[Upgrade]
Nagios Coreupgraded to 4.5.13.[Infrastructure]
Reposserver upgraded.[Infrastructure]
ReposGPG key renewed and deployed.[Upgrade]
DebianLinux base system upgraded from Bookwork to Trixie.[Upgrade]
nems-prepupdated to modern standards.[Upgrade]
ntptontpsec- a secure, hardened, and streamlined open-source implementation of the Network Time Protocol (NTP).[Upgrade]
libgpiod2upgraded tolibgpiod3to makenems-scriptsinstallable on NEMS Linux 1.8 (based on Debian Trixie).[Upgrade]
nrpeupgraded to 4.1.3 (final).[Bug Fix]
nems-pluginscheck_snmp now creates user scratch folder for state information. See https://github.com/NEMSLinux/nems-plugins/issues/5[Improvement]
nems-scriptsdhtxx 2.1 fixes JSON output on retries (was outputting notices to output rather than STDERR). Improved dynamic GPIO pin detection. Readied script for updates to check_dhtxx.[Upgrade]
nems-pluginsOpenJDK upgraded to version 25.[Improvement]
nems-pluginscheck_dhtxx 1.1 Added optional GPIO pin parameter ($ARG6$) and improved PHP 8 json_decode handling.[Improvement]
nems-pluginsautomatically replace obsolete plugins from monitoring-plugins-basic if we have a custom version.[Improvement]
apt-listchangeshas been removed. Due to changes in the Trixie python stack, it causes errors, and is not required (or even desired).[Upgrade]
NagiosTVto 0.9.11 (NEMS Tactical Overview).[Upgrade]
Pythonnow 3.13.5 but 3.9 is still installed for Adagios in an isolated folder.[Improvement]
nems-docsnow has anems-docs-debpackwhich makes nems-docs installable via apt. This is important as the new nems-ai application uses the NEMS documentation as its source of truth for NEMS information.[New Feature]
nems-aiis a proof-of-concept, entirely optional (you have to install it) application that allows chat-style queries against NEMS documentation and general knowledge via a locally-running AI engine, with no external servers utilized. Private, compliant, and potentially useful in time.[Bug Fix]
nems-pluginsnow creates a venv at /opt/nems-venv for pywbem and check_esxi_* since pywbem was conflicting with deb package causing build to fail at 052.[Upgrade]
check_mkLivestatus required compatibility with Trixie. Create makefile from Debian 12 and now compiles successfully.[Upgrade]
LuaJITno longer offers tarbal packages. Upgrade from 2.1.0-beta3 to current build (2.1.1784580905 at time of development). Now achieving build level 161.[Upgrade]
Adagiosrefactored to use the new nems-venv Python 3.9 environment.[Upgrade] With Nagios Core being upgraded to 4.5.13, combined with the lack of a Debian 13 makefile in the last working version, mk-livestatus could no longer be compiled against NEMS Linux 1.8. So I wrote a patch into the installer for both Nagios (052) to store the source and headers in a persistent location, and the check_mk build script (055) to use those headers to patch the source before compiling. Now, Checkmk Livestatus is compatible with modern Nagios, now and in future.
[Bug Fix]
Python(038) hold back buildpackages to version 82 due to removal of pkg_resources, which is still required by Adagios. Rework the Adagios build script (180) to install needed packages.[Bug Fix]
Monitorixused the old xfonts-terminus font, which is broken on RRDTool in NEMS Linux 1.8 (or Trixie for that matter). Replaced with compatible and working newer package fonts-terminus and now graphs appear correctly.[Improvement]
NagiosTVhas been held back to 0.9.3 to correct a host compatibility issue with NEMS Linux 1.8. Will work with the developer to correct in later issues. Also added status section to show current status at a glance on NEMS Tactical Overview.[Bug Fix]
Livestatusrequires libboost to compile. Ensure it is installed prior to building from source. This gets us past Build Level 055 on a vanilla build.[New Feature]
nems-initnow also initializes the superadmin user in NEMS Linux 1.8’s multi-user environment.[Improvement]
Power Controllernow uses the new NEMS multi-user environment login system.[Improvement]
nems-wwwNEMS Server Overview, NEMS System Settings Tool, NEMS Migrator updated to use new Multi-User login system and ULA.[Bug Fix]
nems-pluginsnems_sendmail_host and nems_sendmail_service reworked for PHP 8 compatibility, improve declarations to prevent notices, and a typo that caused the temp file to never be deleted.[Improvement]
NEMS User Managerstyles fixed, role list sorted from least to most powerful role (Viewer … Superadmin).[Improvement]
nems-wwwweb UI navigation is now structured around ULA, only showing what the user has access to. Integrate SSO to tie third-party applications into NEMS ULA.[Improvement]
Adagiosis now tied into the NEMS ULA system, so once a user is logged in to NEMS Dashboard, they can open Adagios. If a user tries to access Adagios who doesn’t have sufficient privileges, access will be denied and if a logged out user tries to open Adagios (by URL; they won’t see it on the nav based on previous updates), they will be redirected to the login form in NEMS Dashboard.[Improvement]
NEMS SSOnow passes the logged-in username to Adagios and Adagios now uses that header to set the username of the user. In effect, this means acknowledgements being submitted by “anonymous” is now a thing of the past: the logged in username will be used instead.[Improvement]
NEMS Configuratoraka NConf is now tied into the NEMS ULA with the SSO connector. This means a user must be logged in with an appropriate role to access NConf. As part of this, NConf is no longer a symlink in nems-www but rather is contained within its own Apache conf. I also hardened security a little by blocking direct access to the config folder, which may contain packaged configs.[Upgrade]
NagVisupgraded to 1.10.6.[Improvement]
NagVisnow integrated into NEMS ULA SSO.[Upgrade]
Monitupgraded to 6.0.0.[Improvement]
Monitis now integrated into NEMS ULA SSO. No longer accessible on port, but passes through local proxy for authentication.nems-wwwnavigation updated to the new path.[Improvement]
NEMS ULA SSOwill redirect the user to a friendly error message if they are logged in but have insufficient access to open the page requested.[Bug Fix]
NEMS ULA SSOfixed bug in how I was detecting the user role. Now, detection is correct for non-admin roles.[Improvement]
NEMS DashboardDonate link no longer offers a default value, making it more clear that the user can set the value. Moved away from old Category5 donation URL and integrate into nemslinux.com[Bug Fix]
glanceswebwas not loading in NEMS Linux 1.8. Moved to venv (/opt/nems-venv), removed deprecated hddtemp and activated modern sensors.[Improvement]
nems-initnow uses Whiptail for all prompts, providing a more polished overall experience. Laid the CLI groundwork for a headless mode initialization which will tie in to a new web-based nems-init process. Updated to conform with compliance standards set by the new NEMS ULA system, including minimum password length, and a dialogue promoting the use of a role account.[Improvement]
Cockpithas been placed behind the local proxy and is passing through NEMS ULA. While Cockpit still requires the user login, only users who are already signed in to NEMS Linux as an admin+ user can open it.[Improvement]
nems-wwwNEMS Web Init is fully functional and tied to NEMS ULA. This was required in order to harden Cockpit, so the timing was right to create such a system. Now, users never need to enter the terminal.[Improvement]
raspi-configset WiFi country to US to correctly remove MOTDD warning message about WiFi being disabled.[Improvement]
nems-migrator-datamodified the MOTD (which is shown when connecting to NEMS Server via SSH) to support NEMS Linux 1.8. Added modernizations (memory and disk usage bar) to freshen it up for 1.8.[Bug Fix]
nems-pluginswas storing plugins owned by the nemsadmin user, who only exists at build time. Corrected to root user.[Improvement]
nems-wwwmultiple modifications to navigation to ensure apps displayed on menu match the apps available to user based on their role in ULA.[Improvement]
Nagios Coreis now connected to NEMS ULA SSO and displays the correct user, no longer prompting for htpasswd.[Improvement]
nems-migrator-dataMOTD first displayed the Linux PAM module’s “Last Login” date and time, which has terrible formatting and looks awful on close inspection. Thanks to MarshMan for pointing this out during Developer Lockdown v3! I disabled the PAM Last Login print line, and replaced it with a custom Last Login output directly from the motd.tcl file.[New Feature]
check_arp_pingnow added as Check Command and new check-host-alive-arp added, as per https://github.com/NEMSLinux/nems-plugins/issues/21[Bug Fix]
NEMS Merch StoreSpring severed the subdomain connection without warning so the NEMS Merch Store link was pointing to some random dude’s store. I created a redirect at the DNS level to point NEMS Merch Store visitors to the Spring store URL.[Improvement]
NEMS Configuratornow defaults check_ping and check-host-alive to IPv4.[Improvement]
MOTDthe custom Last Login was just too finicky. I decided to pull it; it’s more trouble than it’s worth. Now, the MOTD looks perfect.[New Feature]
check_ssl_certnow checks the state of a SSL certificate deployed on a server as per https://github.com/NEMSLinux/nems-plugins/issues/17[Bug Fix]
pnp4nagioswas abandoned by the original creator, and the old version does not work in NEMS Linux 1.8. Rebased to new maintainers and rewrote the installer to compile this tool correctly (to fix NagiosGraph).[Improvement]
pnp4nagiosfile processing of perfdata configured in NEMS Nconf and pushed upstream. Nagios configuration updated to run perfdata every 15 minutes.[Deprecation]
nagiosgraphhas been dead since 2014. Decided to remove it from NEMS Linux, replaced with pnp4nagios, which was also abandoned but has been picked up by another developer and is back in active development.[Bug Fix]
Cockpitadded sscg to silence a certificate helper error in systemd.[Bug Fix]
Cockpitadjusted the proxy configuration to allow connection to /cockpit/ regardless of the IP address of the NEMS Server. Fixed websocket passthru via proxy and error in rewrite.[Bug Fix]
Glancesrewrote the systemd service to ensure glancesweb waits until the network is ready before attempting to load.[Improvement]
smartmontoolswill be disabled out of the box on Raspberry Pi since it’s very likely the drive in use is not SMART compatible. User can still activate the service if a compatible drive is connected.[Bug Fix]
logrotate.dNEMS configuration had incorrect ownership and filename. Fixed.[Improvement]
nems-cert(which generates SSL and SSH certificates) now runs at first boot rather than duringnems-initprocess. This ensures all NEMS Servers have a unique certificate, but doesn’t break the browser’s trust relationship during browser-based Initialization.[Bug Fix]
NEMS SSOnow breaks out of frames. If a session timed out while within a frame-based app (such as Cockpit), the login form would load inside the frame rather than closing the app. This fixes that behavior.[Improvement]
PHPmemory limit defaults to 128 MB, which can result in problems for NEMS Tactical Overview when displaying status history on a particularly active NEMS Server. Increased this limit to 512 MB.[Improvement]
nems-wwwNEMS SST custom wallpaper upload size limit raised to 20M. Was previously pointing to the wrong php.ini so will have been PHP’s default.[Improvement]
nems-wwwnow hides the Reporting -> Modern / Legacy header for any ULA role level that doesn’t have access to the legacy tools. Also NEMS Mobile UI is now hidden from users who are not at least an Operator.[Improvement]
nems-wwwno longer generates new snakeoil certificate on update, resulting in user having to accept new self-signed cert every time the package is updated.[Improvement]
nems-updateupdate suppressespiperror on NEMS Linux 1.8 (pip is now installed and maintained via repository). Ensure packages are only upgraded (not installed if removed). If NEMS AI is installed, make sure it’s up-to-date; if not, skip it.[Bug Fix]
nems-initrestarts therpimonitordaemon after changing the username. Previously, the daemon would continue running as the nemsadmin user until the next reboot, which made it impossible to fully purge the temporary nemsadmin user until after a reboot (not a security risk; the account was disabled just not deleted).[Bug Fix]
nems-certwould not detect newer Raspberry Pi models correctly so would not restart the rpimonitor daemon after installing the new certificate.[Improvement]
nems-certadded the –no-restart option to allow preventing the restart of services following new certificate creation (would hang first-run cert creation).[Improvement]
nems-scriptsconsole screen will no longer suggest connecting via SSH to initialize NEMS Linux since this is now done through the browser.[Improvement]
nems-updateensure nconf can be updated despite the folder not being owned by the root user.[Bug Fix]
nems-adminpatched the font subsystem for RRD since bitmaps are deprecated in modern systems like NEMS Linux 1.8. This fixes the tofu boxes in RRD-based apps such as Monitorix and PNP4Nagios in NEMS Linux Enterprise Edition.[Improvement]
nems-wwwnow enforces https. This improves the user experience when logging in, ensuring the logged-in user session is always associated with the secure browser session.[Improvement]
nems-wwwMonitorix now displays output even if the graphs are not yet finished generating: It will show the ones that are ready first rather than holding up the entire lot for 1 year graphs.[Improvement]
nems-wwwnow loads the user’s set timezone as configured during NEMS Initialization. This localizes the timestamps for Monitorix and any other items within NEMS Dashboard that call datestamps (such as NEMS Migrator).[Improvement]
hw-detectnow recognizes ODROID-N2 4GB reliably.[Improvement]
nems-adminUpdated system identification files (os-release, issue, issue.net) to NEMS Linux branding.[Improvement]
nems-initnow notifies user of new web interface if executed via the CLI.[Improvement]
glancesservice hs been disabled in favor ofglanceswebon future builds. Impacts glances functionality on ODROID-N2.[Improvement]
nems-api(a component ofnems-www) has been enhanced to amalgamatenems-apiand the legacynagios-apiinto a single, unified and modern RESTful API service.