new dokuwiki based page content for new e.org www

This commit is contained in:
Carsten Haitzler 2015-04-06 19:41:14 +09:00
parent 1f14b1346f
commit 4a2acbe77b
46 changed files with 1468 additions and 41 deletions

BIN
media/diagram-block-efl.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

216
media/diagram-block-efl.svg Normal file
View File

@ -0,0 +1,216 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="120"
height="100"
viewBox="0 0 120 100"
id="svg2"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="diagram-block-efl.svg"
inkscape:export-filename="/home/raster/C/wc/media/diagram-block-efl.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270">
<defs
id="defs4" />
<sodipodi:namedview
id="base"
pagecolor="#404040"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:zoom="10.59246"
inkscape:cx="71.183579"
inkscape:cy="54.339412"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="true"
units="px"
objecttolerance="20"
guidetolerance="20"
gridtolerance="50"
showguides="false"
inkscape:snap-bbox="true"
inkscape:bbox-paths="true"
inkscape:bbox-nodes="true"
inkscape:snap-bbox-edge-midpoints="true"
inkscape:snap-bbox-midpoints="true"
inkscape:snap-grids="true"
inkscape:snap-to-guides="false"
inkscape:window-width="2042"
inkscape:window-height="1638"
inkscape:window-x="2977"
inkscape:window-y="212"
inkscape:window-maximized="0">
<inkscape:grid
type="xygrid"
id="grid4136"
spacingx="1"
spacingy="1"
empspacing="10"
units="px"
dotted="false" />
</sodipodi:namedview>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-952.36216)">
<rect
style="opacity:1;fill:#3399ff;fill-opacity:0.25098039;stroke:none;stroke-width:35.40000153;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4144-5"
width="26"
height="19.999979"
x="92"
y="954.36218" />
<rect
style="opacity:1;fill:#3399ff;fill-opacity:0.50196078;stroke:none;stroke-width:35.40000153;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4144"
width="15.931442"
height="19.999979"
x="74"
y="954.36218" />
<rect
style="opacity:1;fill:#3399ff;fill-opacity:0.50196078;stroke:none;stroke-width:35.40000153;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4144-1-4"
width="32.068558"
height="19.999979"
x="40"
y="954.36218" />
<rect
style="opacity:1;fill:#3399ff;fill-opacity:0.69019608;stroke:none;stroke-width:35.40000153;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4144-1"
width="36.034576"
height="19.999979"
x="1.9654238"
y="954.36218" />
<rect
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:35.40000153;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4144-8"
width="115.9239"
height="19.999979"
x="2.0761015"
y="976.52509" />
<rect
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:35.40000153;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4140"
width="116"
height="29.858479"
x="2"
y="998.50366" />
<rect
style="opacity:1;fill:#606060;fill-opacity:1;stroke:none;stroke-width:35.40000153;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4138"
width="115.91983"
height="20"
x="2"
y="1030.3622" />
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:125%;font-family:Elegante;-inkscape-font-specification:Elegante;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="38.779495"
y="1042.1505"
id="text4161"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4163"
x="38.779495"
y="1042.1505"
style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:5px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light';fill:#ffffff;fill-opacity:1">Base OS + GFX etc.</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:125%;font-family:Elegante;-inkscape-font-specification:Elegante;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="55.882568"
y="1015.2176"
id="text4161-1"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4163-8"
x="55.882568"
y="1015.2176"
style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:5px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light'">EFL</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:125%;font-family:Elegante;-inkscape-font-specification:Elegante;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="47.129116"
y="987.82391"
id="text4161-1-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4163-8-5"
x="47.129116"
y="987.82391"
style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:5px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light'">Elementary</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:5px;line-height:125%;font-family:Elegante;-inkscape-font-specification:Elegante;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="3.4446261"
y="965.66101"
id="text4161-1-6-9"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan4163-8-5-5"
x="3.4446261"
y="965.66101"
style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:5px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light';fill:#ffffff;fill-opacity:1">Enlightenment</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:125%;font-family:Elegante;-inkscape-font-specification:Elegante;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="42.169533"
y="965.66101"
id="text4161-1-6-9-7"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="42.169533"
y="965.66101"
style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:5px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light';fill:#ffffff;fill-opacity:1"
id="tspan4237">Terminology</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:125%;font-family:Elegante;-inkscape-font-specification:Elegante;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="76.368797"
y="965.54626"
id="text4161-1-6-9-7-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="76.368797"
y="965.54626"
style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:5px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light';fill:#ffffff;fill-opacity:1"
id="tspan4237-2">Rage</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:125%;font-family:Elegante;-inkscape-font-specification:Elegante;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="100.96191"
y="965.97961"
id="text4161-1-6-9-7-6-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="100.96191"
y="965.97961"
style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:6.25px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light';fill:#ffffff;fill-opacity:1"
id="tspan4237-2-4"><tspan
style="font-size:5px"
id="tspan4155">etc</tspan>.</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 10 KiB

BIN
media/efl-core.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

BIN
media/icon-rage.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

BIN
media/icon-terminology.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

BIN
media/os-logos.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

BIN
media/rage-main.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 KiB

BIN
media/rage-music1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

BIN
media/rage-music2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

BIN
media/rage-playlist.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 349 KiB

BIN
media/rage-thumbnails.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 443 KiB

BIN
media/shot-edi.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

BIN
media/shot-rage.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 KiB

BIN
media/shot-terminology.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 KiB

BIN
media/terminology-bell.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

BIN
media/terminology-gif.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

BIN
media/terminology-htop.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

BIN
media/terminology-link.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

BIN
media/terminology-ls.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

BIN
media/terminology-png.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 380 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 KiB

BIN
media/terminology-tabs.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

86
pages/about-efl.txt Normal file
View File

