How to report bugs to official Enlightenment / EFL

Which type of issues?

  • crashes of the desktop, specially reproducible ones
  • options or features that doesn't quite work well / as expected / etc
  • strange or unexpected behaviours, performance issues, etc
  • important usability issues

Before to report it:

  • verify that the bug is not an Elive bug (or caused specifically because of Elive)
  • if is possible to do, make it reproducible, you need to tell the steps of how to make it happen
  • make sure your system is updated to last packages (apug)


  • graphic card: this can be one of the main reasons of a bug that "only happens to you", make sure that your bug also happens when your Composite settings are set to Software

Reproduce issue and report

  • make sure you delete your ~/.e-crashdump.txt file before (in order to not report a different issue)
  • trigger a new crash, so a new ~/.e-crashdump.txt file will be generated
  • run "elivepaste ~/.e-crashdump.txt" and use the pasted link to report the issue (but is much more suggested to use manually and select GDB as hilighting, this makes it much more readable for those who needs to read it, make sure the paste doesn't expire in less than a few months)
  • go to ⚓ Query: efl general bugs and click in the button "+ Create Task"
    • describe your bug, not too long but with enough details
    • include the steps of how to reproduce the issue (if is reproducible), most of the times this depends on a specific configuration you may have
    • include the version of enlightenment and efl you use, this info is available from "appo libefl1" and "appo enlightenment"
    • include your .e-crashdump.txt contents, sometimes (but not always) includes useful information
      • important: this file is useless if Enlightenment didn't crashed, it only contains information dumped on crashes
    • tags: "enlightenment-git" (this important to add automatically subscribers to the report, otherwise nobody will be notified about it)
      • if your report has not been answered in 1 week, you should add somebody in charge to the "assigned to" option

IMPORTANT: if you don't know if something needs to be reported or how, first debate the issue on #system:bugs, we don't want to annoy the E developers with invalid reports :slight_smile:

How to debug Enlightenment / EFL, this document includes a lot of info, methods, tips, etc, its a must read! it shows also how to read the eina_btlogs or how to print messages specifically for a topic in your enlightenment

anything to add / modify / comment on this howto, @triantares ? :slight_smile:

Ehm, might be worthwhile to explain how to get more debug info for if E24 doesn't crash (E24 hardly ever crashes on me lately). Even I'm not sure how to go about getting that.

  • As to debating on #system:bugs first: I think that's a good idea.
    Many perceived Enlightenment bugs are quite often hardware or system related, so might be good to get some feedback from others first. :thinking:

Do you mean valgrind? eina_debug? or what's your suggestion?

just added the section "reasons"

1 Like

Both are way too difficult to be used by a normal user looking into issues.

  • Isn't there an easier way to acquire verbose debug messages?

yes, using eina_debug environment variables to print lots of messages, specially if is set for a very specific domain (topic / part of E things to print), this is not so hard to set up but in the end i think its pretty advanced too (the user needs to know these domains, what is searching specifically for, and know how to add them before / uppon E start)

Just found this Debugging , its amazing read, very complete and lots of info & tips, I didn't know we can trace eina_btlogs in a so easy / informative way :applause: ! let me add the link to the howto...

Yeah, I read those too but (correct me if I'm wrong) some require debugging being set and built-in.

  • I very much doubt you have done that up to now, hence my looking for other ways of getting debug info.

Others are quite a handful for normal GUI oriented users.
I like "perf" by the way ..... never knew we had such a tool available.
I'm sure @Rebel450 will love it too. :w00t:

Perf is a tool for Linux that can help you identify performance bottlenecks. This is also part of debugging - to find where CPU time is being spent and perhaps answering why things are slow. Probably the most useful and simplest way to use Perf is with Perf top like:

sudo perf top

Small howto:
"api linux-perf"
"sudo perf top" or "sudo perf trace"


.... will give it a spin
( on a rainy day :dance: )

:motor_boat: + :motor_boat: + :motor_boat: = :hugs: