Tuesday, September 14, 2010

Migrate to official e17 repository

Hi there,

I migrated to the new enlightenment foundation library repository overlay.
The one provided from gentoo seems deprecated and if you like bleeding edge, go for efls' one.

Here is how to do it in 4 easy steps:
  1. Add the EFL overlay http://trac.enlightenment.org/e/wiki/Gentoo
  2. Unmerge the old e17 packages
  3. Update the portage profile for e17
  4. Install the new ones and reconfigure your desktop
So, for step 1, just follow the indications in the link or yet better, make it permanent in layman like so:

In /etc/layman/layman.cfg add the http://svn.enlightenment.org/svn/e/trunk/packaging/gentoo/Documentation/layman/overlays.xml url under the following line :

overlays : http://www.gentoo.org/proj/en/overlays/layman-global.txt

After that, run layman -L and layman -a efl.

Step 2, here's a list of packages you need to unmerge :

x11-plugins/e_modules-wlan x11-plugins/e_modules-calendar x11-plugins/e_modules-language x11-plugins/itask-ng x11-plugins/e_modules-bling x11-plugins/e_modules-net x11-plugins/e_modules-cpu x11-plugins/winlist_ng x11-plugins/e_modules-screenshot x11-plugins/extramenu x11-plugins/e_modules-mem x11-plugins/e_modules-weather x11-libs/esmart x11-libs/ecore x11-libs/e_dbus x11-libs/evas x11-misc/emprint x11-misc/entrance media-libs/edje media-libs/imlib2 x11-wm/enlightenment dev-libs/efreet dev-libs/eet dev-libs/embryo dev-libs/eina dev-libs/exml

Just use emerge -C with the above package list and you'll be good to go.

For step 3, if you want to use a specific snapshot of e17 (recommended) you need to get the portage env files from https://www.pentoo.ch/svn/livecd/trunk/portage/env and put it in /etc/portage. Check out our svn tree and copy our env files.

svn co https://www.pentoo.ch/svn/livecd/trunk/portage/env /var/svn/pentoo/portage/env

cp /var/svn/pentoo/portage/env /etc/portage/

You can update to a specific snapshot by following http://www.enlightenment.org/p.php?p=news and specify the specific revision inside those env files.

Step 4, use the method described on the official E17 gentoo guide and create a set like this:

cat > /etc/portage/sets/enlightenment << EOF
=app-text/epdf-9999
=dev-libs/ecore-9999
=dev-libs/e_dbus-9999
=dev-libs/eet-9999
=dev-libs/eina-9999
=dev-libs/embryo-9999
=dev-libs/efreet-9999
=media-libs/edje-9999
=media-libs/emotion-9999
=media-libs/ethumb-9999
=media-libs/evas-9999
=net-libs/exchange-9999
=x11-wm/enlightenment-9999
=enlightenment-base/e_module-notification-9999
=enlightenment-base/e_module-tclock-9999
=enlightenment-base/e_module-itask-ng-9999
EOF

Don't forget to also keywords the above list ** to be able to merge them!

You can now emerge/update enlightenment by doing:

layman -s efl && emerge -av $(cat /etc/portage/sets/enlightenment)

Also, you should set your use flags accordingly. A good and updated description of what to USE is at http://trac.enlightenment.org/e/wiki/Gentoo#Defineyouruseflags

Enjoy the newest e17 experience.