@ -0,0 +1,86 @@
==== EFL ====
[[download|Download EFL Here]]
{{:efl-core.png?nolink |}}
EFL is made up of quite a few libraries that build on top of each other
in layers, steadily becoming higher-level, yet allowing access to
each level as they go. The higher up you go, the less you have to do
yourself. Elementary is about as high up as you get, while you still
access layers below it for day to day things as there is no need for
it to wrap things that work perfectly well as-is.
All of EFL exposes its APIs by default in C, with sseveral bindings
available. We are now also working on supporting bindings for various
language as first-class-citizens in EFL by auto-generating the
bindings directly from our new object orientation infrastrucutre for
C. We stick to C mostly because the libraries have been around for a
long time, were originally written in C and the developers who write
the libraries perfer C. We add OO features in C with tools and
infrastructure where needed. Also moving from C would limit the
audience. C programmrs won't be able to access a C++ API (whereas a
C++ programemr can access both C and C++). That is partly why we aim
to auto-generate bindings so programmers of various languages can get
native-like APIs for their chose language from the same core EFL API
set.
Our components are divided into named libraries or projects. Core EFL
components are:
^Component ^ Description ^
|Evas |Core scene graph and rendering |
|Eina |Data structures and low level helpers |
|Edje |UI layout & animation data files for themes |
|Eet |Data (de)serialization and storage |
|Ecore |Core loop and system abstractions like X11 |
|Efreet |Freedesktop.org standards handling |
|Eldbus |D-Bus glue and handling |
|Embryo |Tiny VM and compiler based on Pawn |
|Eeze |Device enumation and access library |
|Emotion |Video decode wrapping, glue and abstraction |
|Ethumb |Thhumbnailing handler |
|Ephysics |Physics (bullet) wrapper and Evas glue |
|EIO |Asynchronous I/O handling |
|Evas Generic Loaders |Extra image loaders for complex image types |
|Emotion Generic Players |Extra video decoders (for VLC) |
|Elementary |Widgets and high level abstractions |
Binding support exists for several languages such as:
* Python
* Javascript
* C++
* Ruby
* Lua
EFL was originally intended to provide the core for Enlightenment, but
has grown to do much more. In trying to keep EFL lean, it has found a
use for embedded devices all the way up to powerful desktop behemoths.
These libraries already power millions of systems, from mobile
phones to set top boxes, desktops, laptops, game systems and more. It
is only now being recognized for its forward-thinking approaches, as
products and designers want to do more than the boring functional user
experiences of the past. This is where EFL excels.
[[http://www.free.fr|Free.fr]] has shipped millions of set top boxes in
France, powered by EFL. The
[[http://wiki.openmoko.org/wiki/Neo_FreeRunner|Openmoko Freerunner]]
sold thousands of devices with EFL and Enlightenment on them.
[[http://www.yellowdoglinux.com/|Yellow Dog Linux]] for the Sony PS3
ships with Enlightenment as the default. EFL has been used on printers,
netbooks and more. It powers the
[[http://www.samsung.com/us/mobile/wearable-tech|Samsung Galaxy Gear]]
watches, is behind the
[[http://www.samsung.com/in/consumer/mobile-phone/mobile-phone/dual-sim-phone/SM-Z130HZKDINS|Samsung Z1 Phone]]
and the
[[http://www.samsung.com/us/video/4k-suhd-tv|Samsung SUHD Smart TVs]]
that run Tizen. Cameras also use Enlightenment and EFL such as the
[[http://www.samsung.com/uk/discover/camera/find-your-signature-with-samsung-nx1/|Samsung NX1]]
and the
[[http://www.samsung.com/global/nx/nx300m/|Samsung NX300M]] smart
Camera. Also GPS units such as models from
[[https://www.moncoyote.com/|Coyote]] Run EFL on a lean and mean RTOS.
Also Web conference cameras such as
[[https://www.biscotti.com/|Biscotti]] use EFL to do their work.

View File

@ -0,0 +1,338 @@
==== Enlightenment ====
[[download|Download Enlightenment Here]]
{{:icon-enlightenment.png?nolink |}}
Enlightenment (0.17+) (a.k.a E17) is the next generation of
graphical desktop shell from the Enlightenment project. When you first
run it and get past the initial setup wizard, you should end up with a
desktop not unlike the above. It is a very traditional UNIX/X11 style
desktop, because that is what E primarily is and attempts to be, **BUT**
with a bunch of bells, whistles and modernities that were never there,
as well as a different core design philosophy. There seems to be some
obsession with Window Manager vs. Desktop Environment debates. It
doesn't much matter what you call it. It manages windows. It does
compositing. It manages files. It launches applications. It handles UI
and system settings.
This information assumes you will download and compile Enlightenment
and its necessities beyond what your current OS does or can provide.
If Enlightenment is provided already as packages, you may want to
check them out first, see if they are actually up to date, as opposed
to compiling it all yourself. If not, then this information will help
you get it set up yourself and take your first few steps. There are a
few things you will need to use Enlightenment. Firstly you will need
to [[download]] Enlightenment and EFL library components. You will need to
provide the appropriate system dependencies too. The details will be
further on.
=== Misconceptions and assumptions ===
Before we go any further, it is time to clean up some common
misconceptions. First, Enlightenment is not new. It is OLD. It
predates larger desktop environments like GNOME or XFCE. It is just
barely younger than KDE. It never started life as an attempt to "be a
full desktop environment". It started life as simply a window manager.
This was back towards the latter part of 1996, and its first 0.1
release came in the first part of 1997. It was a window manager with
some extras to scratch the itch that "everything was gray bevels and
UIs had to be plain to be functional or useful, and that computers/X11
were not capable of more". It handily proved that to be wrong. It
could manage function AND form more flexibly than anything else, and
to this date is still in an enviable position of flexibility in both
behavior features and in terms of visuals. In fact, its Achilles heel
simply may be that it has too many options and too much flexibility.
Some of the extras filled in the gaps, like setting wallpaper, that
was always done by 3rd party tools and not the window manager at the
time. If you are after a constrained and simple UI, then Enlightenment
(E) is not for you. It can be configured to be plain and simple if you
try, or to be buzzing with activity and complexity, but this is up to
you. Its default is somewhere in between these to give you a taste of
what it can do on both ends of the spectrum.
The default look is not what you are stuck with. Enlightenment was the
first Window Manager (WM) to introduce themes in X11 (pre-packaged
sets of data that you just grab and select, providing you with a vast
new look and feel). Today in Enlightenment, these themes come as
"Edje" files (.edj), and are pre-packaged data files containing all
images, layout, animation etc. that you may need. They never get
"unpacked". They are used "live as-is", and only the data needed from
the file is sourced and decoded, so even if the theme is massive, only
the pieces needed at any one time are decoded into memory, which is
normally a fraction of the actual file size. They are also live data
and need to be there while E17 runs as it is forever digging bits of
data out of these files as it needs it. It is an accepted fact that
the default look will not be for everyone. It tries to strike a
balance of being unique (not mimicking some other desktop look), yet
still being stylish. It is meant to echo some of the past from where
Enlightenment comes from, and yet roll in modern effects and feels. It
sacrifices some "usability" for look, yet tries to keep a balance and
still be functional. It will not be for everyone, but it is hoped that
it keeps you mostly happy until you find other themes that exactly
meet your visual needs. You will find this as an on-going philosophy
in Enlightenment. One size does NOT fit all. That's what options are
for. Thats why we have themes. Do not have the misconception that what
you see is what you are stuck with. You are expected to experiment and
discover what is good for you. Maybe the default is fine. Maybe it is
not. That's why we pioneered themes and spent immense amounts of time
making them nicely packaged, efficient and powerful enough to
fine-tune almost any aspect of the UI.
That leads onto the next thing you may find quickly. Enlightenment has
so many options, because we believe that **CHOICE** is important. If you
don't believe that your preferences matter, then maybe another project
is better for you, but we firmly believe that they do. We also believe
that there are others who have different preferences to you and that
they matter too. We may not have accounted for every single option out
there. We may not have presented it to you in a way that makes it
childs play to find and use, but we have tried. Over time options will
be cleaned up and accessibility to them improved. A lot of them are
there simply because they needed to be and not a lot of time was spent
fine-tuning how to present them in a fool-proof manner. This will
improve over time and with input, suggestions, patches etc. we hope to
still offer all the options you need or want, but in a much more
accessible form.
Not everything is perfect, polished and "finished". This is not the
end of a path. It is the start of a whole new one. If you find
something you think could be better, please don't just complain and
vanish. [[contact|Contact us]] and open up a dialogue. Maybe we agree.
Maybe we disagree. Maybe we are already working on it. Maybe you can
help out and provide patches too.
----
=== Philosophy ===
We have certain things that are important to us and how we work. They
will often show immediately to users, and it is good to explain this
here. They will lurk behind our decisions and responses, so instead of
having to explain them each time, setting the tone here is a good idea.
== CHOICE IS GOOD ==
A user should be given as much control as is feasible. There is often
a trade-off in maintainability by the programmers of some code,
current and future development, as well as available time to do the
work. It is always best to make any feature "just work" without
options for everyone if possible, but the effort may be immense, or
the "what does "just work" really mean may not be as clear to some as
to others, and so options are provided to allow the fine-tuning to be
done by users. Sometimes options are dangerous, but necessary for some
people. Sometimes they are so dangerous that they are buried under
layers of complex systems to try and keep them from being mis-used.
Sometimes they are just, by nature, complex, and that's life. In the
end, choice is good. That means that options and configuration are
important. We'd love to streamline how they are presented, and make it
easier for the "Average Joe", but never shall we do this at the
expense of the power user.
== VANILLA VS. STRAWBERRY VS. CHOCOLATE ==
Like with choice of options, the actual aesthetics are something that
is highly subjective and personal. What is beautiful for one person
can be ugly for another. Otherwise we'd all still be driving black
Ford model-T's and all be happy about it. Some desktops and OSs
provide vanilla looks. Some are strawberry. Some can never be changed.
We have chosen chocolate by default. Mostly because it means we stand
out by default. You can change this if you want. You can even create
your own flavors of look in gory detail if you spend the time on the
artwork and layout. Take advantage of the choice.
== EFFICIENCY MATTERS ==
We want Enlightenment to be as efficient as possible. We don't want to
sacrifice looks or functionality either, so we have spent a lot of
effort making a lot of libraries that help this happen. Our theme
files are binary blobs. They may appear opaque at first, but they are
dissectable, given tools we provide like edje_decc. The same for our
configuration files (eet). We value runtime speed and efficiency over
giving the user encouragement to go hack their configuration files
with a text editor. We spent a lot of time providing a GUI for almost
every option that exists in Enlightenment. It manages this for you.
It's to ensure maximum efficiency at runtime. If you need to, on the
odd occasion, dig into the bowels of these files we have tools that
can export and import text files that you can edit, so for the real
tinkerer, hacker and developer you can do what you need to, BUT the
regular user is discouraged from messing at this level, as this is
where you can get yourself into more trouble if you get it wrong. We
have also chosen a much more process-lean model with fewer processes
and more rolled into a single one. This gives better opportunities for
efficiency, but makes things a little more fragile. To solve the
fragility we have made error recovery very good with enlightenment
catching its own errors and offering the ability to debug or just
restart from where u left off and move on without losing any work. E17
leaves a crash log file (~/.e-crashdump.txt) if you have gdb installed
and you have debug symbols on.
== NOT EVERYONE DRIVES A F1 ==
Not just being efficient, but realizing that not everyone has the
latest and greatest hardware to run Enlightenment is what we are
about. It's also not just one architecture. They may be stuck on
something quite old (some 486), or want Enlightenment to work on
something quite bizarre. We have gone to a lot of effort to make
Enlightenment scale from anything like a 200Mhz ARM phone with 32M RAM
all the way up to the latest multi-core, 64bit multi-Ghz and 16GB+
desktop beasts with 2 or more screens. We keep in mind the puny end of
the spectrum all the way up to the beastly end. When we make decisions
they try and ensure every part of this spectrum gets a fair go, and
preferably leaves as few people behind as possible. This also means
sometimes raising the bar in order not to hold back future things, but
also means sometimes holding back until a better way is found. You'll
find evidence of this in the fact that out-of-the-box we have made
compositing fast and usable even without a GPU, and yet we can fully
push your GPU if you have one and it has solid drivers. We care.
== EYE CANDY MATTERS ==
If you want a minimal interface, you can configure Enlightenment to be
quite minimal, but it takes effort. Enlightenment leans towards
providing eye candy where it can, and often comes by default that way.
This is how we roll. We always have. Haters gonna hate. That's how we
roll. Bring on the lollipops!
== WE MAKE LIBRARIES MUCH MORE THAN WM'S ==
One thing over the years that has happened, is that the project has
morphed into a library project much more than a Window Manager or
Desktop project. Of our released code something like 80% of it is
stand-alone libraries. This is why there was no apparent progress in
the Window Manager for many years. The progress was sunk all into
building libraries and a toolkit, in order to make the WM and much
more besides. A lot of effort was spent on abstractions to ensure we
have many years of smooth sailing into the future. When we do things
we often go and build libraries first, and then try and make them
applicable to much more than just the simple problem being solved in
Enlightenment, which adds overhead, but provides valuable resources
for developers other than us who wish to re-use that effort in their
own creations.
== PORTING MATTERS ==
We, as a group, primarily work on Linux systems. We have developers
who use and focus on others like MacOS-X, Windows, the BSD's even PS3.
We care about porting, and that often adds overhead and complexity,
but we don't have build and development farms set up for each OS out
there, so often you'll find Linux gets the support first and foremost,
and then it's improved for other targets. Sometimes we shortcut that
and do it "the Linux way" only as we have problems to solve and can
worry about other target systems later. We are always open to ways of
making that better and more portable. We welcome patches and input and
anyone willing to do the hard yards of supporting their OS.
== WE HAVE A SENSE OF HUMOR ==
We are not always that serious a bunch. We have a sense of Humor. We
exercise it regularly. You may call it "unprofessional". We call it
"having a life". :)
== THE WORLD IS NOT ENGLISH ==
Whilst most of our website is in English, as is the default language
for Enlightenment (until you change it), and it's the common language
of communication amongst developers and even a lot of users. Even so,
we realize and are fully aware that people speak other languages.
Many, in fact most of our developers are not native English speakers.
We have tried to support "the rest of the world" as much as we can and
hope to continue in future. It is an ongoing process to provide
translations and such support. Help out. We do care. We are busy. Very
busy. But we care. It should be hopefully evident in the large list of
languages Enlightenment is already translated to, partially or
completely, and the fact we support selection of keyboard layouts and
input methods as well. We are all UTF-8 through and through and
support right-to-left text too as well as complex composition as is
found in some languages (if you provide the right dependencies). Many
of our developers do not live in their own native languages and
countries, so we are fully aware of the challenges people face with
another language environment.
== OPEN IS BEST ==
Enlightenment and its libraries are all open source (BSD 2 clause,
LGPL or GPL for some executable binaries only). It is a mix because
the person who founded each library chose the license, or a license is
inherited from some original source. We respect that choice and
license. We believe open is best because it simply is the best way to
propagate knowledge, gain feedback and input and build a community
beyond your small borders. It gets your software onto more devices and
operating systems. It allows developers to poke and prod and find out
what is really happening. It's the most detailed documentation ever
made. It simply is better. But your "brand" of open and someone else's
may differ. That's not for us to promote or debate. There are no other
political aspirations for this project beyond that. Open is best. This
also goes for our communication. Warts and all we discuss in the open.
=== Why oh why use E? ===
So if you've managed to read this far, you're rather patient and
willing to invest more than 7 seconds on Enlightenment, but you're
probably wondering "Why on earth should I use this Enlightenment
thing? I don't want people to know I use E! They might think I do
drugs or something?". Well wonder no more! You shall now be assaulted
by our marketing blurb!
E is smaller, lighter, faster, nicer and more flexible that your
current WM, and it's old school with a new-school twist. It's trendy
and fashionable. You will simply be totally un-cool if you don't use
it. Its farts smell of roses and world peace has been known to be
solved by E. OK. Just kidding (though really... they do smell of
roses!).
In all seriousness Enlightenment is fairly lean. Considering how much
you get in return. It isn't a minimalist WM or desktop, but it is a
massively long cry from the full desktop beasts that are its peers,
even the ones that claim to be minimalist/lean. Enlightenment uses
EFL. EFL was designed to provide the core of Enlightenment, and then
some. But it was targeted at scaling down to things like mobile phones
and embedded devices. This has meant that there was a large focus on
being lean, and getting a lot of "return on investment" from the very
core that sits under E17. This of course has paid off for
Enlightenment itself rather nicely.
It only loads what it needs to, when it needs to. It caches what it no
longer needs to avoid always re-fetching it, but these caches
eventually get flushed or expire, so long-term it won't just grow
without bound in memory footprint. Rendering can be done with the CPU
and/or GPU. It's up to you. (though at the moment we don't give you
any UI controls over the rendering engine for UI content, but the
compositor allows the choice - the core toolkit is capable of it).
An E17 install on the exact same system as Unity on Ubuntu, simply
replacing unity can save you 200M of RAM. Not to mention be snappier
and more responsive. You will never know until you try, so why not at
least give it a go? You run fewer processes since E17 now handles
being the panel, filemanager, window manager and compositor (and more)
all at once. It amortizes the cost of all these common components into
a single process. You start quickly and you are now just a really cool
person.
Enlightenment and EFL provide over-the-top power when it comes to
re-skinning or theme changes. You can change not just colors and
background images, but entire animations, multiple layers of imagery
scaled, aligned and laid out to please. It's like Photoshop or The
GIMP, but on steroids riding a train of rabid camels. If anything it
may be an Achilles heel given how much power is exposed, but hey,
that's what we have. If you are an artist, designer or skinner, you
could hardly do much worse than E17. Wallpapers don't just have to be
images. They can be complete interactive animations. You can provide
multiple resolutions of your imagery all in-line in the same file and
have the "best one chosen automatically" based on size. It's all like
layers that are sized, scaled, aligned and arranged relative to
each-other and every UI element is a collection of these. You can have
it animate base on input events, or time. And not just the wallpaper.
Anything in E17 can do this. Fade layers in and out, change their
sizes, image content and more. Make your art come to life.
And for the tweaker heads amongst you, there is an option for every
occasion. We don't go quietly into the night and remove options when
no one is looking. None of those new big version releases with fanfare
and "Hey look! Now with half the options you used to have!". We sneak
in when you least expect it and plant a whole forest of new option
seeds, watching them spring to life. We nail new options to walls on a
regular basis. We bake options-cakes and hand them out at parties.
Options are good. Options are awesome. We have lots of them. Spend
some quality time getting to know your new garden of options in E17.
It may just finally give you the control you have been pining for.

53
pages/about-rage.txt Normal file
View File

@ -0,0 +1,53 @@
==== Rage ====
[[download|Download Rage Here]]
{{:icon-rage.png?nolink |}}
Rage is a video and audio player written with Enlightenment Foundation
Libraries with some extra bells and whistles.
{{ :rage-main.png?&300|}}
It is a simple video and audio player intended to be slick yet
simplistic, much like Mplayer. You can provide 1 or more files to play
on the command-line or just DND files onto the rage window to insert
them into the playlist. You can get a visual representation of
everything on the playlist by hitting the / key, or just hovering your
mouse over the right side of the window. Mouse back over the left side
of the window ti dismiss it or press the key again. It has a full
complement of key controls if you see the README for the full list. It
will automatically search for album art for music files, if not
already cached, and display that. It even generates thumbnails for the
timeline of a video and allows you to preview the position on
mouseover of the position bar at the bottom of the window.
{{:rage-music1.png?nolink |}}
It has a special music mode where it will try and fetch album covers
by searching for them if missing (and caching them locally for future
use). Make it easier to see what musinc is coming up next just by
recognizing the album cover or image in the playlist.
{{ :rage-music2.png?nolink|}}
Your playlist isn't just still thumbnails, but a full live playback of
the video in-place. No need to decipher what the media is from a
single badly chosen thumbnail, but actually watch whole sequences to
know what is there. Scroll through massive lists all you like.
{{:rage-playlist.png?&300 |}}
If you want to seek to a specific part of the video you know well,
just hover the mouse over the seke bar and get thumbnails of what part
of the timeline. **WARNING!** Spoiler alert!
{{ :rage-thumbnails.png?&300|}}
If you want a simple video player like MPlayer, but with a few more
visual niceties, then Rage may be for you. Almost all of the nuts and
bolts it relies on for video playback and UI are provided by EFL
itself or by something EFL wraps, like GStreamer, Xine, VLC etc. Since
it uses EFL, Rage will work in X11, Wayland, even the raw framebuffer.

154
pages/about-terminology.txt Normal file
View File

@ -0,0 +1,154 @@
==== Terminology ====
[[download|Download Terminology Here]]
{{:icon-terminology.png?nolink |}}
{{ :terminology-ls.png?&200|}}
Terminology is a terminal emulator for Linux/BSD/UNIX etc. systems
that uses EFL and has a whole bunch of bells and whistles. Use it as
your regular vt100 terminal emulator along with all the usual things
like 256 color support (we attempt to emulate Xterm as closely as
possible in most respects).
Of course since it uses EFL, it works in X11, under a Wayland
compositor and even directly in the framebuffer on Linux. Replace your
boring text-mode VT with a graphical one that requires no display
system.
We have config panels (just press right mouse or hold left mouse down for
about a second) and you can even customize the colors to your own
liking or just use the colors specified with your theme.
{{:terminology-colors.png?&200 |}}
Run all your regular terminal apps, like top, htop, ls, emacs, vim, mc
etc. as you always have, and enjoy one of the fastest terminal
emulators around in terms of it handling I/O. No waiting for scrolling
any longer than the application generating the output spends.
Terminology will keep scrollback in RAM, not on any file on disk to
keep things a bit more secure. In addition scrollback is compressed on
the fly to save space. It can even use OpenGL to render if you have
configured the acceleration preferences for EFL (Elementary).
{{:terminology-htop.png?&200 |}}
You will have a nice and unmistakable visual bell to let you know
something is wrong, as well as sound to get your attention (can be
turned off by muting alerts).
{{ :terminology-bell.png?&200|}}
Terminology understands full file paths, URL links and email addresses
in the terminal and will underline them on mouse-over so you can click
and get more information such as gravatar information for that e-mail
address, or to download the file from a url (and if it's a video or
animated gif, play it, otherwise just display it).
{{ :terminology-link.png?&200|}}
Down't be mystified as to what is going on while it downloads, as
you'll get a nice progress bar to let you know how things are going,
{{:terminology-download.png?&200 |}}
And when the file is ready (instantly if local), it will display the
file for you in a nice popup inside the Terminal. It saves bringing up
another GUI application if all you wanted was to quickly see what was
going on in that file or URL. Of course Terminology can be configured
to bring up files with external application helpers.
{{ :terminology-gif.png?&200|}}
Never again be stuck not being able to see cats do stupid things in
animated gifs when you don't have your web browser available. Your
terminal can give you all the fluffy fun you wanted by itself. You can
even use tycat (a special cat tool that provides metadata for
Terminology via escape sequences), to literally "cat" content inline
in your terminal. it even remembers it in scrollback. Even if it is a
video file. Scroll back and the video will play. With sound as well
(and controls to seek, pause etc.).
{{:terminology-png.png?&200 |}}
Your image files will come up with all their glorious alpha channel
goodness. Even SVG files will scale properly, PDFs and PS files will
be visible and scalable. If you have libreoffice installed, you can
even cat PPT, ODP, DOC and even XLS files if you want.
{{ :terminology-cat-video.png?&200|}}
But don't just click on links or use "typop" to pop up files, and tycat
them, but even set them as backgrounds too. "tybg" can set a
background to any file you like, from a simple JPEG or PNG file
through to SVG, even MP4 videos, animated gifs, even PPT files can
become your terminal background if you like. Love that presentation on
rising finacialization of market innovation? Never live without it
again! Set it as a background and enjoy it all day, every day. In your
terminal. Want to watch a video of clouds drifting by in your terminal
while using "tyls" to list files... along with their thumbnails? never
fear! Terminology will come to your rescue. Have cats trying to jump
and fail miserably by plummeting to the floor? You can have it all NOW!
{{:terminology-bg-video.png?&200 |}}
Also need translucency, so you can see what is below your terminal?
Fret not! Terminology has this bell and whistle also nicely stashed in
its chest of visual features. Feel free to set it to 0% to make your
display totally unusable as no background is then provided and you can
see everythnig behind clearly.
{{ :terminology-transparency.png?&200|}}
Is this not enough? Never mind then, We also have Tabs. Good
old-fashioned Tabs the way most people like them. Lined up along the
top of your terminal showing the current title for that Tab. And fear
not - your background videos will still play across all the Tabs you
have. Yes - the ones in hidden Tabs wil be "paused" (actually entirely
evicted from memory until you come around to open up that Tab again).
{{:terminology-tabs.png?&200 |}}
But do you want something a bit funkier with Tabs? Then hit the 4
boxes at the top-right of a terminal, or hit CTRL+SHIFT+Home and go
into "Tab switcher" mode. A grid of terminals much like Esposé will
do will appear. You can navigate with the mouse or keyboard and
select what you want. All the miniatures wil be live, showing
current content scrolling by or updating, and if they have a
background - even a video, it will be playing. Live.
{{ :terminology-tab-switcher.png?&200|}}
If Tabs are not enough, Terminology also offers Splits. This allows
you to split the terminal into panes with a left/right half, or
top/bottom half. Splits can nest, so you can split a Split again as
many times as you like. They are resizable, and each Split can hold as
many Tabs as you like. So slice and dice your terminal any way you like.
{{:terminology-splits.png?&200 |}}
But don't worry, all your Splits will keep playing your videos,
displaying your wallpapers and updating their content as you might
expect them to.
{{ :terminology-splits-full.png?&200|}}
And of course we have a large set of configuration options as well.
Want something to behave a bit differently, or change look? Switch
theme? Select background visually? Change font and sizing? Just right
click or hold left mouse down and bring up the settings panels.
Customize to your liking. Terminology will store your changes for
future annoyance (unless "Temporary" is selected).
{{:terminology-settings.png?&200 |}}
Of course if a bunch of still images is not enough for you, Below we
have a video showing off more of what Terminology can do for you. It
showcases most of the features, but just know that features keep being
added all the time, and this may not represent everything you can do
today.
{{youtube>ibPziLRGvkg?large}}

164
pages/about.txt Normal file
View File

@ -0,0 +1,164 @@
==== More than a Window Manager ====
Long ago Enlightenment was just a project to make a Window Manager for
X11. It has grown a lot since then to well over 1 million lines of C
code in just the EFL libraries alone, as well as a Window Manager, and a
set of applications. There is a vibrant and active community of
developers and users who work on the code, use it every day and enjoy
their environment.
----
=== Enlightenment ===
{{ :shot-enlightenment.png?nolink&480|Enlightenment Sample screenshot}}
The original reason Enlightenment exists - The Window Manager. From
here everything else spawned. This is really the flagship product,
closely followed by EFL itself. The window manager is a lean, fast,
modular and very extensible window manager for X11 and Linux. It is
classed as a "desktop shell" providing the things you need to operate
your desktop (or laptop), but is not a whole application suite. This
covers launching applications, managing their windows and doing other
system tasks like suspending, reboots, managing files etc.
We are moving to wards Wayland as the base display system where
Enlightenment is beeing worked on to become a full Wayland compositor
on its own. This of course takes time and has its rough edges along
the way, but we are not standing still, and one day will leave X11
behind.
Of course Enlightenment is built on top of EFL, using the libraries we
wrong for it to do its UI as well as to run the entire compositor
itself. This means that any improvements to EFL turn up in the
compositor as well.
Enlightenment also is the Window Manager and Compositor for Tizen due
in part to its efficiency and feature-set.
See our [[about-enlightenment|page about Enlightenment]] for more
details.
----
=== Libraries ===
{{ :efl-core.png?nolink|Core libraries}}
Our libraries are commonly known as EFL (Enlightenment Foundation
Libraries), which include EFL proper as well as Elementary which is a
high-level API layer with widgets and portability foremost in mind.
{{:os-logos.png?nolink |Platform Support}}
We primarily work on Linux, which means that most Linux distributions
and OSs like Tizen should be well supported out of the box. There are
efforts to also work on Windows and Max OS X. There are varying degrees
of completeness here. For windows please see our
[[https://phab.enlightenment.org/w/windows|Windows]] development wiki
page, or see
[[http://http://win-builds.org|Win-Builds]] which ships EFL for
Windows and even uses it for the package updater GUI. For MAC OS X
information, please see our [[https://phab.enlightenment.org/w/osx|OS X]]
development wiki for more information.
Enlightenment libraries already power millions of systems, from mobile
phones to set top boxes, desktops, laptops, game systems and more. It
is only now being recognized for its forward-thinking approaches, as
products and designers want to do more than the boring functional user
experiences of the past. This is where EFL excels.
[[http://www.free.fr|Free.fr]] has shipped millions of set top boxes in
France, powered by EFL. The
[[http://wiki.openmoko.org/wiki/Neo_FreeRunner|Openmoko Freerunner]]
sold thousands of devices with EFL and Enlightenment on them.
[[http://www.yellowdoglinux.com/|Yellow Dog Linux]] for the Sony PS3
ships with Enlightenment as the default. EFL has been used on printers,
netbooks and more. It powers the
[[http://www.samsung.com/us/mobile/wearable-tech|Samsung Galaxy Gear]]
watches, is behind the
[[http://www.samsung.com/in/consumer/mobile-phone/mobile-phone/dual-sim-phone/SM-Z130HZKDINS|Samsung Z1 Phone]]
and the
[[http://www.samsung.com/us/video/4k-suhd-tv|Samsung SUHD Smart TVs]]
that run Tizen. Cameras also use Enlightenment and EFL such as the
[[http://www.samsung.com/uk/discover/camera/find-your-signature-with-samsung-nx1/|Samsung NX1]]
and the
[[http://www.samsung.com/global/nx/nx300m/|Samsung NX300M]] smart
Camera. Also GPS units such as models from
[[https://www.moncoyote.com/|Coyote]] Run EFL on a lean and mean RTOS.
Also Web conference cameras such as
[[https://www.biscotti.com/|Biscotti]] use EFL to do their work.
EFL covers a wide range of domains from IPC to Graphics through to
Audio and even location. Some of the covered domains are:
* Widgets and UI controls in general
* Core mainloop and event processing
* Rendering via scene graph
* Thumbnailing
* Video and audio media playback
* Physics
* IPC locally and across the internet
* D-Bus
* Data structures for C (Lists, Hashes, Trees etc.)
* Data serialization and de-serialization
* Image encoding/decoding
* Data archive handling
* Freedesktop.org standard support
* C Object model
* Compression and encyrption
* VM bytecode engine and compiler
* UI data file theme and layout abstraction
* Device acces and tracking
* Async I/O
* Input method handling
* Easy file handling utilitys
* Audio playback and recording
* Avahi handling
* Framebuffer, Wayland X11, Windows, OSX Cocoa, SDL, PS3, Linux DRM handling
See our [[about-efl|page about EFL]] for more details.
----
=== Applications ===
We also write applications that use EFL. You can take these as
examples of what EFL is able to do and of how to drive it to be useful
for you, but not just that. To be actually useful applications day in
and out.
{{:icon-terminology.png?nolink |}}
== Terminology ==
The first application a hacker really needs all day, every day, is a
terminal emulator. Terminology is not just a simple stripped-down
terminal to get the job barely done. It's bristling with features you
find in the more advanced terminals and then with many found nowhere
else. Tabs, splits, 256 color support, Wallpapers - even animated
ones, Inline display of media (click on a file path to a video and
watch it play inline), link detection, compressed scrollback in RAM,
translucency and a gorgeous look and feel that lets you think of
terminal screens of old.
See [[about-terminology|the Terminology page]] for more details.
{{:icon-rage.png?nolink |}}
== Rage ==
Need a clean and simple video player much like MPlayer? Then look no
further. Not onlky does it focus on video by not filling your window
with controls and menu bars and what not (simply displaying them
overlayed on mouseover), but it also does thumbnails of the timeline
of a video as well as a live playlist which will show all videos in it
actually running and playing. It has full keyboard and mouse controls
as well as supporting Drag and Drop to add more files to your
playlist. Oh and it also has an audio-only mode to grab album cover
images and cache them.
See [[about-rage|the Rage page]] for more details.

82
pages/contact.txt Normal file
View File

@ -0,0 +1,82 @@
==== IRC ====
^IRC Server ^Port ^Channel ^
|[[http://www.freenode.net|irc.freenode.net]] |6667 |#e |
Many of the core developers involved in Enlightenment as well as a lot
of users are on IRC. They use IRC often and will discuss many
development issues there instead of e-mail, due to it having immediate
feedback as well as convenient shared discussion channels.
We use the Freenode IRC network, and you will find us on the #e
channel. You can use a, IRC client like X-Chat, Konversation, Pidgin,
and many others. If your client already has a listing for
freenode, just select it. If not just set up the server as
irc.freenode.net as your server with the normal IRC port of 6667. Once
connected just join #e (you can just type in the command: /join #e
then Enter). Just type + press Enter to talk.
==== E-Mail ====
^Mailing List ^Archive^
|[[http://lists.sourceforge.net/lists/listinfo/enlightenment-users|Users]]|[[http://sourceforge.net/mailarchive/forum.php?forum_name=enlightenment-users|Archive]]|
|[[http://lists.sourceforge.net/lists/listinfo/enlightenment-devel|Developers]]|[[http://sourceforge.net/mailarchive/forum.php?forum_name=enlightenment-devel|Archive]]|
|[[mailto:git+help@lists.enlightenment.org|Git Commits]]|[[http://sourceforge.net/mailarchive/forum.php?forum_name=enlightenment-git|Old Archive]]|
Our primary non-realtime form of communication is via e-mail. This
allows everyone to participate no matter what timezone the live in or
what waking hours they keep. It allows for streamlined access via your
favorite e-mail application, which should handle large volumes of
messages and conversations well already. It allows for off-line
reading and replies (unlike web forums or IRC),
The language used on our mailing lists is English. It is a universal
language that more people speak than any other, so if you want to
participate, please use English, and then everyone can understand and
respond. Also note that these lists are public and everyone sees the
e-mails sent to them, and anyone may respond. Not all answers will be
correct, but the vast majority will be.
In addition to the lists being a forum for questions, suggestions and
other such discussions, they are also used as a news feed. Especially
our [[mailto:git+help@lists.enlightenment.org|commits mailing list]].
Every piece of code changed, bug fixed, or feature added will be
broadcast on our commits mailing list. If you want to know what is
going on, our commits list is an absolute must to subscribe to.
We have 3 main lists.
[[mailto:git+help@lists.enlightenment.org|The GIT Commits List]] is
for sending out notices of every commit that happens to our
repositories, with full source diffs, log and who did the work.
[[http://lists.sourceforge.net/lists/listinfo/enlightenment-devel|The Devel List]]
is where most of the developer and development discussions happen.
This list will be more technical that the
[[http://lists.sourceforge.net/lists/listinfo/enlightenment-users|Users List]].
The Users List is where regular user discussions will happen.
[[http://lists.sourceforge.net/lists/listinfo/enlightenment-intl|The Intl List]]
is for posting changes to internationalization like updated PO files.
==== Bugs ====
We use [[https://phab.enlightenment.org|Phabricator]] for our bug
tracking and Wiki. If you have a bug or issue, please Report a bug.
We will eventually get to it, but try and assign it to someone
appropriate so it gets attention.
Please use [[https://phab.enlightenment.org/maniphest|Maniphest]]
for bugs, not for discussions or feature requests or for "I don't
know how to do this" questions. It's for reporting actual problems.
For questions we have E-Mail and IRC. Also remember that we will
prioritize bug fixing to those things that are core, urgent or
necessary, so just because a report isn't acted on soon, doesn't
mean we won't eventually get to it. Once it's in the system it
won't disappear. It just takes it being noticed.
We have a wiki-based primary website (this one), and a "technical
wiki" over on Phabricator. It happens to be split this way simply due
to history and that this wiki here is newer, replacing static web pages.
* [[https://phab.enlightenment.org/maniphest|Report a Bug]]
* [[https://phab.enlightenment.org/w|Technical Wiki]]

137
pages/doc-efl-start.txt Normal file
View File

@ -0,0 +1,137 @@
==== Get The Source ====
As any general anonymous user for the EFL core libraries:
<code bash>
git clone http://git.enlightenment.org/core/efl.git
git clone http://git.enlightenment.org/core/emotion_generic_players.git
git clone http://git.enlightenment.org/core/evas_generic_loaders.git
git clone http://git.enlightenment.org/core/elementary.git
</code>
And for some sample well developed / maintained applications
<code bash>
git clone http://git.enlightenment.org/core/enlightenment.git
git clone http://git.enlightenment.org/apps/terminology.git
git clone http://git.enlightenment.org/apps/rage.git
</code>
For libraries (build these before applications), build them in order:
* efl
* emotion_generic_players
* evas_generic_loaders
* elementary
Building each library or application is the same. Before you start you
will want basic build tools installed such as:
* gcc or clang
* make
* autoconf 2.59 or better
* automake 1.10 or better
* autopoint
* libtool
* gettext
* check
You will want to ensure the default prefix ''/usr/local'' is avilable
to build tools. If you know what you are doing, you can change the
prefix, but this heere shall assume you do not, and the above prefix
is used. These environment variables are used during build, so you may
want to make them more permanent.
<code bash>
export PATH=/usr/local/bin:"$PATH"
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:"$PKG_CONFIG_PATH"
export LD_LIBRARY_PATH=/usr/local/lib:"$LD_LIBRARY_PATH"
</code>
Note the ''LD_LIBRARY_PATH'' environment variable is set. You can
ensure the system always supports ''/usr/local/lib'' by editing
''/etc/ld.so.conf'' or adding a file to ''/etc/ld/so/conf.d'' and
simply have a line in either file that says:
<code bash>
/usr/local/lib
</code>
And rememeber to run ''sudo ldconfig'' tool every time you install a
library to ensure caches are updated.
For every library or application simply run the following:
<code bash>
./autogen.sh
make
sudo make install
</code>
If configure fails, you are likely missing a dependency - provide it.
It should tell you what that dependency is. **NOTE** that you can
provide configure arguments to autoogen.sh such as ''--prefix=/opt/e''
or similar. It would be highly suugested you provide the following
dependencies before you begin compilation:
* libpam
* freetype 2.3 or better
* libpng
* libjpeg
* zlib
* libdbus
* luajit
* libx11
* libxcursor
* libxrender
* libxrandr
* libxfixes
* libxdamage
* libxcomposite
* libxss
* libxp
* libxext
* libxinerama
* libxkbfile
* libxtst
* libxcb
* libxcb-shape
* libxcb-keysyms1
* libpulse
* libsndfile
* libudev //(for eeze udev support)//
* libblkid & libmount **OR** libutil-linux
* libgstreamer 1.0 or better
* vlc //(for emotion_generic_players)//
* libtiff
* giflib
* curl
* openssl
* opengl //(mesa or vendor supplied desktop OpenGL or OpenGL-ES2)//
* libspectre //(for evas_generic_loaders)//
* poppler //(for evas_generic_loaders)//
* librsvg //(for evas_generic_loaders)//
* libraw //(for evas_generic_laoders)//
* libxine //(for emotion xine back-end support - optional)//
For debugging you really want tools like these installed:
* gdb
* valgrind
* perf
----
=== Developer git access ===
If you get git commit access simply use
<code bash>
git clone git+ssh://git@
</code>
instead of
<code bash>
git clone http://
</code>

29
pages/docs.txt Normal file
View File

@ -0,0 +1,29 @@
==== Getting into Development ====
If you are going to use EFL, we encourage you to actually work with
EFL from [[http://git.enlightenment.org|git]] mostly because it allows
you to either track stable branches to get latest fixes long before a
release is out, ore to track latest features and development
continually. This is also the case if you want to contribute. Of
course you can use stable packages for your distribution as well.
* [[doc-efl-start|Get EFL installed]]
----
==== API Documentation ====
Our documentation is a bit scarce at the moment, but that is something
we intend to solve. We will collect all documentation here and work on
improving our API references a lot.
=== Stable ===
* [[http://docs.enlightenment.org/stable/efl|EFL]]
* [[http://docs.enlightenment.org/stable/elementary|Elementary]]
=== Development ===
* [[https://build.enlightenment.org/job/nightly_efl_gcc_x86_64/lastSuccessfulBuild/artifact/doc/html/index.html|EFL]]
* [[https://build.enlightenment.org/job/nightly_elm_gcc_x86_64/lastSuccessfulBuild/artifact/doc/html/index.html|Elementary]]
* [[https://build.enlightenment.org/job/base_pyefl_build/lastSuccessfulBuild/artifact/build/sphinx/html/index.html|Python Bindings]]

84
pages/download.txt Normal file
View File

@ -0,0 +1,84 @@
==== Download ====
We place all of our releases here:
* [[http://download.enlightenment.org/rel/|download.enlightenment.org]]
When compiling from source, our core libraries likely should be build
in this order:
* EFL
* Evas Generic Loaders
* Emotion Generic Players
* Elementary
After this build applications however you like (e.g. Enlightenment,
Terminology etc.) Please see the README files for projects for
information on dependencies, configuration etc. Just remember that all
our release tarballs come with configure set up so to compile you just
need to do:
<code bash>
./configure
make
sudo make install
</code>
==== Releases ====
Our latest releases are:
^Library^Version^
|[[http://download.enlightenment.org/rel/libs/efl/efl-1.13.0.tar.gz|EFL]]|1.13.0|
|[[http://download.enlightenment.org/rel/libs/elementary/elementary-1.13.0.tar.gz|Elementary]]|1.13.0|
|[[http://download.enlightenment.org/rel/libs/emotion_generic_players/emotion_generic_players-1.13.0.tar.gz|Emotion Generic Players]]|1.13.0|
|[[http://download.enlightenment.org/rel/libs/evas_generic_loaders/evas_generic_loaders-1.13.0.tar.gz|Evas Generic Loaders]]|1.13.0|
^Application^Version^
|[[http://download.enlightenment.org/rel/apps/enlightenment/enlightenment-0.19.4.tar.gz|Enlightenment]]|0.19.4|
|[[http://download.enlightenment.org/rel/apps/terminology/terminology-0.8.0.tar.gz|Terminology]]|0.8.0|
|[[http://download.enlightenment.org/rel/apps/rage/rage-0.1.0.tar.gz|Rage]]|0.1.0|
|[[http://download.enlightenment.org/releases/expedite-1.7.9.tar.gz|Expedite]]|1.7.9|
|[[http://download.enlightenment.org/rel/apps/econnman/econnman-1.1.tar.gz|Econnman]]|1.1.0|
|[[http://download.enlightenment.org/rel/apps/epour/epour-0.6.0.tar.gz|Epour]]|0.6.0|
==== Source ====
Out source code is developed collaboratively in a pretty typical open
source manner. Our master branches are where all new development goes
into. We try and keep master working and usable daily, as developers
geenerally are living off master themselves and so bugs affect
developers directly and immediately. Sometimes issues happen, but
they tend to get fixed rapidly.
If you want to track the latest and greatest, please see our git
repositories. If you havev issues please refer to our [[contact]]
page to get in touch with us.
All our git repositories are listed on:
* [[http://git.enlightenment.org|git.enlightenment.org]]
----
=== Enlightenment DR16 ===
Some people still like to use our legacy WM codebase and it is still
maintained. The latest version of DR16 is 1.0.16, released on February
21st, 2015. Packages for the current, and previous, releases of DR16,
core themes, epplets, e16menuedit, e16keyedit, and imlib2 can be found
on the
[[http://sourceforge.net/project/showfiles.php?group_id=2|SourceForge download page]].
DR16 is available on a number of different *NIX platforms. Please
choose from the list of available distributions the one that is right
for you.
^Package^Link^
|Source Code TAR.GZ|[[http://prdownloads.sourceforge.net/enlightenment/e16-1.0.16.tar.gz?download|e16-1.0.16.tar.gz]]|
|Source Package RPM|[[http://prdownloads.sourceforge.net/enlightenment/e16-1.0.16-1.fc21.src.rpm?download|e16-1.0.16-1.fc21.src.rpm]]|
|Linux ix86 Binary RPM|[[http://prdownloads.sourceforge.net/enlightenment/e16-1.0.16-1.fc21.i686.rpm?download|e16-1.0.16-1.fc21.i686.rpm]]|
|Linux x86_64 Binary RPM|[[http://prdownloads.sourceforge.net/enlightenment/e16-1.0.16-1.fc21.x86_64.rpm?download|e16-1.0.16-1.fc21.x86_64.rpm]]|
|Gentoo Linux|[[http://packages.gentoo.org/package/x11-wm/enlightenment|e16 ebuilds]]|

96
pages/example.txt Normal file
View File

@ -0,0 +1,96 @@
This will be some sample content. nothing more.
====== Level 1 Headline ======
Paragraph here
===== Level 2 Headline =====
Paragraph here
==== Level 3 Headline ====
Paragraph here
=== Level 4 Headline ===
Paragraph here
== Level 5 Headline ==
A horizontal rule goes below.
----
This is the first paragraph of the page. We should test a long one to
see how wrapping and other formatting works with it. **Bold Text**
works. //Italic Text// also works. __Underlined Text__ is fine as
well. ''Monospaced Text'' is there too. <del>Strike-through Text</del>
is also not a problem.
- Ordered List Item
- Item 2
- Last item
* Unordered List Item
* Item 2
* Third item
* Last item
An external link like: [[http://example.com|External Link]] would go here.
And here is an inlined image, centered and scaled to 100px wide.
{{ :goat.gif?nolink&100 |}}
Sample code snippets and hilights
<code c>
typedef struct blah Blah;
int c;
void function(char *blah) {
double x;
This_Type *y;
Type_Here *z;
int e = ENUM_HERE;
x = 10;
char *p = malloc(10);
evas_object_del(p);
}
</code>
<code lua>
function hello(x)
local y
end
</code>
This should become a link to the [[start]] page. How about the [[blah]]
page too. Test autolink with evas_object_del() as a keyword.
Below between the hr's should be an externally included wiki page
----
{{page>blah}}
----
So how about Tables? well let's try one:
^ Header 1 ^ Header Column 2 ^ Column 3 header ^
| Cell 1 | Cell 2 | Cell 3 |
| Cell 1 | Cell 2 | Cell 3 |
| Cell 1 | Cell 2 | Cell 3 |
| Cell 1 | Cell 2 | Cell 3 |
And quotes:
Some text
> Quote this level
>> Another level
>>> Yet another level
----
~~DISCUSSIONS~~

0
pages/latest-event.txt Normal file
View File

5
pages/latest-release.txt Normal file
View File

@ -0,0 +1,5 @@
== EFL 0.13 and Enlightenment 0.19.4 are out ==
//Please go to our [[download]] page to get the latest releases.//
----

View File

@ -1,58 +1,41 @@
{{page>latest-event}}{{page>latest-release}}
====== Level 1 Headline ======
==== Window Manager ====
Paragraph here
{{ :shot-enlightenment.png?nolink&480}}
===== Level 2 Headline =====
[[:about-enlightenment|Enlightenment]] started as a project to build a Window Manager for X11. That was way back in 1996. It has grown much since. It still produces this Window Manager, but it has evolved to also cover Mobile, Wearable and TV UI needs for projects such as [[http://www.tizen.org|Tizen]] as well as traditional the "desktop" UI. We still push out releases, so see our [[:download|download]] page for more details on the latest releases, or see our [[:contribute|contribute]] page for source code repositories in their latest development state.
Paragraph here
It also is in the transition from [[http://www.x.org|X11]] to [[http://wayland.freedesktop.org|Wayland]]. We are fully committed to moving to Wayland eventually as this is definitely the future of the graphical display layer on Linux.
==== Level 3 Headline ====
Paragraph here
=== Level 4 Headline ===
Paragraph here
== Level 5 Headline ==
A horizontal rule goes below.
We still primarily support Linux for Enlightenment, but there is some effort (based on help and support from users and some developers) to support the BSDs.
----
This is the first paragraph of the page. We should test a long one to see how wrapping and other formatting works with it. **Bold Text** works. //Italic Text// also works. __Underlined Text__ is fine as well. ''Monospaced Text'' is there too. <del>Strike-through Text</del> is also not a problem.
==== Libraries ====
- Ordered List Item
- Item 2
- Last item
{{ :diagram-block-efl.png?nolink&}}
* Unordered List Item
* Item 2
* Third item
* Last item
In the process of developing a Window Manager, A set of libraries were developed in order to achieve that goal. These libraries are known collectively as [[:about-efl|EFL]]. They cover a range of functionality from main-loop, to graphics, scene graphs, networking, widgets, data storage, IPC and much more.
An external link like: [[http://example.com|External Link]] would go here.
We now are starting to pull in bindings support directly into EFL. We are working on having bindings auto-generated for C++, Lua and Javascript (v8/node.js). We also would like to pull in our Python bindings in future so we can support as many languages as possible and keep them up to date.
And here is an inlined image, centered and scaled to 100px wide.
For our libraries, our primary development envrionment is Linux, but we make an effort to support the BSDs as fully as possible, as well as OSX and Windows.
{{ :goat.gif?nolink&100 |}}
----
Sample code snippets and hilights
==== Applications ====
<code c>
typedef struct blah Blah;
int c;
void function(char *blah) {
double x;
x = 10;
}
</code>
{{:shot-terminology.png?nolink&240 }}
<code lua>
function hello(x)
local y
end
</code>
We eat our own dog food. We use our libraries not just to make [[:about-enlightenment|Enlightenment]] but to also make other applications for regular every-day use. We make these applications available for free.
This should become a link to the [[start]] page. How about the [[blah]] page too.
{{ :shot-rage.png?nolink&240}}
We have some of the usual suspects like a [[:about-terminology|terminal emulator]], a [[:about-rage|video player]], and even the start of an IDE.
Even [[http://www.tizen.org|native Tizen applications]] use EFL for their development because we have focused on remaining lean and still featureful. Unlike many traditional toolkits, we have based ourselves around a scene graph from the ground up, making EFL very different in nature, yet allowing us to seamlessly switch from software rendering to OpenGL or any other mechanism that can be put in a render engine for the canvas scene graph engine we call Evas as well as layer widgets and objects with alpha channels from the ground up and no special tricks.
{{:shot-edi.png?nolink&240 }}
This is by no means a complete list of applications, and we are not done making more. We may not have started the traditional way, but are building our library over time, and Tizen has another library brewing over there as well.