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 username now correctly obtains the nemsuser value from config.

  • [Improvement] nems-info username fallback 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 from nems-init since it was added at file creation time.

  • [Improvement] nems-info users now offers an optional variable plain which strips the human-readable text, resulting in only a number being output.

  • [Bug Fix] Livestatus join typo fixed in nems-api within nems-www. See https://github.com/NEMSLinux/nems-www/issues/1

  • [Upgrade] Nagios Core upgraded to 4.5.13.

  • [Infrastructure] Repos server upgraded.

  • [Infrastructure] Repos GPG key renewed and deployed.

  • [Upgrade] Debian Linux base system upgraded from Bookwork to Trixie.

  • [Upgrade] nems-prep updated to modern standards.

  • [Upgrade] ntp to ntpsec - a secure, hardened, and streamlined open-source implementation of the Network Time Protocol (NTP).

  • [Upgrade] libgpiod2 upgraded to libgpiod3 to make nems-scripts installable on NEMS Linux 1.8 (based on Debian Trixie).

  • [Upgrade] nrpe upgraded to 4.1.3 (final).

  • [Bug Fix] nems-plugins check_snmp now creates user scratch folder for state information. See https://github.com/NEMSLinux/nems-plugins/issues/5

  • [Improvement] nems-scripts dhtxx 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-plugins OpenJDK upgraded to version 25.

  • [Improvement] nems-plugins check_dhtxx 1.1 Added optional GPIO pin parameter ($ARG6$) and improved PHP 8 json_decode handling.

  • [Improvement] nems-plugins automatically replace obsolete plugins from monitoring-plugins-basic if we have a custom version.

  • [Improvement] apt-listchanges has been removed. Due to changes in the Trixie python stack, it causes errors, and is not required (or even desired).

  • [Upgrade] NagiosTV to 0.9.11 (NEMS Tactical Overview).

  • [Upgrade] Python now 3.13.5 but 3.9 is still installed for Adagios in an isolated folder.

  • [Improvement] nems-docs now has a nems-docs-debpack which 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-ai is 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-plugins now 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_mk Livestatus required compatibility with Trixie. Create makefile from Debian 12 and now compiles successfully.

  • [Upgrade] LuaJIT no 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] Adagios refactored 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] Monitorix used 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] NagiosTV has 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] Livestatus requires 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-init now also initializes the superadmin user in NEMS Linux 1.8’s multi-user environment.

  • [Improvement] Power Controller now uses the new NEMS multi-user environment login system.

  • [Improvement] nems-www NEMS Server Overview, NEMS System Settings Tool, NEMS Migrator updated to use new Multi-User login system and ULA.

  • [Bug Fix] nems-plugins nems_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 Manager styles fixed, role list sorted from least to most powerful role (Viewer … Superadmin).

  • [Improvement] nems-www web 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] Adagios is 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 SSO now 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 Configurator aka 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] NagVis upgraded to 1.10.6.

  • [Improvement] NagVis now integrated into NEMS ULA SSO.

  • [Upgrade] Monit upgraded to 6.0.0.

  • [Improvement] Monit is now integrated into NEMS ULA SSO. No longer accessible on port, but passes through local proxy for authentication. nems-www navigation updated to the new path.

  • [Improvement] NEMS ULA SSO will 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 SSO fixed bug in how I was detecting the user role. Now, detection is correct for non-admin roles.

  • [Improvement] NEMS Dashboard Donate 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] glancesweb was not loading in NEMS Linux 1.8. Moved to venv (/opt/nems-venv), removed deprecated hddtemp and activated modern sensors.

  • [Improvement] nems-init now 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] Cockpit has 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-www NEMS 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-config set WiFi country to US to correctly remove MOTDD warning message about WiFi being disabled.

  • [Improvement] nems-migrator-data modified 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-plugins was storing plugins owned by the nemsadmin user, who only exists at build time. Corrected to root user.

  • [Improvement] nems-www multiple modifications to navigation to ensure apps displayed on menu match the apps available to user based on their role in ULA.

  • [Improvement] Nagios Core is now connected to NEMS ULA SSO and displays the correct user, no longer prompting for htpasswd.

  • [Improvement] nems-migrator-data MOTD 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_ping now 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 Store Spring 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 Configurator now defaults check_ping and check-host-alive to IPv4.

  • [Improvement] MOTD the 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_cert now checks the state of a SSL certificate deployed on a server as per https://github.com/NEMSLinux/nems-plugins/issues/17

  • [Bug Fix] pnp4nagios was 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] pnp4nagios file processing of perfdata configured in NEMS Nconf and pushed upstream. Nagios configuration updated to run perfdata every 15 minutes.

  • [Deprecation] nagiosgraph has 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] Cockpit added sscg to silence a certificate helper error in systemd.

  • [Bug Fix] Cockpit adjusted 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] Glances rewrote the systemd service to ensure glancesweb waits until the network is ready before attempting to load.

  • [Improvement] smartmontools will 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.d NEMS configuration had incorrect ownership and filename. Fixed.

  • [Improvement] nems-cert (which generates SSL and SSH certificates) now runs at first boot rather than during nems-init process. 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 SSO now 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] PHP memory 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-www NEMS 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-www now 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-www no 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-update update suppresses pip error 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-init restarts the rpimonitor daemon 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-cert would not detect newer Raspberry Pi models correctly so would not restart the rpimonitor daemon after installing the new certificate.

  • [Improvement] nems-cert added the –no-restart option to allow preventing the restart of services following new certificate creation (would hang first-run cert creation).

  • [Improvement] nems-scripts console screen will no longer suggest connecting via SSH to initialize NEMS Linux since this is now done through the browser.

  • [Improvement] nems-update ensure nconf can be updated despite the folder not being owned by the root user.

  • [Bug Fix] nems-admin patched 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-www now 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-www Monitorix 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-www now 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-detect now recognizes ODROID-N2 4GB reliably.

  • [Improvement] nems-admin Updated system identification files (os-release, issue, issue.net) to NEMS Linux branding.

  • [Improvement] nems-init now notifies user of new web interface if executed via the CLI.

  • [Improvement] glances service hs been disabled in favor of glancesweb on future builds. Impacts glances functionality on ODROID-N2.

  • [Improvement] nems-api (a component of nems-www) has been enhanced to amalgamate nems-api and the legacy nagios-api into a single, unified and modern RESTful API service.