Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

"classic" Xcursor theme?

33 views
Skip to first unread message

Ivan Shmakov

unread,
Apr 7, 2019, 2:12:30 PM4/7/19
to
Curiously, is there a "classic" Xcursor theme available from
somewhere? That is, a theme with monochrome cursors with the
same look as the "native" X cursors, perhaps with one or more
different sizes available as well?

Barring that, is there a clean way to disable Xcursor? So far,
about the only workaround I've found is to point the XCURSOR_PATH
environment variable to a non-existent directory, e. g., in my
~/.xsession.

--
FSF associate member #7257 http://am-1.org/~ivan/

Eli the Bearded

unread,
Apr 7, 2019, 8:57:54 PM4/7/19
to
In comp.windows.x, Ivan Shmakov <iv...@siamics.net> wrote:
> Curiously, is there a "classic" Xcursor theme available from
> somewhere? That is, a theme with monochrome cursors with the
> same look as the "native" X cursors, perhaps with one or more
> different sizes available as well?

Looking at Xcursor theme tutorials it seems like you could just convert
the bitmaps for the cursorfont to pngs and be 90% there.

> Barring that, is there a clean way to disable Xcursor? So far,
> about the only workaround I've found is to point the XCURSOR_PATH
> environment variable to a non-existent directory, e. g., in my
> ~/.xsession.

Use a different window manager? I use icewm and have pure old-school
cursors.

$ echo 'Xtermtest*pointerShape: trek' >> ~/.Xdefaults
$ xterm -name Xtermtest
# new xterm has the stupidest cursor shape in the font instead of the
# nice clean I beam shape.

Elijah
------
'*pointerShape: shuttle' is a close second

Ivan Shmakov

unread,
Apr 10, 2019, 1:40:38 PM4/10/19
to
>>>>> Eli the Bearded <*@eli.users.panix.com> writes:
>>>>> In comp.windows.x, Ivan Shmakov <iv...@siamics.net> wrote:

>> Curiously, is there a "classic" Xcursor theme available from
>> somewhere? That is, a theme with monochrome cursors with the same
>> look as the "native" X cursors, perhaps with one or more different
>> sizes available as well?

> Looking at Xcursor theme tutorials it seems like you could just
> convert the bitmaps for the cursorfont to pngs and be 90% there.

Indeed; I now see there's xcursorgen(1) in x11-apps, thanks.

I guess it'd make sense to try to generate cursors with larger
dimensions, given the higher screen resolutions currently in use.

>> Barring that, is there a clean way to disable Xcursor? So far,
>> about the only workaround I've found is to point the XCURSOR_PATH
>> environment variable to a non-existent directory, e. g., in my
>> ~/.xsession.

> Use a different window manager? I use icewm and have pure old-school
> cursors.

That's interesting; my guess was that new-style cursors were
requested by the applications explicitly -- as suggested by the
fact that, say, $ XCURSOR_PATH=/nowhere xedit & resulted in an
Xedit starting unaffected by them. (And accesses to the Xcursor
directories showing in strace(1) output spoke in favor this
conclusion as well.) But it seems to be more complicated than
that, as some programs do not appear to be linked against
libXcursor, yet still show decidedly non-classic cursors.

Conversely, Firefox employs such cursor regardless of how (or if)
the WM treats them.

Then again, libX11 isn't /linked/ against libXcursor -- but it
references the latter by name, per $ strings output. (Now, also
seeing all the *-theme dependencies in Debian, I'm eager to try
adding "path-exclude /usr/share/icons/*" to dpkg.cfg and see if
anything breaks.)

Finally, I'm not always at liberty to choose a WM I wish for the
systems I work with, so a way to opt out independent of the WM
choice would still be handy.

> $ echo 'Xtermtest*pointerShape: trek' >> ~/.Xdefaults
> $ xterm -name Xtermtest

> new xterm has the stupidest cursor shape in the font instead of the
> nice clean I beam shape.

As was pointed earlier in this newsgroup, it's easier to just:

$ xterm -xrm "*pointerShape: trek"

(Then again, apparently ~/.Xdefaults is not read when $ xrdb -query
is non-empty.)

Curiously, XTerm is about the only X application that doesn't
seem to use Xcursor regardless of the settings.

> '*pointerShape: shuttle' is a close second

I've always thought of 'gumby' as ridiculously out of place.

Ivan Shmakov

unread,
May 19, 2023, 6:31:02 PM5/19/23
to
>>>>> On 2019-04-10, Ivan Shmakov wrote:
>>>>> Eli the Bearded <*@eli.users.panix.com> writes:
>>>>> In comp.windows.x, Ivan Shmakov <iv...@siamics.net> wrote:

>>> Barring that, is there a clean way to disable Xcursor? So far,
>>> about the only workaround I've found is to point the XCURSOR_PATH
>>> environment variable to a non-existent directory, e. g., in my
>>> ~/.xsession.

(Still haven't figured it out. On my own Debian installs, the
workaround below seems to work.)

>> Use a different window manager? I use icewm and have pure old-school
>> cursors.

> That's interesting; my guess was that new-style cursors were
> requested by the applications explicitly -- as suggested by the
> fact that, say, $ XCURSOR_PATH=/nowhere xedit & resulted in an
> Xedit starting unaffected by them. But it seems to be more
> complicated than that, as some programs do not appear to be linked
> against libXcursor, yet still show decidedly non-classic cursors.

> Conversely, Firefox employs such cursor regardless of how (or if)
> the WM treats them.

> Then again, libX11 isn't /linked/ against libXcursor -- but it
> references the latter by name, per $ strings output.

> (Now, also seeing all the *-theme dependencies in Debian, I'm
> eager to try adding "path-exclude /usr/share/icons/*" to dpkg.cfg
> and see if anything breaks.)

It does; in particular, /usr/share/icons/Adwaita/16x16/actions/
has icons used by common toolkit dialogs and whatnot, and while
some programs might be happy to show user an empty icon if one
cannot be loaded from there, others just crash in such a case.

Still, I've been using path-exclude=/usr/share/icons/*/cursor/*
for years now without any apparent ill effects. Alongside the
following, just to conserve some blocks and inodes.

path-exclude=/usr/share/icons/*/???x???/*
path-exclude=/usr/share/icons/*/scalable/*
0 new messages