Site file support for XEmacs

Yesterday I updated the eclass for XEmacs to support site file based initialization similar to what Emacs on Gentoo offers. When I say similar, I mean identical. A rip-off. Stolen. But without the legacy support. Many thanks to the Emacs team for painfully constructing and debugging a good approach to this problem.

With this support in place XEmacs code that isn't provided as an XEmacs package can now register itself so that you don't need any additional configuration to make use of the package. A simple example is for modes to register themselves automatically for the associated file extensions. The Emacs Gentoo project page has a more verbose explanation. It also includes the mechanism to start using this. Add it to your .xemacs/init.el (after you've installed a package that uses this).

(require 'site-gentoo)

So, which packages already use this? Unfortunately the answer currently is none, but patches are pending for app-admin/puppet. Please feel free to file bugs if you would like to see support for this added to other packages.

Published on 27/06/2011 at 22h03 by Hans de Graaff, tags

Last rites for the XEmacs SUMO package in Gentoo

Bug 23949 has been around for a long time, but it can finally be closed soon. I will be sending a last rites email for app-xemacs/xemacs-packages-sumo shortly, and after that the package will be moved into package.mask. If you want to easily install all xemacs packages with a single command, just use app-xemacs/xemacs-packages-all instead. You will get the same thing as is currently shipped in the sumo packages, but without all the file collisions that may occur.

I have also updated the XEmacs project documentation to reflect this change.

Published on 10/05/2008 at 13h04 by Hans de Graaff, tags

Speaking of eselect...

Flameeyes mentions some possible eselect project for SoC. I’d like to add a project idea to that: rework eselect so that it has an interface at a higher level. Please explain to me why I have to write 195 lines of code (rails.eselect) just to manage a symlink to a binary. It seems to me that this is what most eselect modules are doing, so this case should be really easy, and just a matter of configuration. I’m sure some of the eselect modules are doing more complicated things, but that can be solved by providing hooks.

I’d rather specifiy something like this (and not make silly mistakes in the bash code like in the current eselect modules):

TITLE="Ruby on Rails"
DESCRIPTION="Some more verbose, multiline, stuff"
PROVIDERS="/usr/bin/rails-2.0* /usr/bin/rails-1.2* /usr/bin/rails-1.1*"

This is a bit of a simplistic example. I’m sure a slightly more complicated format would be needed to handle some of the common cases, including additional binaries, man pages, etc. Determining that would require taking inventory on the current eselect modules and seeing the common patterns, which makes it, uhm, a project.

Published on 02/02/2008 at 20h53 by Hans de Graaff, tags

XEmacs overlay

For some time now there have been an emacs and xemacs overlay available through layman. Both of them pointed to the same overlay of the Emacs project. While this worked fine and also seemed easy for the Emacs project people from a maintenance perspective, we’ve now decided to split up things more clearly to avoid confusion. The emacs overlay now contains all experimental things related to GNU Emacs, and the xemacs overlay contains everything related to XEmacs.

For XEmacs users nothing changes if you were already using the xemacs overlay, but if you used the emacs overlay up to now then you will need to add or change to the xemacs overlay to continue using the latest xemacs ebuilds and eclasses, most prominently the xemacs 21.5 ebuild.

Published on 30/12/2007 at 11h44 by Hans de Graaff, tags

Giving to you: Giver on Gentoo

The premise of Giver is something that appeals to me: it will allow you to easily give files to others. It uses avahi to determine other Giver users out there and allows you to easily share files with them without messing with any configuration. Having this up an running would be useful for me in several situations, especially if someone would create a MacOS X port.

So I naively thought I’d just whip together an ebuild for it so that I could play around with it. That was before I knew that Giver is written in C# and uses some not-yet-released bindings for libnotify and dbus. Uhm, wait, does it depend on notify-sharp or notify-sharp. Trying them out in order I found out it’s actually the latter, but NDesk’s version depends on NDesk’s not-yet-released DBusSharp bindings.

At this point I thought that someone in Gentoo must have already worked on this, but Google was of no help in part because the now unmaintained .NET bindings in D-Bus GIT are also called dbus-sharp in many cases. If only I could easily search the overlays on overlays.g.o… But wait, that’s possible! Thanks to the people in #gentoo-dev I was pointed to eix, which can also use a remote index consisting of most of the stuff covered by layman and overlays.g.o. Just run update-eix-remote and all those overlays are at your disposal without having to install them first.

ecatmur’s overlay contains an ebuild for dbus-sharp, but it was for an older version and has some issues. To make a long story short I’ve created ebuilds for dbus-sharp, notify-sharp, and giver. They can be found in my personal GIT overlay.

Oh, and Giver? It works as advertised. You get an icon in the notification area which opens into a window showing all Giver users on the local network. Dragging a file or a folder onto a user offers the files to that user, who can then accept or decline. Simple, no fuss.

Update: Andreas Proschofsky also wrote ebuilds for giver and its dependencies during GUADEC. Since his ebuilds were a bit nicer than mine he has folded my improvements into his versions, and I recommended to use the ebuilds from his overlay for now.

Published on 23/07/2007 at 11h28 by Hans de Graaff, tags

Learning new things about Gentoo

Yesterday I ran into Steev’s email about the removal of virtual/x11 and checked the dev-ruby packages for any occurances. After fixing those I noticed that several people where fixing packages all over the tree and I decided to join in and have a bit of fun poking around ebuilds I’d normally never see. As a nice side effect I learned a few new things about Gentoo as well.

Although I had heard about keychain I never really looked in to this, but with the amount of commits we were doing yesterday entering my GPG passphrase quickly became tiresome. While configuring gpg-agent to deal with this keychain was pointed out to me as a way to manage both ssh-agent and gpg-agent. I finally realized the one big benefit that keychain would bring to me: no more passphrase-less keys for stuff like cron-jobs!

One of the things that we noticed as we were removing the virtual/x11 stuff is that there are plenty packages that have a lot of old ebuild versions around. Some people are of the opinion that this doesn’t hurt, but the kind of cleanup we did yesterday shows that it does hurt for such maintenance activity. I’ve fixed a number of packages where only the old versions contained references to virtual/x11. Why are these still in the tree… Sure, it makes sense to keep an older version around while stabilizing a newer version, but only for a couple of months at the most. When I asked whether we have a QA tool that might be showing which versions of a package could/should be deleted, I got pointed to earch and was disappointed to find that this basically shows the same information as packages.g.o, but without the nice layout. So, if this tool exists I’d be happy to hear about it, and otherwise I might have to try writing something myself.

Published on 23/07/2007 at 08h29 by Hans de Graaff, tags

Experimental XEmacs 21.5 and gentoo-syntax ebuilds

This weekend I’ve committed two experimental ebuilds to the emacs overlay. I’d be happy to get feedback on them, so if you are using XEmacs and feeling adventurous, head on over to the overlay and give things a whirl.

First up is an ebuild for XEmacs 21.5.28, the latest upstream beta version. This version is not ready yet for general consumption but it does have some nice new features that may still be worth it. Personally I’m still fighting the new Xft-based font system, so for real work I’m using 21.4, but otherwise 21.5 appears to be as stable as 21.4 is. Note that 21.5 is not slotted, so it will remove 21.4 from your system. Also note that 21.5 bytecode is not fully backwards compatible with 21.4, so you’ll have to take care in downgrading. I don’t expect this ebuild to be moved to the main tree any time soon.

For those of you doing Gentoo development work with XEmacs I am happy to introduce the app-xemacs/gentoo-syntax package (formerly known as ebuild-mode, but never released for XEmacs). It should work fine with both 21.4 and 21.5, and again I’d love to get feedback on it. Many thanks to the Emacs herd for all their work on this. After I’ve gotten some feedback on this I will move it to the main tree.

Published on 24/06/2007 at 13h23 by Hans de Graaff, tags

Unified Emacs project underway

The last few weeks have seen a lot of developments for GNU Emacs on Gentoo and luckily XEmacs is also reaping some of the benefits. Emacs and XEmacs now both depend on a new eselect module which finally resolves some file collision bugs between Emacs and XEmacs. The eselect module currently doesn’t support XEmacs very well but this is something that will only be noticed by someone installing both GNU Emacs and XEmacs.

In addition to these changes there is now also a joint project for GNU Emacs and XEmacs as a sub-project from the Lisp project. Hopefully this will make things a bit easier to organize and further the cooperation between the GNU Emacs and XEmacs herds. Since this project space is now available I’ve also moved the XEmacs on Gentoo information page there from my dev space. Hopefully I’ll be able to implement some of the Future Plans mentioned there shortly.

Published on 30/04/2007 at 13h39 by Hans de Graaff, tags

No more xemacs overlay

With all of the XEmacs packages up-to-date again in Gentoo CVS, I found less and less need to keep my original SVN overlay online. It used to located at, but no more. I took it offline today after cleaning out the remainder of the overlay and discovering that there wasn’t anything of interest there anymore. So, if you’ve been using it:it’s gone. Everything that was there is now in Gentoo CVS, except for the patches to move all XEmacs support and lisp files from /usr/lib to /usr/share. I hope to revisit that move some time in the future.

The only other thing that I planned for the repository is to create an ebuild for the XEmacs 21.5.x beta versions. However, that alone really doesn’t warrant an overlay, so I guess we’ll just package.mask that until it is fully ready.

Finally, this may be the right time to point to some documentation on XEmacs on Gentoo. It’s still a work-in-progress, but I hope to document both the development process and tools, and peculiarities relevant to XEmacs users on Gentoo. Please let me know if you have questions or would like to see something particular documented.

Published on 24/02/2007 at 14h31 by Hans de Graaff, tags

Powered by Publify | Photo Startup stock photos