Skip to content

v2.1.0

Latest

Choose a tag to compare

@maxsteeel maxsteeel released this 06 Oct 07:31
· 30 commits to master since this release

NoMount v2.1.0 is here!馃帀

This release fixes many bugs and issues, improves stability, and adds small new features, so it is highly recommended to update both the kernel and the module.
(If you use LKM mode, you can simply update the module without any issues)

Small Changelog:

There are too many changes made in this release, so I will only highlight the most relevant and important ones here:

  • kernel/:
    • The kernel directory is now strictly licensed under GPLv2 to fully comply with Linux kernel module standards.
    • Automated the build system to dynamically inject the Git commit count into the driver version (welcome to the 21-500 milestone!).
    • Patched severe Use-After-Free (UAF), double-free races, and NULL pointer dereferences during lockless inode eviction and RCU path walks.
    • Replaced SRCU with lockless RCU copy-and-drop, implemented lockless asynchronous garbage collection for hijacked dir_nodes, and optimized binary search collision handling.
    • Implemented toggleable isolated process blocking to exclude / unexclude isolated UID's (99000-99999) to NoMount rules.
    • Eliminated memory leaks in directory hijacking, dropped heavy slab caches, and aligned cachelines for compact rule structures.
    • Fixed a bug with SELinux and OverlayFS in kernels 4.14 and 4.19 thanks for xattr __get wrapper, that was missing (thanks to #86 for this fix!)
    • Refactor the rule management and directory proxies (thanks to #88 for this!)
  • webui/:
    • Added and fully completed translations for Bengali, Japanese, Turkish, Arabic (with full RTL layout support), Chinese, Russian, Vietnamese, and Indonesian (thanks to all the people who took their time to translate NoMount directly into their language! <3)
    • Implemented SPA (Single Page Application) history state management to support native Android back-button navigation fluidly.
    • Migrated exclusions storage entirely to JSON. Redesigned the UI with multi-select batching, MD3 dialogs, and persistent fast-caching to prevent DOM thrashing.
    • Reworked the appearance subsystem to properly adapt Material You, implement Custom Colors to adapt NoMount WebUI to your desired style and add theme overrides like Light, Dark and AMOLED. (still on WIP!)
    • Small redesigns on top of MD3 designs!
  • module/:
    • Improved root manager detection and added official support for APatch insmod. Rewrite lkmloader into a native binary.
    • Added native support for trusted.overlay.opaque whiteouts.
    • Limited xargs batch size to dynamically avoid ARG_MAX truncations and normalized symlinked system partitions to prevent rule duplication.
  • userspace/:
    • Optimized the CLI to batch list output writes and encode rule paths directly into payloads for faster userspace-to-kernel communication.
    • Improved usage/help outputs, compacted arguments into a fixed workspace, and added strict validation for batched command inputs.
    • Exposed the new toggleable isolated process blocking feature through the nm CLI tool.

and a lot of other misc changes :)

New Contributors

Full Changelog: v2.0.0...v2.1.0