|
Stuff
ecomorph - OpenGL compositing managerecomorph consists of a compositing manager based on compiz(renamed to ecomp) and a modified version of e17 that works together with ecomp. note that this currently somewhere between a hack and planning/pre-alpha state. it's pretty stable for me, more stable than xcompmgr. disclaimer: it might reorder your window stacking, burn your house down, kill your cat or do anything in between.. so, you've been warned :) search youtube on ecomorph for some video footage. there is also a nice debian based live cd with which you can try and even install ecomorph: http://www.elivecd.org/Download/e17-compiz . OpenGEU, a ubuntu based distribution, provides packages for ecomorph too. For openSUSE packages, see: http://en.opensuse.org/Ecomorph Does Multihead work? yes somehow.. For this and other issues read the Ecomorph FAQ always update e.git and ecomp.git at the same time. currently there are lots of changes in the way how they communicate. so versions from different dates are NOT expected to work together
Get itcheckout with: git clone git://github.com/jeffdameth/ecomp.git git clone git://github.com/jeffdameth/ecomorph-e17.git update: git fetch && git merge origin/master (do 'git-reset --hard' in the case that merge does not work) if you have already a copy of the repo from get-e.org, you can switch the repo to github with: git remote rm origin git remote add origin git@github.com:jeffdameth/ecomp.git (in 'ecomp') git remote add origin git@github.com:jeffdameth/ecomorph-e17.git (in 'e') install patched e17 + ecomorph module: cd ecomorph-e17 ./autogen.sh && make && sudo make install or when efl was installed by easy_e17.sh: PKG_CONFIG_PATH=/opt/e17/lib/pkgconfig ./autogen.sh PATH=/opt/e17/bin/:$PATH LD_LIBRARY_PATH=/opt/e17/lib:/opt/e17/lib/eina:/opt/e17/lib/evas make sudo make install install ecomp - the patched compiz cd ecomp ./autogen.sh && make && sudo make install ecomp stores its config in ~/.ecomp the files can be edited by hand (see 'eet --help') or you can use the ecomorph module that comes with e17. packages needed to build this stuff with debian/ubuntu- git-core automake intltool libtool xorg-dev libjpeg62-dev libpng12-dev librsvg2-dev libgl1-mesa-dev libglu1-mesa-dev libxml2-dev libxslt1 libxslt1-dev libdbus-1-dev - xorg-driver-fglrx-dev or nvidia-glx-(new)-dev, when using proprietary drivers Run ite.git installs a session file named 'e17 ecomorph' that you can select in gdm, etc on login. Load the 'ecomorph' module in e and restart e. For testing you can start it manually with: 'enlightenment_start -evil' (without 'evil' it should be plain e without hints for the composite manager) 'ecomorph.sh' this works at least for ubuntu, otherwise run 'ecomorph ini' 'emerald' (for dropshadow) ... use a version from 0.7 and above. configure the shadows with emerald-theme-manager to your liking. oh and disable e's dropshadow module in any case ;) recent updates:
PLEASE USE THE ISSUE TRACKER FOR REPORTING PROBLEMS(if you post here I wont be notified by an email, and so it could take some months until I look on this page and see your comments.. anyway if you got it working(or not) and it's not a bug just post it below, but dont expect me to see it ;) ) |
Sign in to add a comment
good video of elive-compiz http://wuapi.com/video/elive-ecomorph-compizfusion?page=1&viewtype=&category=mr
hannes, what type of changes do you have in your modified version of E, and why are they not in E svn? Do you happen to have a diff file with all the changed between your repository and the main svn one?
there are quite a lot of changes in e_border especially for mapping compiz viewports to e's desktops. When I find the time to investigate in which places hooks would be needed to make a module of my modifications, then i'll discuss if these hooks could be added to e. for now you could check out e svn and diff the src dirs. the modified e is at the current svn revision.
I'm looking at the diff, and there's some files which you might want to fetch from svn, since they only produce noise:
e_manager.c - only indentation changes e_zone.c - one lone printf e_gadcon.c - one whitespace change
btw, what differences do the changes in e_gadcon_popup.c introduce? they don't seem related to ecomorph, so you might want to think about pushing them to svn. same for e_bindings.c
in e_border.c, you've removed the return value of e_border_shutdown, perhaps by mistake. And why did you move e_border_raise_stack_get to the begining of the file, but comment out the same function later on?
also, you might want to sed through the files and change the 'evil' variable to something else, so as not to clash with the bridge library for windows.
vkojouharov, hi. thanks for looking through it :) concerning e_border: really good questions. i dont know how this went in or what drove me to it back then. e had the evil option before the library of evil existed. i think there are no chances to confuse someone as e wont run on windows. someday when this might be not a collection of evil hacks anymore i'll reconsider the naming :)
maybe i should state on this site that this e is also a playground for me to try things out. the changes in e_gadcon_popup should cause the popup to be placed at the position where it will be when the shelf is completely visible, so that the gcc cannot be hidden below the popup (e.g. the battery popup shows up for a hidden shelf, then one cant click the gcc to make it disappear) i didnt test if it works with more than one zone yet. but i'll commit it to svn later. e_bindings is a workaround: if one makes a mousebinding with 'any' context it is triggered twice when clicking on the desktop, one time for zone an one time for container.
Just recompiled all this stuff for the first time since you started updating in december, and MAN is it a lot smoother. ini plugin format seems to make a big difference in plugin speed.
One thing I can't get to work: skydome. I have cube rotation working just great but no matter what I do it won't seem to set my skydome image. Has anyone else gotten a skydome image working at all? If so, do you have any special tricks you did?
Just a suggestion,- you can simplify the calls to nvidia-settings in ecomorph.sh. Most nvidia-settings calls can be appended with the -t (--terse) argument which gives only the value you want. Example: ~> nvidia-settings -t -q VideoRam? 524288
Can you let us know where is the eet config stored at present? I can't seem to locate it on my hard drive. I logged out and on next login it was back to defaults. I tried looking in ~/.e/e/config/<profile>/e.cfg but came up with nothing (FYI, I used eet -d e.cfg config e.config). Thanks, for the new config dialog :D
I should qualify what I said above: I am able to find the ecomp.eet file in /usr. It contains some default settings. However, I am unable to find a corresponding file in my home directory; in particular I am not able to determine if my custom settings made in the ecomorph settings panel are being saved. Even if they are getting saved anywhere, they are not being read the next time I log in.
I installed a .deb package which I found on the internet
here: http://www.esdebian.org/foro/26204/ecomorph-fluxbox
and I'm using Fluxbox, what I want to do is run Ecomorph with Fluxbox, and when I use ecomorph ini, or ecomorph --replace says:
ecomorph (core) - Error: Another window manager is already running on screen: 0 ecomorph (core) - Fatal: No manageable screens found on display :0.0
any help?
cool i havent heard of the project to make ecomorph run with fluxbox. unfortunately i dont speak spanish so i dont know what written there or what the state of ecomorph-fluxbox is. all i can say is that i'm currently cleaning up the interface between ecomp and wm so it might be easier in future to support other window managers
ah and btw why dont use e17 instead of fluxbox? (=
Thanks a lot for answering...
Well, you misunderstood me... my mistake. There it says that who posted those link thinks/have heard that it should work with Fluxbox... but as I read you, there's no support yet.
The fluxbox/openbox community will be amazed if you reach the goal!!!! And there are lots of users.
Honestly I didn't know e17 until now, and what I saw, I didn't like it, in addition, I'm testing fluxbox and I decided to keep it as my standard window manager, because its simply great, but the only thing is that I'd love to have the compiz effects, and here you are... trying to bring them to us.
So really really thanks, and I'll be following your progress :) !!!!
(OH, really sorry because of my impatience)
but... do you have any estimated time to release (that) newer version??
Thanks a lot ;) Cheers from Uruguay !!
sorry to have to deceive you. ecomorph is in the first place intended to become a compositing manager for e17.there are quite a lot of modification needed in e17 to make it work with ecomp. (the combination of both is what i've named ecomorph) i am currently reworking it so that it can use hooks provided by e17 to make all the communication code between wm and cm a module (which is loaded into e17). atm i provide a modified version of e on github. i think fluxbox does not provide the needed hooks so a lot of modification will be needed in fluxbox to make it work with ecomp. it will probably take a year or so until i finish the protocol between cm and wm to write it down so that other wm developers could write an implementation to use ecomp with their wm. or they could just dig through the code now. in any case it will be quite a lot of work to add support to another wm.. and i wont do that as long as e17 is my wm :)
Oh, its a pity ! Anyways, keep working! ;)
I'm wondering if there is a way to turn the previous ~/.ecomp/options/.conf files into a ~/.ecomp/ecomp.eet file. I have all my settings just so in my old conf files and the graphical interface always thinks ecomorph isn't loaded (or isn't loaded with dbus, even though it is). Is this even possible?
yup. e and ecomp had to run in the same dbus session. i'm currently reworking the config dialog to use the eet file directly. so then there will be no more trouble with dbus :) i tought about renaming ini plugin too 'eet' then one could run ini and eet the same time to convert config
So the only way to configure ecomp is via the GUI now? There are more options supported with raw config files from what I understad, is there any way to have it use the regular conf files, or to convert the conf files into ecomp.eet?
'eet -l ~/.ecomp/ecomp.eet' gives you the list of config groups. 'eet -d file group outfile' converts to textfile. 'eet -e file group infile 0' encode the textfile back into eet ;)
So I can take the regular ~/.ecomp/options/.conf files and convert them all directly like that? Sounds like exactly what I want, I'll have to try it. Thanks.
oh no, I see. So I have to convert the previous conf files into a format that eet understands, ok. pokes at it some more
After reading up on eet and the file structure, I'm still kind of confused as to what the meaning of the entries are. Looking at expo-allscreens for example I see the structure for what used to be "ground_color2=#00000000" in my .conf file, but in eet it looks like:
Clearly the string part is what I need to modify, but if I want to create an entirely new config option, I'm unsure of where to put the actual value. I think I can just use int for boolean values, but I'm confused as to the type option. Looking at the files I think type 1 means use the int value, type 2 means use the double value, and type 4 means use the string value. Is type 0 off/disabled? And what about type 3? I understand if you don't want to spend the time explaining how the eet files work, just trying to get my config back like it was.
hello, type is not for eets internal use. infact it is unused programatically by the config atm. type is only set by ini module when it saves options. it is just set to CompOptionType?. boolean is saved as int in the eet file 1 == on. though it might be easier reading ecomp/metadata/.xml.in for valid options and types
CompOptionType?:
} CompOptionType?;Oh ok, so it's easier than I was making it. I need to do some trial and error but I think that's exactly what I needed. Thanks again for all your help.
Hi..
I try to install it, (ecomorph-e17) but int the configure process, he say:
No package 'ecore-input' found
But in the ecore, I not found this lib (recompiled) but nothing.....where can I found that lib?
Thx: liso
@lisovszki You need to update e lib. I had the same problem ;-)
Is everyone getting the animations to work? Open/Close animations just don't seem to work on mine. This has been the case for several weeks now. ecomorph is running since the wall plugin works.
Has been a long time since I did an update, but unfortunately things worsened for me :-) (which seems to prove the attitude "never change a running system").
Actually everything runs fine, but I don't have the slightest idea where to change the keybindings for expo and the screen corners for scale. Tried to fiddle aroun with the xml-files in /usr/share/ecomp, but no effect. Trie the eet thing as well, but no idea what to change.
Any hint? BTW, setting keyboard shortcuts in the E settings menu doesn't have any effect, though ecomorph is being launched by "dbus-launch ecomorph ini" from within an xterm in E.
Thx in advance,
all bindings are now to be configured with the standard e dialogs. open/close animation needs the animation plugin to be loaded. works for me (tm) :)
no need to do stuff in eet. most things are in 'ecomorph' configure module in settings now. oh forgot to mention on this site that ecomorph module must be loaded
no more need for dbus at all btw
I tried with clean configs (removed ~/.e) every time. It never worked. Today, I tried launching it like this (providing all modules on command line)
And it worked. But, I am unable to change the animations themselves. Changing settings via the eco module dialog has no effect on any module. It is clear that the data is being written to ~/.ecomp/ecomp.eet (the timestamp is updated).
hi hannes,
setting the keybindings does work, I was too dumb :-/ But still, I don't have any idea where I could set the screen corners/edges?
Thx,
theres a new conf module for screen edges in vanilla e. you might need to load that module
@ppurka, is the inotify plugin loaded? it is needed by ecomp to get informed when the config file changed. if not then it should at least load the new config when restarting ecomp
awesome, works :-)
Thanks again,
@hannes. Actually no. It doesn't seem to read the ~/.ecomp/ecomp.eet file. For example, right now I did "Stop ecomorph" and "Start ecomorph" from within the config dialog. As you can see in this screenshot, the modules loaded and the modules I have enabled are completely different. http://omploader.org/vMWZxYw
In fact, in the screenshot you can see that ecomorph was started by the config dialog without the animation plugin mentioned (it seems ecomorph.sh has those as the default). So, animations do not work and checking "animation" in the config and clicking "Apply" has no effect. The general problem is that the ecomp.eet is being updated but not being read.
BTW, I can see that you inching towards an almost module-like implementation of ecomorph. I must thank you for your time and effort! :D
ppurka, what a bout the ini plugin? .. i should mention in the dialog that ini and inotify are needed for configuration. when loadin on the commandline it should also suffice to load these two plugins. when you delete ~/.ecomp/ecomp.eet the default config will be copied there on the next start of ini.
Aaah! I always get error that the ini plugin could not be loaded. Maybe that is why this is happening. I used to think that this was normal since we don't have those text files anymore. I will need to investigate this further.
Since the last update, 4 days ago, I can't load fileman module. I have the following message: /usr/local/lib/enlightenment/modules/fileman/linux-gnu-i686/module.so: undefined symbol: e_fm2_all_sel
then I tried with the "official" e, fileman working fine. Any help ?
resizing is painfully slow on my ati card
see http://www.phoronix.com/forums/showthread.php?t=15163 for more info on the problem
is there a way to change the resize mode in ecomorph to strech
is there any documentation to get this to compile on freebsd ? (7.2)
if i installed e17 on a debian dist using alphagemini repo, how may install ecomorph or directly ecomp on my linux? tnks