Skip to content

SSDD 2.2

Latest

Choose a tag to compare

@kekePower kekePower released this 08 Aug 21:04
9583abe

SSDD 2.2 is a maintenance and modernization release focused on reliability, cleaner internals, and predictable configuration behavior. The interface, default commands, configuration format, and GTK 4.0 minimum remain unchanged.

Highlights

  • Settings now apply immediately. Commands saved in the Settings dialog are used by the running application without requiring a restart.
  • Honest save feedback. Configuration write failures now produce an error dialog instead of reporting a successful save.
  • Safer configuration handling. Missing or empty values fall back to the established defaults and incomplete configuration files are repaired automatically.
  • More reliable application lifecycle. Launching SSDD again presents the existing window instead of creating duplicate windows.
  • No internal command collisions. Settings and Exit are represented as typed actions rather than magic command strings.

Code and build improvements

  • Consolidated labels, icons, configuration keys, and defaults into one action table.
  • Added shared application state with automatic GLib cleanup.
  • Removed redundant manual GResource registration and unnecessary generated-header handling.
  • Made the resource build depend on the application icon so icon updates trigger regeneration.
  • Added stricter compiler warnings while preserving GTK 4.0 compatibility.
  • Added the compiled ssdd.gresource to the repository.

Compatibility

  • Existing ~/.config/ssdd/config files remain compatible.
  • The [Commands] group, configuration keys, default commands, and UI layout are unchanged.
  • No configuration migration is required.

Validation

The release was checked with a normal parallel build, a strict GCC build with warnings treated as errors, cppcheck, configuration save/reload/repair tests, and an isolated headless GTK startup smoke test. No shutdown or session-management command was invoked during testing.

Full changelog: v2.0...v2.2