The desktop environment

From SprezzOSWiki
Revision as of 14:57, 4 March 2013 by Dank (talk | contribs)

Depending on the graphics capabilities of your machine, it might be possible to engage a user interface based on pixels rather than character cells. These are typically referred to as GUIs (Graphical User Interfaces), and have underpinned the vast majority of interactive computing for many years. Most GUIs are minor variations on idioms of the desktop environment, that is:

  • Interactive applications present sets of distinct windows, objects of varying opacity taking dynamic size in 2 dimensions
    • The contents of the windows, subject to overlap, are controlled by the application
    • Decorators of the windows, subject to overlap, are usually controlled by the application
    • Graphic presentation is typically influenced by a theme -- an instance of a presentation engine's parameters
  • Windows are partitioned among workspaces, 2D objects having size corresponding to the display
    • Each workspace provides a z-axis on which its windows are at least partially ordered
    • Some systems support association of windows with more than one workspace at a time
  • A root window
  • In every system known to this author, a total order is induced upon the workspaces, and only one workspace is shown at a time

GUIs are by no means always available, for instance when using a serial terminal, when recovering during a broken boot, or when they are not installed. By default, SprezzOS 1 does not install any GUI components.

GUIs

The standard compositor/rasterizer on Linux is currently X.org atop a mix of kernel- and userspace Direct Rendering Infrastructure. Alternatives include Wayland and DirectFB.

  • A rasterizer provides an interface by which applications can render to a framebuffer.
    • Without a rasterizer, all applications must speak cooperatively to the physical framebuffer.
  • A compositing rasterizer provides virtual framebuffers to applications, which are projected via some transform to the true framebuffer.
    • In the absence of a composting rasterizer, applications must cooperatively implement effects along the Z axis

      One might say that non-destructive overlapping is a Z-axis effect. While this is true, non-destructive overlapping can be implemented via recoverable, linear XOR transforms, and thus the overlapping bitmap itself is sufficient information to recover the original bitmap. Thus the distinction is meaningful. - nickblack.atl (talk)

Theming

SprezzOS's default theme is Allotrion.

See Also

{{#switch:|subgroup|child=|none=|#default=

}}{{#ifeq:|Template|{{#ifeq:|child||{{#ifeq:|subgroup||{{#switch:the desktop environment

|doc
|sandbox
|testcases =
|#default = {{#switch:
 |plainlist
 |hlist
 |hlist hnum
 |hlist vcard
 |vcard hlist = 
 |#default = hlist
 }}
}}

}}}}}}