OpenBSD Journal

Developer Blog: Laurent@ - Enlightenment 17 enabled in -current

Contributed by johan on from the fancy-windowmanager-is-fancy dept.

Recently Laurent Fanis (laurent@) enabled package building of the Enlightenment WM. Laurent writes...
On Tuesday I enabled Enlightenment DR17, so users of -current can now enjoy eye candy desktop on OpenBSD too. Packages should be available when the next snapshot is updated. It all started a long time ago, when I tried to port e17 but failed due to lack of %a support in our printf(3).
A couple of months later on IRC David Gwynne (dlg@) expressed an interest in a good e17 port. He had started a port but it did not compile or run at that time. My port depended on libtrio to provide the missing library calls but some stuff did not compile cleanly and it contained a lot of crud and hacks.

dlg then proceeded to set-up a SVN server where we started working. Most of the initial work was done by dlg and me, then Jasper Lievisse Adriaanse (jasper@) and Bernd Ahlers (bernd@) proceeded to show us how bad we were at porting. Many, many commits later the port got banged into shape. It also got updated frequently. As some of you might know e17 is a fast moving target so i take snapshots when fixes and updates get in. e17 gets more stable and feature rich by the day.

On December 1st I took a plane to attend OpenCON. I was off line for a while but I was pleasantly surprised when I reached the conference to see e17 committed.

"How can you help?" you ask. Donations to the OpenBSD project are always welcome, and when you are low on money you can test, test and test some more.

When you run into a bug or the white screen of death, go to another text console (f. ex. Ctrl+Alt+F1).

# ps -auwx | grep enlightenment
# gdb enlightenment $PID
# type bt
Then send me the output and the steps required to reproduce the bug.

More information can be found at the enlightenment wiki.

Expect an update as soon as most of our patches have been merged upstream (even if they have not acknowledged it) with some more goodies from enlightenment land.

Last but not least the list of people, developers and users who helped this get into shape and test it on different archs, is way too long to mention but thank you all.

And thank you Laurent for sharing this with us!

(Comments are closed)


Comments
  1. By e4ea (89.146.35.55) on

    This is great, thanks!!!

    When the new packages are available again I will defenately try the Enlightenment 17 package!

    Thanks for all the effort ;-)

    Jan

    Comments
    1. By Anonymous Coward (2a01:348:6:b5::2) on

      Thanks a lot!

  2. By Completely Offtopic (70.173.172.228) on

    Speaking of updates, is Perl 5.10 likely to be in 4.4?

    Comments
    1. By Marc Espie (213.41.185.88) espie@openbsd.org on

      > Speaking of updates, is Perl 5.10 likely to be in 4.4?

      It is being considered.

  3. By Hans Zimmerman (airzimmy) hans@everlasting.be on http://www.everlasting.be

    Been using this for a while, I love it.

    Great job!

  4. By TylerEss (69.42.248.90) on

    This is wonderful! I've been using enlightenment on OpenBSD for years now, but getting tired of its once-a-week vacations.

    I started looking at other windowmanagers but was having trouble finding anything with the same combination of 'modern' and 'just manage my xterms thanks' that enlightenment has.

    Now, I've got E17 to look forward to. More pretty and (hopefully) more stable!

  5. By Nathan White (134.134.136.4) on

    I wasn't aware that printf has a %a option. what is it used for?

    Comments
    1. By Alan Post (216.31.102.254) terminal@c0redump.org on http://aisa0.livejournal.com/

      > I wasn't aware that printf has a %a option. what is it used for?

      From fprintf(3) on a Centos box:

      a,A (C99; not in SUSv2) For a conversion, the double argument is converted to hexadecimal notation (using the letters abcdef) in the style [-]0xh.hhhhp±d; for A conversion the prefix 0X, the letters ABCDEF, and the exponent separator P is used. There is one hexadecimal digit before the decimal point, and the number of digits after it is equal to the precision. The default precision suffices for an exact representation of the value if an ct representation in base 2 exists and otherwise is sufficiently large to distinguish values of type double. The digit before the decimal point is unspecified for non-normalized numbers, and non-zero but otherwise unspecified for normalized numbers.

  6. By Ray Lai (81.175.141.17) ray@cyth.net on http://cyth.net/~ray/

    How did you get around the lack of %a in printf(3)?

    Comments
    1. By Leonardo Rodrigues (200.163.87.121) on

      > How did you get around the lack of %a in printf(3)?

      The %a was used in eet (one of the enlightenment foundation libraries) until E developers decided to rewrite the lib in order to not use those C99 functions.
      So, I bet that OpenBSD still misses a proper %a implementation. :/
      But hey! Now E17 works without hacks :)

      Comments
      1. By Anonymous Coward (219.90.158.70) on

        > So, I bet that OpenBSD still misses a proper %a implementation. :/
        That's right. Its a nontrivial change for little to no benefit.

    2. By Laurent Fanis (laurent@) on http://lfx.amsterdamage.nl

      > How did you get around the lack of %a in printf(3)?

      Well the first try, I was using libtrio (not yet in ports). %a is pretty useless IMHO, I have encountered it only once in e17.
      Later the e17 people decided on using their own conversion method which reduced the patching and dependencies.

Latest Articles

Credits

Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original deadly.org with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]