Current Version: Development Release 14
  Current Status: Alpha/Working Demo, GPL Documentation for
  the Enlightenment Window Manager
  Dox by Hilarion
  Last updated 98/05/14

  This documentation is copyright (C) 1998 Hilarion, and like Enlighten-
  ment itself, also released under the Gnu General Public License. All
  additions and corrections will be credited if so desired; contact
  rhogan < at > mnsi < pt > net for further information.
  ______________________________________________________________________

  Table of Contents:

  1.      the Devil in the Details

  1.1.    the Authors and Enlightenment

  1.2.    Enlightenment's Home and Mailing List

  1.3.    Official Enlightenment Websites

  1.4.    Where To Get and Use This Document

  1.5.    License Terms

  2.      Installing Enlightenment

  3.      Gotchas

  4.      Platforms Tested

  5.      Packages Needed

  6.      What Version You Have

  7.      Starting X With E

  7.1.    By Startx

  7.2.    By xdm

  7.3.    SPECIAL NOTE

  8.      Feature Set

  8.1.    To Be Developed

  8.2.    Feature Explanations

  8.2.1.  Sliding Desktops

  8.2.2.  Shaped Windows

  8.2.3.  Window Decorations

  8.2.4.  Formal ICCCM Conformance

  8.2.5.  Striding Window Entry

  8.2.6.  Text Classes

  9.      Resources

  10.     Tutorial

  11.     FAQs
  ______________________________________________________________________

  1.  the Devil in the Details

  Wherein we discover what others have been talking about...

  1.1.  the Authors and Enlightenment

  The authors of Enlightenment are Raster (raster < at > redhat < pt
  >com) and his co-pilot, Mandrake (mandrake < at > mandrake < pt >
  net).  While the early development releases were rapid fire affairs of
  escalating feature sets, bugs, and expectations, the 14th development
  release is the long awaited step-back-and-retrench rewrite that will
  provide the stability for serious development.

  +  Raster, alias Rasterman, AKA Charleton Heston alias Carsten
     Haitzler

  +  Mandrake, AKA Geoff Harrison

  1.2.  Enlightenment's Home and Mailing List

  Its permanent roost is [EMAIL PROTECTED] and is being hosted by
  Mark Rorabaugh (mark < at > 2rad < pt > net).  While it is considered
  a developer's list, comments, observations, bug reports, wishlists and
  the like are hard to refuse.  For general announcements, e-
  [EMAIL PROTECTED] is the mailing list to subscribe to, although
  announcements are mirrored on both so that if you are a fanboy/girl or
  a developer, you can cut down on your time and mailbox bandwidth and
  subscribe to just e-develop.  Did I mention the fact that Mark was
  nice enough to front the rasterman.com domain and www.rasterman.com
  server?

  1.3.  Official Enlightenment Websites

  +   <http://www.rasterman.com/> or

  +   <http://www.enlightenment.org/>

  1.4.  Where To Get and Use This Document

  This document can be snarfed from either

  +  Printable text at  <http://heave.to/e14.txt> or
     <http://www.rasterman.com/e14.txt>

  +  HTML-traversible tree at  <http://www.heave.to/e14.html> or
     <http://www.rasterman.com/e14.html>

  +  Printable Postscript at  <http://heave.to/e14.ps> (about 350K)

  +  Archived HTML tree at  <http://www.heave.to/e14.tgz>

  The version that is posted to the Enlightenment mailing list is a
  vanilla ascii version of the printable text, suitable for that media,
  since no assumptions as to the capability of a Usenet-accessed tty or
  mailing agent can be made.  The Rasterman site will mirror it daily,
  so there is no need to discern between the two in practical terms.

  For printing, either the Postscript or Printable Text versions are
  suggested, and for a snatch-and-grab fest, the traversible tree is
  provided and designed for your entertainment and euclidiation.  If
  given the choice and the time, choose the Postscript version; even if
  you _____ have a Postscript printer, you will receive a fairly good
  rendering on whatever you have by using Ghostscript or Ghostview.

  1.5.  License Terms

  Enlightenment and its Image and Text libraries, Imlib and Fnlib
  respectively, are released under the Gnu General Public License
  scheme.  For more details, see  <http://www.gnu.org/>

  2.  Installing Enlightenment

  The first order of business is to decide which method fits your style
  of installation better.  There are currently two general methods and
  short of a new software technology on the horizon, this will remain
  true for the development releases of Enlightenment.  You can either
  use a distribution packaging system like Redhat's RPM, Debian's, or
  the cross-distribution system that handles both, Alien.  You will find
  these files by their extensions, respectively: .rpm and .deb. Install
  them as per the current instructions contained in their manual pages.

  The second method is by compiling directly from the source code the
  authors wrote.  To do this, you will need to have a C compiler
  installed, and snarf the .tar.gz or .tgz files.  Then just unarchive
  them by going to the directory tree you want to install from (ie.
  /usr/local/src), and type "tar zxvf /dir of .tarball/e14.tgz".  Change
  to the directory it creates and type "make", and if no error messages
  result, "make install".

  (Currently there is no configure script or Imakefile.)

  3.  Gotchas

  Make sure you have the needed dependencies fulfilled.  This involves
  installing a number of libraries that you may or may not have, or that
  need updating to be useful to Enlightenment.  Chances are, if you have
  a fresh system that shows you graphics, you have most of the
  libraries; but check the Files Needed section just in case.  Two
  libraries, Imlib an Fnlib, are for Enlightened applications, and if
  you do not have any such applications installed, then you will need to
  install these as a minimum requirement.

  Make sure that you do not have a compatibility problem with the
  library dependencies that Enlightenment needs to do its business.  If
  you have an older set of libraries and other packages dependent on
  them, chances are you will probably have to upgrade all of said
  packages as they might "break" in various degrees.  Given the nature
  of distribution packages, you will have to uninstall them, and
  reinstall fresher, newer ones.  People who use source code will just
  need to recompile (ie, make clean; make; make install) said broken
  applications if their source trees are still locally accessible.  If
  there is a question as to whether a library is more likely to have
  dependent programmes, it will be the /usr/lib version, not the
  /usr/local/lib one: use due caution, because your distribution
  probably assumes this one for all of its shipping programmes.

  Please note that Enlightenment itself, while using these libraries, is
  not responsible for breaking other applications.  If in doubt, find a
  version of the library in question that works with both Enlightenment
  and the troubled application(s).
  The development model is with Gnu tools and if problems in compiling
  persist, installing these (GCC and Gmake) might be a solution if all
  else fails.  Linux and BSD in general are shipped with these and
  aliased as "cc" and "make" so no extraneous installation is necessary.
  Since this is a rewrite of Development Release 13, please send all
  further information to make Enlightenment conform to your native
  compiler to the E mailing list so it can be further documented here
  and thereby shared with needful others.

  4.  Platforms Tested

  (taken from scratch starting at Development Release 14)

  +  Linux/Alpha 2.0.3x, libc

  +  Linux/Intel 2.x.xx, glibc and libc

  +  Linux/PPC 2.1.24 using a Powerbook 2400

  5.  Packages Needed

  (and the "official homes" in which to find them)

  +  Imlib <ftp://ftp.labs.redhat.com/pub/raster/imlib-1.4.tar.gz>

  +  JPEG <ftp://ftp.uu.net/graphics/jpeg/>

  +  TIFF <ftp://sgi.com/graphics/tiff/>

  +  Fnlib <ftp://ftp.labs.redhat.com/pub/raster/fnlib_DR-0.2.tar.gz>

  +  GIF <http://sagan.earthspace.net/~esr/giflib/giflib-3.0.tar.gz>

  +  PNG <ftp://ftp.uu.net/graphics/png/>

  +  ZLIB <ftp://ftp.cdrom.com/pub/infozip/zlib/>

     When in doubt of the absolute latest check these out, or your
     distribution's home web site for native packages, or (as a last
     resort ;) visit: <http://www.rasterman.com/development.html>

  Redhat/RPM

  +  Intel/Alpha/Sparc  <ftp.redhat.com>

  +  Apple  <ftp.mklinux.apple.com> and  <ftp.linuxppc.org>

  Debian/DEB

  +  Intel/Alpha  <ftp.debian.org>

  6.  What Version You Have

  This will display all the shared libraries you have on your current
  system, and where they are.  In the case of duplicates, erase them
  after making sure nothing else depends on them in case of possible
  conflicts if you have problems.  (See the ``Gotcha'' section for
  details.)  Always make sure you have a base library soft linked
  pointer that is used as a common access point for calling programmes.
  (See ``Sample Result'' for details.)

  In some other cases, you might find a negative result: check to see if
  you have a static (non-shared) library first before installing a new
  one, as other programmes might depend on it.

  Note: for systems not compiling a shared (ie., static) library,
  replace "so" in the following statements with "a".

  To use this, paste or type the following into an xterm (or tty).

  locate libpng|grep so -
  locate libFnlib|grep so -
  locate libgif|grep so -
  locate libImlib|grep so -
  locate libjpeg|grep so -
  locate libtiff|grep so -
  locate libz|grep so -

  Sample result:

  /usr/lib/libtiff.so           < -- soft linked pointer
  /usr/lib/libtiff.so.3         < -- soft linked pointer
  /usr/lib/libtiff.so.3.4.28    < -- actual library

  This means it is properly formed and accessible.

  My results (for comparison):

    libz.so.1.1.2, libtiff.so.3.4.28, libjpeg.so.6.0.1, libImlib.so.1.4.0,
    libgif.so.3.0, libFnlib.so.0.2.0, libpng.so.2.1.0,  libImlib.so.1.3.0

  Addendum: the results might also be negative because said libraries
  have not been on your system long enough to be displayed because
  locate's database has not had enough time to be updated.  (In which
  case, you should know what you've installed in the last 24 hours, or
  whenever your locate's database gets updated.)  In some cases, like
  libImlib's, a lower version is also available because the author
  wishes to keep compatibility with older applications and you should
  refrain (until you update those dependent programmes) from deleting
  the extraneous libraries.

  7.  Starting X With E

  There are plenty of ways to start X up on your new E machine, but
  we'll just cover the two most used, most portable, solutions, namely
  using the xdm daemon or the startx script.

  7.1.

  By Startx

  In most distributions you'll be able to find your site's xinitrc file
  in an /etc tree.  On my linux distribution, this amounts to
  /etc/X11/xinit/xinitrc.  On some systems, the setup is multi-user and
  found in your home directory, by the name of .xinitrc.  To see if it's
  at "home," type "ls -lAd .xinitrc" in your home directory.

  Simply put a "#" in front of the line that would otherwise bootstrap
  your normal window manager, and put "exec path/enlightenment" where
  path is the pathspec that points to where your resultant Enlightenment
  binary is.  Then just type "startx" after dropping out of X, and
  enjoy.

  7.2.

  By xdm

  For most distributions, xdm's setup resides in /usr/X11R6/lib/X11/xdm
  or /usr/X11/lib/X11/xdm if you want to hardcode the entire site.  If
  you are just a user on a site, then look to changing the .Xsession
  residing in your home directory, exactly as you would as if it were a
  Startx xinitrc file.

  7.3.

  SPECIAL NOTE

  Since the demo doesn't include a method of generating xterms itself,
  you must put an "exec xterm" somewhere before the "exec enlightenment"
  in the X configuration file you just edited.  After the "exec
  enlightenment" you must put a "cd path-to-E" so it can read its demo-
  defaulted window and desktop graphics, or to start xdm/startx from
  that directory instead.

  8.  Feature Set

  +  Sliding Desktops

  +  Shaped Windows

  +  Graphical Window Decorations

  +  Formal ICCCM Conformance

  +  Auto Window Arrange

  +  Striding Window Entry

  +  Borderless Windows

  +  Text Classes

  8.1.  To Be Developed

  +  Menus

  +  Configurability

  +  Good documentation

  8.2.  Feature Explanations

  8.2.1.

  Sliding Desktops

  Desktop drag and drop has been replaced with a different, more
  fascinating mechanism of sliding desktops. Keybindings let you switch
  between desktops as most window managers featuring virtual desktops
  allow. Using the pointing device, however, you can now slide the
  partition over that lives on the left side of your desktop, so that
  you can see the other desktops "underneath" the current one.  You can
  open more than one at a time and easily drag a window from one desktop
  and *plop* it on another and it will 'stick' to it automatically when
  it slides more open or closed.

  8.2.2.

  Shaped Windows

  Wholly aesthetic, these allow window decorations that aren't confined
  to plain rectangles, allowing background elements of the desktop or
  lower windows, to show through portions much like peeking through
  Victorian lace to see your hand.  While detracting from performance to
  deliver this feature, it can be used creatively with Window
  Decorations to create an entirely new landscape for your desktop.
  This feature is dependent on the window decorations, of course; if you
  use a set of window decorations that are rectalinear, or mostly so,
  the performance drain is completely or partially negated.

  8.2.3.

  Window Decorations

  Any GIF, PNG/PNM, JPG, or TIFF file can be used to in Enlightenment's
  configuration to create a window decoration to stick to your windows
  or to be used as buttons or other usable artifacts.  Similarly,
  highlighted focus can be indicated with another set to show its
  changed state.

  8.2.4.

  Formal ICCCM Conformance

  The feature says it all, doesn't it?  Enlightenment now boasts
  conformance with the ICCCM protocol standard.

  8.2.5.

  Striding Window Entry

  When a window is adopted from the resource pool into X, Enlightenment
  now tells the window it has to stride across the screen from a
  randomly chosen corner to the destined area where it can finally rest.

  8.2.6.

  Text Classes

  Enlightenment now uses the Fnlib Font library in order to give non-
  standard X fonts for window title bars and other such accruements.
  This provides Enlightenment with the ability to use a graphic image as
  a sort of mapped-on font set.  Right now this is pretty raw still, and
  is at the whim of the artists'/contortionists' concept of contrast as
  multiple shades are now possible, thus possibly reducing visibility.
  When the colour and contrast combinations are on, though, it's
  certainly eye candy.

  9.  Resources

  (hmmm... none yet for this development release)

  10.  Tutorial

  (ha! insert witty banter here)

  11.  FAQs

  1.

     Oh noooo, I get the blue screen of death!  What'll I do now?
        " Right now, the demo only works in the directory its been
        compiled in, due to the lack of an install script and the use of
        nonabsolute pathnames (an altogether good idea).  Execute it
        from your install directory (the one above the pix subdirectory
        in it, and holding the enlightenment binary).

  2.

     Where's the Xterm? and the Menu?
        Xterm either didn't ship with your distribution of X, or you
        didn't put one in your startx script or xdm setup.  Out-of-the-
        box source doesn't have a menu, and hence no Xterm selector.

  3.

     How do I exit Enlightenment? Other keybindings?
        Ctrl-Esc.  Default for desktop sliding is Shift-Left or Shift-
        Right.  Feel free to change it in test.c by replacing
        "ShiftMask" with "ControlMask" on the two lines.  F12 allows the
        windows to be repositioned, usually more favourably, depending
        on the "arrangement" scheme chosen.  (The demo's default is
        BY_SIZE, and seems to go by newest highest.)

  4.

     But this was released, wasn't it? When will it?
        Well, sorta.  It's a demo.  If you want the "real" one, go back
        to DR13.3; however, you'll live without sliding desktops and
        being a beta-tester.  As far as I know, the original plans to
        keep it on track (and the state of the source code) indicate
        that the Expo date of May 28th is a fairly good certainty.

  5.

     Where's a screen shot for this thing?
        Well, I've got one jpeg up on  <http://heave.to/e14.jpg>, and
        that's all I know of.

  6.

     With no menus, how do you work/test its real-world usage?
        There are plenty of utilities out there that provide that stuff.
        Right now I'm trying out xfce and its build-your-own-interface
        blends pretty well with my Enlightenment usage.

  7.

     When did all of this happen?!
        We all got word of it by the 10th, and it was up at Raster's RH
        ftp area on May 9th.  You don't stay in often, do you?
  8.

     Where'd the new window just skip off to?
        Sometimes on a smaller resolution screen (?) with no free area
        for the arranging algorhythm to work within, the window gets
        placed off or near the edge as it finds no room near the centre
        of the screen.  Hit F12 and it'll "right" itself by ignoring
        other windows, repositioning all be absolutist measurements.


-
To unsubscribe from this list send mail to: [EMAIL PROTECTED]
with the message contents: unsubscribe e-develop

Reply via email to