[Geoffrey W. Corey]
by Geoffrey W. Corey <coreyg(at)mindspring.com> About the author: Computers is my hobby and my profession, however my life is my family. I'm the proud father of a 4-year old boy Joshua and 10-month old twins, Aaron and Ryan. Jennifer, my wife, is the best and supports me in my strange career in computers. I currently work at a small outsourcing firm ClientLink and specialize in very large databases and object oriented analysis & design. Content: |
Abstract:
Enlightenment is a highly customizable window manager for Linux. This article discusses the features, installation, and customization of the Enlightenment window manager. The current release of Enlightenment is still considered a development release. The intended audience for this article should have a good knowledge of developing and compiling programs on Linux.
Word of warning, you'll probably need a decent processor and graphics card to get the most of this window manager. I currently run Enlightenment at home on a Pentium 90 with a Vision 864 S3 graphics card with 2mg of memory. I would consider this setup as the bare minimum requirement. However there are themes for lower resolution bandwidth such as the "Executive" theme.
The following is a thumbnail image of the default theme for Enlightenment.
Located on the lower left-side are the virtual desktops. Clicking on these will allow you to jump to the different desktops. You will notice that the image on the virtual desktop will resemble the layout of windows on that desktop. You can actually move windows in the virtual desktop by dragging them to the desired position.
Located on the upper right-side is the icon box. When you minimize an x-window the icon is placed in the icon box. You can scroll through the icon box if you have filled it up by clicking on the scrolling buttons located above and below the iconbox. Icons can be expanded by dragging the icon onto the desktop.
The middle of the screen you can see a popup menu. Popup
menus can be viewed by right, middle, or left clicking on the desktop.
The Default Theme
Enlightenment Screenshot
Creativity in computing is not dead thanks to the individuals that bring Linux alive!
First, you will need to get the latest libraries for Imlib at ftp.enlightenment.org/enlightenment/enlightenment/libs/. Most problems will occur if you install the latest libraries and still have the old versions laying around. RPM's are available for all libraries. Check /usr/lib for duplicate libraries as it pertains to z, tiff, jpeg, png, and Imlib. Clean it up so only the latest are installed.
Now there is an RPM for Enlightenment. You can try it and install the RPM and see if it works. To start Enlightenment, edit your .xinitrc file in your home directory, and add the following line:
exec /usr/local/enlightenment/bin/enlightenment
Save the file and then enter the following on the command line and hit return. Note: Enlightenment has spectacular graphics and is best to run in the highest resolution with the most colors. 16-bit color really should be the minimum.
startx -- -bpp 16
Now, if Enlightenment fails to execute, you should see the reason at the end of the X windows startup info. You can either figure out what the deal is, or try and compiling the source yourself.
Now if linking failed because it didn't find png, jpeg, or tiff commands then edit the Makefile and search for LOCAL_LIBRARIES and make sure it looks like the following:
LOCAL_LIBRARIES = -lImlib -ltiff -lgif -ljpeg -lpng -lz
Do a 'make install' and everything should work fine. If it doesn't, then check and see if you have eliminated duplicate libraries from /usr/lib and that the libaries are accessable from the Makefile.
exec /usr/local/enlightenment/bin/enlightenment -theme Neuromancer
Now just startup X in 16 bit mode.
startx -- -bpp 16
What enlightenment does is looks for a file called Neuromancer or a directory called Neuromancer in /usr/local/enlightenment/themes directory. As you can see, each theme is very unique and allows quite a bit of creativity by the theme authors.So what is a theme? Well, the theme file you downloaded is really a compressed tar file (.tgz). Usually the extension is left off the file, however you can decompress and untar the file. Next we will do just that and try to customize some of the menus and buttons in a theme.
cd /usr/local/enlightenment/themes $ cd /usr/local/enlightenment/themes $ mv DEFAULT DEFAULT.tgz $ tar zxvf DEFAULT $ cd DEFAULT $ ls -rw-r--r-- 1 1000 bin 2929 Jul 25 1997 MAIN -rw-r--r-- 1 1000 bin 7015 Jul 31 1997 buttons -rw-r--r-- 1 1000 bin 952 Aug 29 1997 control -rw-r--r-- 1 1000 bin 843 Aug 12 1997 cursors -rw-r--r-- 1 1000 bin 2885 Jul 29 1997 desktops -rw-r--r-- 1 1000 bin 510 Nov 18 17:12 exec -rw-r--r-- 1 1000 bin 567 Jul 25 1997 fx -rw-r--r-- 1 1000 bin 3239 Jul 25 1997 icons -rw-r--r-- 1 1000 bin 1074 Jul 25 1997 infobox -rw-r--r-- 1 1000 bin 6392 Jul 30 1997 keys -rw-r--r-- 1 1000 bin 41382 Aug 6 1997 menus drwxr-xr-x 4 1000 bin 2048 Jul 26 1997 pix -rw-r--r-- 1 1000 bin 452 Jul 25 1997 root -rw-r--r-- 1 1000 bin 1658 Aug 8 1997 status -rw-r--r-- 1 1000 bin 530 Jul 25 1997 text -rw-r--r-- 1 1000 bin 13222 Aug 12 1997 windowstyles
The file MAIN is what enlightenment reads first. If you
view this file you will see that it calls other files to setup the various
parts of Enlightenment. Most other themes follow the same naming
convention as the DEFAULT theme.
Note: Before you change any of the config files, BACK THEM UP!!!!
To append a menu item, just cut and paste a begin menuitem thru end to the end of the list (within the begin menu and end). For example, edit menus and search for 'Random'. This is the menu Random Garbage that appears when you right-click on the desktop. Now search for 'Xsnow' and it will bring to the bottom of the 'Random Garbage' menu list. Copy the begin menuitem thru the first end (right after 'action exec xsnow') and append before the last 'end'. Now change Xsnow to Fonts and change .action exec xsnow' to 'action exec xfontsel'. Now the tricky part has to do with location. You'll notice that Xsnow is 0 312 and size is 253 24. Don't worry about the first number. However if you divide 312 / 24 you'll get 13. That's because Xsnow is the 14th menu item (starting with menu item 0). So for Fonts we need to add 24 to 312. So change 312 to 336. We also need to change the number of items from 14 to 15 (two lines above 'Random Garbage' text) and increase the menu dimensions by 24, so change 'dimensions 253 336' to 'dimensions 253 360'
Of course the alternative is running Econfig and using a X-windows interface. I have not tried Econfig yet, but it looks to me like if would make the following procedure less painful.
Original menus excerpt ------- omitted text ------- begin menu name root3 type custom dimensions 253 336 popupdist 126 12 items 14 begin menuitem text Random Garbage ------- omitted text ------- begin menuitem text Xsnow type element location 0 312 size 253 24 text_location 5 5 text_size 243 14 image unselected pix/menu_plain_1.ppm shapemodeon 255 0 255 image selected pix/menu_plain_2.ppm shapemode on 255 0 255 action exec xsnow end end -------- omitted text ------- Modified menus excerpt -------- omitted text ------- begin menu name root3 type custom dimensions 253 360 popupdist 126 12 items 15 begin menuitem text Random Garbage -------- omitted text ------- begin menuitem text Xsnow type element location 0 312 size 253 24 text_location 5 5 text_size 243 14 image unselected pix/menu_plain_1.ppm shapemodeon 255 0 255 image selected pix/menu_plain_2.ppm shapemode on 255 0 255 action exec xsnow end begin menuitem text Fonts type element location 0 312 size 253 24 text_location 5 5 text_size 243 14 image unselected pix/menu_plain_1.ppm shapemodeon 255 0 255 image selected pix/menu_plain_2.ppm shapemode on 255 0 255 action exec xfontsel end end ------- omitted text ------
Okay, to see your handywork, left-click and select 'Exit Options' and then 'Restart'. Enlightenment will reread the config files and restart. During the restart you current session is kept so you will not lose any windows you currently have running. Once Enlightenment restarts, do a right-click on the desktop and you should see Fonts on the bottom of the list. Give it a try!
Modifying buttons is in similar fashion. Go ahead and explore
the configuration files, however remember to back them up before you make
changes!
Webpages maintained by the LinuxFocus Editor team
© Geoffrey W. Corey, FDL LinuxFocus.org |
Translation information:
|
2002年10月22日, generated by lfparser version 2.32