Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Plugins] Menu Manager, Docker Template Fields, Disk Location: Next, Bulk Unpin, Log Health, Editable File Types, Plugin Parking, and maintained forks of Active Directory Extras and SCSI Enclosure Monitor Extended

Featured Replies

<Updated 9/26/26 02:55PM CT>

Hi all,

Over the last few weeks I've been building and maintaining a small set of Unraid plugins, and I wanted to put them all in one place. Some are new, some are continuations of plugins whose original authors have gone quiet, and some are contributions back to other people's projects. I've tried to credit everyone whose work these build on.

Everything is on GitHub under joshmans. The Community Apps templates live in joshmans/unraid-tools, so all of them should show up in CA automatically as it re-crawls the repo. Until then, install each one manually: go to Plugins → Install Plugin and paste the .plg link listed under it.

Testing: everything here has been tested on Unraid 7.2 and newer, including 7.3 and 7.4.0-beta.2 and 3. If you see something different on your version, please tell me.

Issues are welcome on the GitHub repos. Please include your Unraid version.


New plugins

Menu Manager

Repo: https://github.com/joshmans/unraid-menumanager Install: https://raw.githubusercontent.com/joshmans/unraid-menumanager/main/menumanager.plg (Unraid 7.2+)

Choose where every icon on the Tools and Settings pages lives.

The idea came from a simple annoyance: some plugins' settings tiles genuinely fit better somewhere else, and there was no way to move them.

  • Drag tiles between categories, reorder them, rename categories, create your own.

  • Move a single tile, or a whole category, between Tools and Settings. Some plugins land in one when they belong in the other.

  • Hide what you never use, and optionally show everything on one unified page in the main menu (called Switchboard by default, renameable) with a filter box.

It's designed to be fully reversible. It only rewrites the Menu= line of a page header and remembers the original, so Reset to defaults puts every file back byte for byte. Nothing is deleted. Tested on 7.2 and newer (7.3 and 7.4.0-beta.2 included) through install, uninstall, reset, reinstall and a reboot. Hiding the built-in Tools/Settings menus has had the least real-world use, so read the "If something goes wrong" section of the README before trying that one.

Docker Template Fields

Repo: https://github.com/joshmans/unraid-docker-template-fields Install: https://raw.githubusercontent.com/joshmans/unraid-docker-template-fields/main/unraid-docker-template-fields.plg (Unraid 7.2+)

Adds a drag handle and an on/off switch to every Path, Port, Variable, Label and Device row on the Add/Edit Container page, including the Community Apps install popup.

This started from two feature requests on the Unraid product board, both of which I'd also wanted for a while: an enable/disable toggle for Dockerman template fields and drag and drop to reorder Dockerman template fields. If you'd like to see either land natively in Unraid, upvote them there.

The problem it solves: to test a container without a variable or port mapping, Unraid makes you delete the field, apply, then re-type it later. With this you switch it off, apply, and switch it back on. It keeps its value and stays in the template, but is left out of the container while off. Drag to reorder if you want the fields you touch most at the top.

How it works, briefly: a disabled field is saved as Type="Disabled:Port" (etc.). Unraid only builds docker create from Path/Port/Label/Variable/Device entries, so a disabled entry is ignored. No Unraid file is patched. It's all done in the browser on that one page.

Tested on Unraid 7.2, 7.3 and 7.4.0-beta.2, including Community Apps updates and "Update all" with a field switched off. Drag and drop is mouse-only, on touch devices there are arrow-key controls on the grip.

Disk Location: Next

Repo: https://github.com/joshmans/unraid-disklocation-next Install: https://raw.githubusercontent.com/joshmans/unraid-disklocation-next/master/plugin/unraid-disklocation-next.plg (Unraid 7.2+)

A ground-up rewrite of the Disk Location idea (see below) as a TypeScript/Node.js service that talks to Unraid's built-in unraid-api GraphQL interface. It's a clean-room rewrite with no code shared with the PHP plugin.

  • Tray/bay map modeled as physical groups (front cage, rear cage, PCIe carrier card), with swappable SVG tray skins and NVMe carrier shells you can add to without touching code.

  • Per-bay SMART LED, drive-type icon, array role, capacity and model/logo.

  • Locate button that blinks the real drive's activity LED.

  • SMART history charts (temperature, power-on hours, reallocated/pending sectors).

  • Import of your assignments from the classic Disk Location plugin.

  • It never wakes a spun-down drive just to sample SMART.

It needs an unraid-api API key with read access.

CA Bulk Unpin

Repo: https://github.com/joshmans/ca.bulk.unpin Install: https://raw.githubusercontent.com/joshmans/ca.bulk.unpin/main/ca.bulk.unpin.plg

Adds Hide Installed and Unpin Installed Apps controls to the Pinned Apps view in Community Applications, so you can clear out pinned apps you've since installed. It doesn't change Community Applications' logic; it reads the page and clicks the existing unpin controls. It works with stock Community Applications and with ghzgod's Modern App Store view, and detects which one is active.

Log Health

Repo: https://github.com/joshmans/unraid-log-health Install: https://raw.githubusercontent.com/joshmans/unraid-log-health/main/unraid-log-health.plg (Unraid 7.2+)

