GNU bug report logs - #62237
28.1 or higher: 24-bit true color breaks colours in Emacsen built without X under GNU Screen

Previous Next

Package: emacs;

Reported by: Sebastian Tennant <sdt <at> sebyte.me>

Date: Fri, 17 Mar 2023 09:42:02 UTC

Severity: normal

Found in version 28.1

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #71 received at 62237 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Tennant <sdt <at> sebyte.me>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: rpluim <at> gmail.com, 62237 <at> debbugs.gnu.org
Subject: Re: bug#62237: 28.1 or higher: 24-bit true color breaks colours in
 Emacsen built without X under GNU Screen
Date: Sat, 18 Mar 2023 17:56:32 +0000
Quoth Eli Zaretskii <eliz <at> gnu.org>
on Sat, 18 Mar 2023 17:13:45 +0200:
>> From: Sebastian Tennant <sdt <at> sebyte.me>
>> Cc: Eli Zaretskii <eliz <at> gnu.org>,  62237 <at> debbugs.gnu.org
>> Date: Sat, 18 Mar 2023 15:01:53 +0000
>>
>> […]
>>
>> According to:
>>
>>  https://packages.debian.org/search?keywords=screen
>>
>> Debian bookworm (the next stable release) will ship screen version
>> 4.9.0.  I've downloaded the deb and grepped the manpage and the
>> string "truecolor" is nowhere to be found so it looks as if screen
>> shipped by Debian will lack support for truecolor for some years to
>> come.
>
> According to this:
>
>   https://bbs.archlinux.org/viewtopic.php?id=249670
>
> true color support in 'screen' will be released in version 5, and the
> 4.x branch of 'screen' doesn't support it.  This is consistent with
> the fact that you built 'screen' from their mast branch, and it
> announces itself as version 4.99, i.e. the development version of
> v5.x.  I guess an entry in etc/PROBLEMS about this is in order.
>
> What is still a mystery to me is why does GNOME Terminal set
> COLORTERM=truecolor in the environment.  Does it assume that 'screen'
> will not be used or something?  Or does GNOME itself support true
> color?

Debian bullseye (stable) ships GNOME Terminal version 3.38.3,
tagged/released 4th Feb 2021:

 https://gitlab.gnome.org/GNOME/gnome-terminal/-/commits/3.38.3

Yet, this commit, made 26th April 2014:

 https://gitlab.gnome.org/GNOME/gnome-terminal/-/commits/1d5c1b6ca6373c1301494edbc9e43c3e6a9c9aaf/

reads:

 screen: Stop setting COLORTERM env var
 […]
 COLORTERM is a long-obsolete slang-only variable used to work around
 broken termcap/terminfo entries.

Hmm...


Turns out GNOME Terminal uses VTE (Virtual TErminal):

 https://gitlab.gnome.org/GNOME/vte

and COLORTERM is set to ‘truecolor’ in function merge_environ, on line
261 of file src/spawn.cc:

 https://gitlab.gnome.org/GNOME/vte/-/blob/master/src/spawn.cc

As to why, I've written to Christian Persch and I shall update this
bug report as soon as I receive a response.


-- 
Dorothy Annan Trevor Tennant database - DATTdb
http://dattdb.info




This bug report was last modified 2 years and 57 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.