urxvt and ~/.Xdefaults

Michael V. De Palatis mvd at gatech.edu
Sat Aug 5 16:01:07 UTC 2006


On Sat, Aug 05, 2006 at 02:35:31AM -0700, Micah J. Cowan wrote:
> On Fri, Aug 04, 2006 at 11:18:36PM -0500, Michael V. De Palatis wrote:
> > Hi list,
> > 
> > I have decided to go back to using urxvt (a.k.a. rxvt-unicode) as my
> > default X terminal. However, I have hit some snags. If I try to use
> > update-alternatives to set urxvt as my default terminal, starting
> > either "x-terminal-emulator" or "rxvt-unicode" at the command line
> > results in a terminal that has not respected my options in
> > ~/.Xdefaults. This does *not*, however, happen if I start it as
> > "urxvt".
> 
> What's the output of "namei `which x-terminal-emulator`" (and similarly
> for rxvt-unicode)?
>
> I installed it, and rxvt-unicode is a symlink for urxvt, so I'm guessing
> that's not it...

They are indeed symlinks. x-terminal-emulator points to rxvt-unicode
points to urxvt.

> 
> > After doing a bit of reading, it turns out that this is some crazy
> > Debian issue because the maintainer decided that he doesn't think that
> > this is "flexible" enough and uses a completely different method that
> > apparently reads a global configuration file (see
> > /usr/share/source/rxvt-unicode/README.Debian). However, this doesn't
> > really tell me what I have to do to change this, in my opinion, stupid
> > behavior.
> 
> Huh... I can't find anything to that effect in the debian README. In
> fact, it spends some good time explaining how to use the XResources.
> You are using URxvt rather than rxvt, to name the client in your
> .Xresources file? (I'm guessing you are, since it's working with urxvt).
> 
> What version are you installing? I'm using edgy for testing purposes, so
> I probably have a newer version (7.7). You /might/ try downloading the
> edgy version from <snip>

I don't see a particular -version (or similar) option, but the manpage
says "version 7.0." The package name also corresponds with this.

> I note that the source package for my version has a file in
> debian/patches named "old-debian-nonsense.patch", and wonder if it's
> related... it removes text from the upstream FAQ that complains about
> the significant functionality changes made in Debian sarge, and
> directing the user to download the original urxvt before sending
> complaints to the original author. I'm guessing this text is being
> removed by the patch because it no longer applies... :-)

That's interesting. Perhaps that means that someone finally came to
their senses regarding this issue. Now, I was able to find a real
hackish solution, but it's not a pretty one. Despite the package
maintainer's claim that the system in 7.0 is "more flexible," it
doesn't really meet the common definition of flexible, since if one
thing is changed, the entire thing breaks. Here's what I did:

I simply copied everything I have for urxvt in my .Xdefaults and added
a rxvt-unicode.<etc> in. I then did the same thing except added
x-terminal-emulator.<etc>. Therein is why this is unflexible. (a) If I
change x-terminal-emulator with update-alternatives, then I will get
breakage in terms of options that don't exist for the other terminal,
or just in terms of things not looking the way I want for a different
one. (b) Every time I make a change to urxvt.* settings, I will have
to also do the same for rxvt-unicode.* and x-terminal-emulator.* or
else the changes won't be reflected always. This is because if I run
urxvt, it reads the urxvt.* settings; if I run rxvt-unicode, it reads
the rxvt-unicode.* settings; and so forth.

This is a ridiculous way to treat things, and I don't see how *anyone*
could have ever seen this to be a "more flexible" way to do things.

Rant aside, I will probably just leave things this way for now, and
whenever I upgrade to Edgy (I usually upgrade a month or two before
official releases), I will check that the functionality works the way
it should.

Thanks,

Mike





More information about the ubuntu-users mailing list