Finds the logs that are spamming and tells you who is behind it: the plugin, program or container responsible for a message repeated thousands of times, named with the file and line where it came from when it's PHP. It also shows every Docker container's log size, growth and rotation limit.

The idea came out of auditing my own box's logs and finding one plugin's warning had written 146,000 lines to /var/log/phplog without anyone noticing.

  • Reads PHP, syslog, Docker container logs and other plugin logs on a schedule you choose in plain words (every 5 minutes to once a day, default every 15 minutes), and lists what's repeating too fast, worst first.

  • Groups a multi-line incident (a crash-loop traceback) into one finding instead of dozens.

  • Mute anything you already know about; unmute it any time.

It only reads: it never changes a log, a Docker setting or a file outside its own settings, and it makes no network connections. Tested through install, upgrade, uninstall and reinstall on Unraid 7.4.0-beta.2, with a scheduled scan started by Unraid's own cron.

Editable File Types

Repo: https://github.com/joshmans/unraid-text-editor-extensions Install: https://raw.githubusercontent.com/joshmans/unraid-text-editor-extensions/main/text.editor.extensions.plg (should work on Unraid 7.0+, tested on 7.2+)

Choose which file extensions Unraid's File Manager opens in its text editor. The File Manager only opens a clicked file in the in-browser editor when its extension is listed in /boot/config/editor.cfg; everything else downloads. This gives that file a settings page under Settings → Utilities → Editable File Types.

  • Checkboxes for common text formats (json, yaml, toml, md, env, log and more), and a box for any others.

  • A backup before every save, with Undo Last Change and Restore Original (the file exactly as it was before the plugin touched it).

  • A raw editor showing the exact contents of the file.

It only reads and writes that one file, runs nothing in the background and makes no network connections. Saving from its page has been used on Unraid 7.4.0-beta.2.

Plugin Parking

Repo: https://github.com/joshmans/unraid-plugin-parking Install: https://raw.githubusercontent.com/joshmans/unraid-plugin-parking/main/plugin-parking.plg (should work on Unraid 7.0+, tested on 7.4.0-beta.3)

Keep plugins and packages installed, but not loaded at boot, and load them on demand. Unraid installs every plugin and every package in /boot/extra one after another at each boot, before the web UI and the array start, and many of them are tools you only use now and then. Parking keeps them one click away without having to remember what they were called in Community Apps. It adds a Parking tab and a Boot Packages tab to the Plugins page, and a Park button on each row of the Installed Plugins list.

  • Shows what each plugin cost at boot (read from the syslog) and what it does on its own: scheduled jobs, a background service, array start/stop hooks. That tells you a tool you use now and then from something that has to stay loaded.

  • Load now checks the plugin's update URL first and lets you install the latest version or the cached one, then keep it parked or load it at every boot again.

  • Boot Packages does the same for the packages in /boot/extra (where un-get keeps what it installs), including which packages need which. Parking one offers to park what it needs too, after checking that nothing else needs them.

  • Removing Plugin Parking asks whether to move everything parked back to the normal locations or keep it parked.

Parking only moves a file out of the folder Unraid loads at boot; settings and everything else stay where they were. The dependency and "used by" hints are best effort, so "nothing found" is a hint rather than a guarantee. The operations were exercised on a real server on Unraid 7.4.0-beta.3.


Plugins I'm maintaining or contributing to

These started as other people's work. I'm not claiming the originals, and all credit for them goes to their authors.

