Letting off steam!

It's possible that what I've just learnt may be of use to other ctwm users
whose linux distributions change in 'hidden' ways. This wasted a *lot* of
my time!

After upgrading my laptop and desktop machines from Fedora 25 to 27 I was
annoyed to find that items accessing gnome-control-center in .ctwmrc
stopped working, e.g.

  "Gnome Vol"   ! "/usr/bin/gnome-control-center sound &"
  "NET"         ! "/usr/bin/gnome-control-center network &"

did not work.

After struggling for some time to find alternatives, I stumbled across this
bug-report:

    
https://www.reddit.com/r/Fedora/comments/7dcc0o/fix_for_blank_gnome_control_center_settings_with/

and learnt that to preserve the old functionality of gnome-control-center,
it is now necessary to define this environment variable:

    XDG_CURRENT_DESKTOP  as  GNOME

E.g., since I've got into the habit of using tcsh as my login shell, I now
have put this in a login script:

     setenv XDG_CURRENT_DESKTOP GNOME

I presume bash users will need to use export ?

The reddit bug-report adds:

     You can edit the desktop entry file at
        /usr/share/applications/gnome-control-center.desktop

I think it's better for individual users, especially on a shared machine,
to make such changes, instead of using a 'central' location, e.g.
    /usr/share/...

Would it be possible for CTWM users to extend the functionality of .ctwmrc
with an environment section, e.g., by analogy with 'Color:'

Something like:

Environment_extensions:
    {
        XDG_CURRENT_DESKTOP GNOME
        PATH ...
    }

so that all commands invoked will from ctwm will have the required
environment-extensions. Restricting $PATH could be useful for 'secure'
environments, or a machine shared with younger family members?

Some applications may need environment restrictions, rather than
extensions, e.g. for security reasons.

Presumably people who use a gnome based linux will not have this problem
as things will be set up by the gnome login mechanism?

Using google to search for XDG_CURRENT_DESKTOP, reveals that a lot of
people have been having problems with this change.

I suspect better system designers would have redefined gnome-control-center
to alter the environment variable locally, and added a new command, e.g.
'new-control-center' which has to take advice from the XDG_CURRENT_SETUP
environment variable. Then gnome-control-center would set the environment
variable to preserve functionality and invoke new-control-center (or
whatever).

Aaron

Reply via email to