New Session Manager Versions Save

Assists music production by grouping standalone programs into sessions. Community version of "Non Session Manager".

v1.6.1

1 year ago
  • Absolutely make sure that all clients of the session are closed when closing the session.
    • This solves the invisible, hidden clients still running even after nsmd quit itself.
    • Decrease wait time for such clients at session quit from extreme 60s to very long 30s.
  • For lockfiles fall back to hardcoded /run/user/ when $XDG_RUNTIME_DIR is not available on the system.

All changes are made only on the server side, or in the tools we provide. Existing sessions, clients, and GUIs remain 100% compatible without requiring any changes.

v1.6.0

2 years ago

nsmd - The daemon itself

  • Now follows the XDG Base Directory Specifications.
    • Default session directory moved from ~/NSM Sessions/ to $XDG_DATA_HOME/nsm/ (see issue #gh-15)
    • The old path ~/NSM Sessions/ is still supported and has priority, for now. This may be switched off in the future.
  • Lockfiles fixed (see issue #gh-31)
    • Lockfiles are now in $XDG_RUNTIME_DIR/nsm/
    • Lockfiles now each contain the session path, the osc NSM_URL and the nsmd PID
    • One daemon file for each currently running nsmd is created in $XDG_RUNTIME_DIR/nsm/d/ containing the osc url. This enables discovery of running daemons.
  • New section in the API documentation for the above.
  • Handle write-protected session files and related errors on save. They will not crash the daemon anymore.
  • Fixes and guards against trying to load non-existing sessions and creating new sessions under existing names
  • Handle various crashes-on-exit and replace them with controlled exits.

Jackpatch Version 1.0.0 (previously 0.2.0):

  • Jackpatch will finally not "forget" connections anymore! See #gh-74
  • Add a jackpatch desktop file with X-NSM-Capable=true and X-NSM-Exec=nsm-proxy and NoDisplay=true
  • Reduce verbosity level of log ouput.
  • Document 'hidden' standalone (no NSM) command line mode in --help
  • Handle SIGNALs even when in standalone mode

NSM-Proxy:

  • Add a nsm-proxy desktop file with X-NSM-Capable=true and X-NSM-Exec=nsm-proxy and NoDisplay=true

All changes are made only on the server side, or in the tools we provide. Existing sessions, clients, and GUIs remain 100% compatible without requiring any changes. Except if you want to use the new session root directory, which is recommended.

v1.5.3

2 years ago

This is a "New Session Manager" maintenance release.

CHANGELOG

  • Add [jackpatch] to terminal log output of jackpatch.
  • Remove hardcoded ANSI colors from terminal log output

All changes are made only on the server side, or in the tools we provide. Existing sessions, clients, and GUIs remain 100% compatible without requiring any changes.

v1.5.1

3 years ago

v1.5.0

3 years ago

WARNING

Next scheduled release (2021-04-15) will switch the default session root to $XDG_DATA_HOME ( default on most distributions: ~/.local/share/nsm/ )

With Aprils release please prepare to do one of the following:

  • Move old sessions to the new root directory (preferred)
  • Symlink "~/NSM Sessions" to the new root directory
  • use the nsmd --session-root commandline argument.

Changes in 1.5.0

All changes are made only on the server side, or in the tools we provide. Existing sessions, clients, and GUIs remain 100% compatible without requiring any changes.

nsmd:

  • Fix session discovery to not report nested sessions anymore. Also more robust file system error handling.
  • Command line option --quiet: Suppress messages except warnings and errors
  • Protect against orphaned clients or daemons when the server, or even a GUI, crashes.
  • Replace cowboy-slang in info-level OSC with descriptive, technical messages.

Legacy-GUI:

  • Fix manpage description and usage with the correct executable name
  • Fix resizing to very small and back. ( / TheGreatWhiteShark )

NSM-Proxy:

  • Multiple layout and style fixes. Better texts for beginners.

API:

  • NSM_API_VERSION_PATCH from 0 to 1 (1.1.0 -> 1.1.1)
  • Please see API document chapter "Changes in API Version 1.1.1"

Extras:

  • This repository now contains extras (libraries, programs, documentation etc.) Extras are technically not connected to the main programs of this repository. There is no dependency to any "extra" nor any license implications. Please read extras/README.md.
  • nsm.h was moved to extras/nsm.h
  • "extras/pynsm" is now a part of NEW-SM. It was a standalone git repo until now.

v1.4.0

3 years ago

Add documentation and manpages. Highlight: Provide updated API-Document (core documentation) on https://new-session-manager.jackaudio.org/

Legacy-GUI: Overhaul look and feel. Rewrite labels and buttons with unambiguous descriptions. Protect text-input dialog windows from empty strings, like "Add New Client" or "New Session" Scale icons, support more icon formats. Show all icons and buttons when attaching to a running nsmd session Various small fixes. Always show correct session name, no matter how the session was loaded or how the GUI was started

nsmd: NSM_API_VERSION_MINOR from 0 to 1 (1.0 -> 1.1) Repair nsmd to correctly send client data when running headless and a GUI announces later. ClientId generation now prevent collision with existing IDs. nsmd command line option --load-session to directly load one (Berkelder, Rik) Better detection of clients that failed to launch leads to faster session startup (by 5 seconds) Users get informed by client-label if an executable is not present on the system or permission denied Fixed reply for listing sessions from a plain "Done." to proper reply path with empty string as terminal symbol "/reply", "/nsm/server/list", "" Fix operation reply to last treated client instead to reply to sender (Picot, Mathieu / houston) /nsm/gui/session/name send consistent session name/relative-path pair to the annouced GUI, no matter how the session was loaded.

nsm.h :optional-gui: support to nsm.h, for other applications to include and use. (Meyer, Hermann / brummer )

v1.3.2

3 years ago

Rename new-session-manager executable to nsm-legacy-gui to prevent future confusion.

v1.3.1

3 years ago
  • Add header copyright even to unchanged files to adhere to stricter packaging requirements.
  • Meson can now switch off individual executables and will stop/error when trying to build without dependencies.

v1.3

3 years ago
  • Rebranding to "new session manager"
  • Upstream GUI tools "non-session-manager" and "nsm-proxy" converted to standard FLTK instead of a custom toolkit
  • New message /nsm/gui/session/root raises NSM_API_VERSION_MINOR from 0 to 1 (1.0 -> 1.1)
  • Changed build system to meson
  • License upgraded to GPLv3
  • Simplified file structure
  • Fix compiler warnings.