Active Directory Extras (continuation of dlandon's active.directory)

Repo: https://github.com/joshmans/unraid-active-directory-extras Install: https://raw.githubusercontent.com/joshmans/unraid-active-directory-extras/master/active.directory.plg

This is a continuation of Dan Landon's (dlandon) active.directory plugin, which I've forked and now actively maintain. Dan's original repository is archived on GitHub and development ceased around February of 2025 - so I picked it up to keep it working, and improving, on current Unraid releases. It is not directly affiliated with Dan, but I do have his blessing to continue the work on it and maintain it.

What it does (unchanged from the original): tune Samba/winbind idmap behavior under Settings → SMB, and persist winbind's TDB databases across reboots.

What I've added or fixed since taking it over:

  • Live AD join status via net ads testjoin, replacing Unraid's often-inaccurate indicator.

  • Rejoin / Leave Domain controls that don't stop the array or restart Samba for a plain rejoin.

  • Per-file TDB backup retention, atomic staging and tdbtool check validation before restore.

  • Range validation for the idmap fields.

  • The account password is passed to net ads over stdin instead of the command line.

  • SHA-256 instead of MD5 for package verification.

Disk Location (contributions to Ole-Henrik Jakobsen's plugin)

Upstream: https://github.com/olehj/disklocation (install from there or Community Apps as usual)

Disk Location is olehj's plugin, and the "Next" rewrite above exists because of it. I've sent several improvements upstream as pull requests, which are open on his repo for him to take or leave:

  • Fix for the broken pkill quoting in the Locate "stop" command, JSON export, PHP lint CI and shell-escaping hardening.

  • Mobile-friendly tray map.

  • Drive-type icons and an optional manufacturer-logo framework (no logos are shipped, see the trademark note in the repo).

  • SMART history storage and a Trends tab with Chart.js graphs.

  • A multi-LUN / multipath device dedup fix.

SCSI Enclosure Monitor Extended (fork of desertwitch's sesmon-unRAID)

Repo: https://github.com/joshmans/unraid-sesmon-extended Install: https://raw.githubusercontent.com/joshmans/unraid-sesmon-extended/main/sesmon-ext.plg (Unraid 7.0+ declared, see testing note)

If you have a disk shelf / JBOD, this monitors it and raises an Unraid notification when a fan or power supply fails, a temperature climbs, or a drive bay reports a fault. It's a fork of desertwitch's plugin for his sesmon daemon, which does the actual monitoring. I'm not affiliated with him, and all credit for the daemon and the original plugin goes to him. It can't be installed alongside the original (the installer stops and tells you to remove that one first).

The original is configured by hand-editing YAML with your enclosure's SAS address, and its default config ships an enabled example with a made-up address, so a fresh install with the service switched on fails to start. This fork is about not having to do that:

  • Enclosures page: it lists the enclosures found on your server; you tick the ones to monitor. Poll/back-off/notification settings are dropdowns and checkboxes that generate the config. The raw files stay editable under Advanced (checked with sesmon check before saving, with a backup and one-click restore).

  • Problems shown where they are: an address that no longer resolves is flagged next to the device with a one-click choice among the enclosures found. Send test notification checks that alerts actually reach you.

  • Friendly Enclosure Devices view: names ("Drive bay 10"), plain-language status with tooltips, readings with units (°C or °F). The original raw view is one click away.

  • Bays named by their drive: each bay shows the Unraid disk (linked to its page), model, size and temperature. Temperatures come from Unraid's own state file, so it never wakes a spun-down disk.

  • Dual-actuator drives (e.g. Seagate ST14000NM0001) show up as two disks under one bay, and it says so.

  • HBA virtual enclosure (Broadcom "VirtualSES") is shown as the HBA's ports with the drive on each, which ports are cabled to a shelf, and the HBA firmware version.

  • Alerts name the disks: the notification says which disks are in the affected bay, including a drive that has just dropped off the bus.

Limits worth knowing: SES doesn't carry the physical layout of a shelf, so this lists bays but doesn't draw them. For a tray map, use Disk Location: Next above. Bay naming needs the shelf to report drive addresses (most SES-2 shelves do); without that, bays are simply listed without a drive.

Testing: tested on 7.2+, with a NetApp DS424IOM12A shelf and a Broadcom 430-16i (SAS3416) HBA. Other shelves and Unraid versions are unverified, so please tell me what you see. Please include your Unraid version and your enclosure model in issues.


Inspiration and credits

  • Disk Location: Next is a rewrite of Ole-Henrik Jakobsen's Disk Location. The tray-map and SMART-history ideas carry over; no code does. Its nginx self-healing approach (re-adding an include line when rc.nginx reload regenerates locations.conf) follows the pattern I found in the u-manager-companion plugin, and it is built on Unraid's own unraid-api.

  • Editable File Types manages the /boot/config/editor.cfg file that Unraid's own File Manager already reads. The file and its format are Unraid's; the settings page is mine.

  • Plugin Parking is my own idea, from wanting plugins and packages I only use now and then to stay installed without adding to every boot. The packages it lists in /boot/extra are the ones un-get, you as the user, or another package manager installs, un-get and other plugins are untouched.

  • CA Bulk Unpin supports ghzgod's unraid-modern-appstore view (in addition to stock Community Apps)

  • Active Directory Extras is a continuation of Dan Landon's (dlandon) active.directory, forked and actively maintained by me.

  • Menu Manager is my own idea, born from wanting to move plugin settings tiles to where they belong.

  • Docker Template Fields implements the two Unraid product-board feature requests linked above.

  • SCSI Enclosure Monitor Extended is a fork of desertwitch's sesmon-unRAID, which wraps his sesmon daemon. The monitoring itself is his work; the configuration pages, bay naming and alert changes are mine.

  • Log Health is my own idea too, born out of auditing my own box's logs for this post and finding a plugin quietly spamming /var/log/phplog.

Menu Manager and Docker Template Fields both work by reading Unraid's own webGUI source (PageBuilder.php, CreateDocker.php) rather than guessing, and their tests run against copies of that code.

How these were built: these plugins were developed with the help of Claude and tested by me on my own server on Unraid 7.2 and newer, including 7.3 and 7.4.0-beta.2, and beta-3. Most of the code was also audited by CodeRabbit.


Feedback is welcome here, but for support or feature requests, please open a github issue on the respective repo. Thanks to everyone whose work these build on.

-shwa87

Edited by shwa87
Update Title, add more plugins to the post

  • shwa87 changed the title to [Plugins] Menu Manager, Docker Template Fields, Disk Location: Next, Bulk Unpin, Log Health, Editable File Types, Plugin Parking, and maintained forks of Active Directory Extras and SCSI Enclosure Monitor Extended

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.