Skip to main content
Close Search
Nitrux — #DisruptiveByDesign — Official WebsiteNitrux — #DisruptiveByDesign — Official Website
search
Menu
  • x-twitter bluesky facebook youtube github instagram telegram mastodon threads email
  • search
  • Menu
Nitrux — #DisruptiveByDesign — Official Website
  • Nitrux Core Concepts 9
    • Distribution Philosophy
    • System Architecture
      • Immutable Architecture
      • Rootless App Model
      • Aesthetic FHS
      • Init System
      • Language Stratification
      • Workspace Environment
    • Workspace Architecture
      • Workspace Compartmentalization
      • Nitrux Workspace Session Manager
  • Getting Started 20
    • System Requirements
      • Hardware Compatibility Validation Layer
      • Minimum Requirements
      • Recommended Requirements
    • Installation Guide
      • Download the ISO
        • ISO for AMD and Intel Hardware
        • ISO for NVIDIA Hardware
      • Validate the ISO
        • ISO Integrity Validation
        • ISO Authenticity Validation
      • Flashing the ISO
        • USB Flash Preflight
        • Rufus (Windows)
        • Ventoy (Windows/Linux)
        • dd (*nix)
      • Installing Nitrux
        • Nitrux Installation Process Information
        • Using Secure Boot with Nitrux
        • Automated Partitioning Options
        • Non-automated Partitioning Options
        • Full-disk Encryption in Nitrux
        • Single-booting Nitrux
        • Dual-booting Nitrux with Windows or other Linux distributions
        • Triple-booting Nitrux, Windows, and other Linux distributions
        • Report Installation Bugs
  • Workspace and UX 10
    • Workspace Applications
      • Default Software Selection
      • Workspace Settings
    • Workspace Defaults
      • greetd + QMLGreet
      • Hyprland
      • Valenz
      • Marina
      • Vicinae
      • QMLogout
      • NudgeOSD
      • Workspace Daemons
        • Default Session Daemons
  • Software Management 4
    • Graphical Software Manager (AppFinder)
    • User Application Delivery
      • NX AppHub and AppBoxes
      • Flatpak
    • Development Environments
      • Distrobox
  • Security and Privacy 6
    • Security Features
      • System Security Features
    • Security Policies
      • Identity and Access Management
      • Kernel and Memory Hardening
      • Network Security and Privacy
      • Session Hardening
      • Bluetooth Security
  • System Performance 4
    • Filesystem Optimizations
      • XFS Features in Nitrux
      • F2FS Features in Nitrux
    • System Optimizations
      • Advanced Memory Management
      • Performance and I/O
  • System Management 5
    • System Administration
      • Nitrux Update Tool System
      • NX Overlayroot
      • Nitrux GRUB Modes
    • System Configuration
      • SB Manager
      • Kernel Boot
  • Troubleshooting 21
    • FAQ
      • Is Nitrux right for me?
      • Is Nitrux eating my RAM?
      • NVIDIA Driver Information
      • Virtualizing Nitrux
      • Support for Other Desktop Environments
      • Flatpak Information
      • Energy Saving Information
      • Virtual Consoles (TTY) Information
      • GRUB Menu Information
      • KDE Wallet Information
      • NetworkManager Information
      • Backups Information
      • General Gaming Information
      • AppImage Information
      • MauiKit UI Framework Information
    • Installation Issues
      • ISO doesn’t boot or System installs, but there's no GUI
      • Can't install due to the MBR partition limit
      • Can't install due to mounted Swap partitions
      • Failure to install due to an issue with rsync error code 11
      • Failure to install GRUB on a computer with multiple storage devices or using the MBR partition table
      • Installation is successful, but user data isn't persistent
  • Resources 2
    • Tutorials
    • Get Involved

Nitrux Workspace Session Manager

2 min read

43 views

Nitrux Workspace Session Manager, a.k.a. nwsm, manages the Hyprland graphical session and OpenRC user services.

Session Management

  • Wayland readiness → Waits for a verified Wayland socket before starting desktop services.
  • Hyprland readiness → Can require a valid HYPRLAND_INSTANCE_SIGNATURE.
  • Session D-Bus → Starts the Wayland session inside its own D-Bus session.
  • Environment management → Publishes Wayland, Hyprland, D-Bus, XDG, toolkit, and cursor environment variables.
  • Session recovery → Detects compositor replacement and refreshes the graphical session environment.
  • Session restart → Restarts the supplied Wayland session command when it exits or the compositor becomes unavailable.

OpenRC User Services

nwsm activates the OpenRC user desktop runlevel after the compositor is ready. Service definitions are discovered from:

  • /etc/user/init.d → System-provided user services.
  • ~/.config/rc/init.d → User-provided services.

nwsm automatically registers newly installed services with the desktop runlevel and records registered services in: ~/.config/rc/.nwsm-services-registered

Services removed by the user are not automatically re-enrolled.

Environment

After the compositor becomes ready, nwsm publishes the session environment through dbus-update-activation-environment. This allows OpenRC user services and applications to access the current graphical session.

The managed environment includes variables such as:

  • DBUS_SESSION_BUS_ADDRESS
  • DISPLAY
  • WAYLAND_DISPLAY
  • XDG_CURRENT_DESKTOP
  • XDG_SESSION_DESKTOP
  • XDG_SESSION_TYPE
  • HYPRLAND_INSTANCE_SIGNATURE
  • HYPRLAND_CMD
  • QT_QPA_PLATFORM
  • GTK_USE_PORTAL

Session Startup

Nitrux starts Hyprland through nwsm with the following command: NWSM_REQUIRED_VARS=HYPRLAND_INSTANCE_SIGNATURE nwsm -- /usr/bin/start-hyprland

After Hyprland starts, the session configuration runs: nwsm finalize

This publishes compositor-provided environment variables that were not available when nwsm initially started the session.

Session Exit

When the session ends, nwsm stops the OpenRC user desktop runlevel, restores the previous D-Bus activation environment, removes temporary compositor handoff data, and terminates the remaining session processes.

The default Hyprland keybind for stopping the session is Super + M.

Information

Nitrux Workspace Session Manager is licensed under the BSD-3-Clause license.

Updated on 5 October, 2026
Previous - Workspace ArchitectureWorkspace CompartmentalizationNext - System RequirementsHardware Compatibility Validation Layer
Close Menu
  • Documentation
  • Bug Tracker
  • Blog
    • Tutorial
    • News
    • Other
    • Blog Archive
      • News and Tutorial Archive
      • Maui Archive
      • ZNX Archive
      • VMetal Archive
      • PNX Archive
  • x-twitter
  • bluesky
  • facebook
  • youtube
  • github
  • instagram
  • telegram
  • mastodon
  • threads
  • email

© 2017-2026 Some Rights Reserved. Made with ♥ by Nitrux Latinoamericana S.C.