Infinity's Mind Productions


earXDG -- A XDG Sound Theme Editor for the Gnome Desktop

earXDG is a small gtk app that allows you to easily create a sound theme for the GNOME desktop. You can use it change to your login/logout sounds, as well as any other sound events supported by distro (all except those 'alert' sounds, that's a different issue entirely), or you can use to create fulll blown XDG sound themes for re-distribution. It is still in the early stages of development, but don't let that deter works for me! If you like earXDG and find it useful, please consider a donation in any amount to fund its further development...and lest you think I'm just grubbing for greed's sake, be aware that 10% of any donation will go to Hospice of the Bluegrass. The donation button is at the bottom of the page :)

Of course, nothing of the sort is required. The software is 100% FOSS, released under GPLv3. If helps you out, I'm all the happier for it.

Current Version: earXDG-0.0.2

>>>>>>Download earXDG-0.0.2.tar.gz>>>>>>>
Hash Sums

Well, it has been quite the adventure...but earXDG-0.0.2 is out! Regardless of whether or not you tried 0.0.1, this is the version to have. This version has several new features and fixes:

  • Set All Default and Set All Disabled functions
  • Drag-and-Drop Support (tested with Nautilus)
  • Various UI Tweaks/Improvements
  • GNU AutoTools build environment
  • Per-User Configuration Files (~/.earXDG/)
  • Mildly improved Preview
  • Improved Error Correction
  • 99% fewer memory leaks (thanks valgrind!)
  • Numerous Bug Fixes

Bear in mind that this is still ALPHA software. Caveat Emptor. That said, this version represents a major improvement in usability. I've used it successfully on Fedora 12 and Ubuntu 10.04 to create several personal sound themes. I've got 'Trek' sounds popping out all over the place ;-) It works great for me...I hope it works great for you. Be sure to read the README, BUGS, and TODO files...they cover all the ins and outs of using earXDG, as well as known issues with this release.


Prior Version: earXDG-0.0.1a

The very first! The code is very very ALPHA...So before you complain that it's hard to install,or it doesn't work, please grok deeply the alpha nature of the code...take a deep breath and meditate on it. As of July 25, 2010, the code is only a few hours old. You can always create a theme manually....earXDG just makes it easier :)

>>>>>>Download earXDG-0.0.1a.tar.bz2>>>>>>>
Hash Sums

The Feature Wishlist:

  • International Language Support
  • Import existing theme
  • Real libcanberra support
  • Ability to change spec files "on the fly"
  • Automatic sound leveling


Q: Why have you released this coding horror upon the web? I could write a better program in my sleep!

A: Then for God's sake why haven't you? Have you tried creating a full sound theme? Its not just awful...its abyssmal. I know its not rocket science...but its also a lot of legwork for very little payoff. It took me less time to write this program than it would for me to hand-craft a complete sound theme (there are currently 130+ sound events supported by the XDG spec...that's a whole lot of renaming). While I don't expect most people will use it to map all those may make things just easy enough to inspire more people to create more pre-packaged sound themes :)

Anyway, if you need more justification, my reasons are manifold:
  • Because, as far as I can tell, there are no other XDG Sound theme editors available.
  • Because I needed a project to provide some hands-on practice with gtk programming.
  • Because the new preferences dialog for the sound theme in Gnome sucks *unless* you can create themes easily.
  • Manually renaming sound files to map to events does not count as easy.
  • Improving the lives of linux users is good karma.
  • Because in my searches for a better way, the only posts I found were filled with dozens of people with the same problem.
  • Because I need to do something with this webspace :)
  • Why not?

Q: Ok, so the code is alpha...does it work?

A: Works for me! But seriously, I'm sure there's plenty of bugs...but it can generate a usable sound theme. Just be sure to read the readme file thoroughly. I have tested it on Fedora 12 and Ubuntu 10.04, and it works quite well on both of those...once you have all the dependencies installed, and you get it built, it's smooth sailing. If you manage to get it to work on another system, please post your success story over in the forum, so that others may benefit from your wisdom.


Q: Why do I have to manually install the theme? I thought this was supposed to be easy...

A: It is a lot easier to simply copy the whole theme directory. Remember, you could be manually renaming files while cross-referencing the list of sound events...all the while hoping and praying your sound files work. Anyway, the main reason I reccommend you install the theme manually is because you need root access...this being alpha you really want it mucking around with root access? "sudo cp -R theme_dir/ /usr/share/sounds" seems easy enough to me.

However, if you know what you are doing, there is no reason you *have* to manually install. Just start the program with gksudo...and when you generate a theme, just use the "Create Folder" button in the file dialog to create your theme directory under /usr/share/sounds (or wherever your sound themes reside). Voila! The theme will be instantly available under the "Sound" prefs. Fedora doesn't have gksudo packaged yet...but a little bird told me it could be out with Fedora 14. If you can't wait that long, you could try hacking together a solution with zenity...or maybe you can build gksudo from source...or the easiest thing to do is run it from a terminal with plain old sudo :)

Q: 130+ sound events! Can I just set my login sound?

A: Leave everything as "default", and just set your login sound. :)

Or if you *only* want the login sound, set everything to "disabled" and just set you login sound.

Also, If the # of choices is too overwhelming, you can customize the "sound.spec.csv" to show only the events you want to set in your theme. The events you remove will always have the "default" setting. Make sure you backup the file before editing it :)

Q: I'm having trouble running/building earXDG...

A: I feel your pain. It can be tough to build software if you're not used to doing it...but I really can't solve all your problems for you...go back and read the readme again...slowly this time. Most of the time, it will be because you need some dependency. If you have tried everything mentioned in the readme, installed all the dependencies it mentions, and it still won't build or run correctly...then post your specific problem to the forum. Be sure to mention what system and software versions you are using...and any error messages you are getting. If you ask about a problem that is covered in the readme, I'll likely ignore you.

Q: Im pretty sure I found a bug...

A: The email address for reporting bugs is in the README :)

Q: Your website is making me blind...

A: Hah! Sorry about that, but I kinda like it...I'm considering adding a "theme" switcher, basically several CSS themes switchable via a php script...I did one at work like that once. I just haven't had the time to mess with it...I've been working on earXDG! If it really bothers you, turn off the CSS...In Firefox, its View->Page Style->No Style. I try to build all my pages to "degrade gracefully", so I promise its readable that way :)