Skip to content

Project "XDG ng"

probonopd edited this page Nov 3, 2022 · 25 revisions

Purpose of project "XDG-ng"

  • Improve the usability of desktop environments for end users
  • Allow for features previously lacking in desktop environments
  • Remove layers of legacy crust
  • Remove reliance on GLib
  • Make debugging and development faster, simpler, and more fun

Key realization

freedesktop.org (formerly known as X Desktop Group, hence XDG) specifications

  • Define how most desktop environments currently work under the hood
  • Address most areas needed to put together desktop environments
  • Are decades old and do not make best use of contemporary technology, e.g., extended attributes
  • Lack concepts integral to the desktop user experience, e.g., application bundles and global menus
  • Make things that should be simple complicated or impossible
  • Seem to be retrofitted to explain how Glib works, are not designed in the Unix philosophy

Approach

  • Start from first principles - the objects that the desktop user experience consists of
  • Think entirely independently of any particular existing desktop environment
  • Propose simpler, more robust, more contemporary solutions for each of the XDG specifications, ideally in less than 10% of the length and complexity of the corresponding XDG specification
  • Propose solutions for areas the XDG specifications fail to address
Clone this wiki locally