#261 gnome-terminal -> gnome-console
Closed: Won't fix 8 months ago by ngompa. Opened 2 years ago by catanzaro.

Hi, similar to gedit -> gnome-text-editor, upstream GNOME will be replacing gnome-terminal with gnome-console (formerly King's Cross) in GNOME 42. We probably want to make this change in F36. Upstream ticket


Thanks for raising this, @catanzaro . I'll put it on the agenda as soon as there's opportunity.

I tried out Console again to see where it is at, and it's (intentionally?) very minimal. The complete set of settings is:

  • Dark mode / light mode
  • A scale factor

The features that I'm aware of that are new and different from terminal are:

  • Switching the headbar to red when running as root
  • Switching the headbar to purple when ssh'ing to a remote
  • A slight and non-removable transparency by default

I'd be supportive of switching to Console, even if some users would find it was missing an essential setting, if it had some significant features to surprise and delight, but I'm not sure that it's hitting that bar.

What users do we we to expect to benefit from a transition to Console for F36?

Dark mode / light mode
A scale factor

I'm a little confused on these two points. According to the issue tracker, these are done, and I've seen screenshots of the same version that I have here, with those features. Yet I don't see them.

The scale factor is the zoom setting in the hamburger menu.

I don't see the option for dark mode vs. light mode.

In a build from latest git, the Dark vs. Light mode switcher are black and white circles in the hamburger menu. (Seems to have been added about a month ago.)

kgx-screenshot.png

What about tabs in the new console?

What about tabs in the new console?

Tabs are there and the tab bar slides out with a nice animation.

Does the proposed replacement support multiple terminal profiles? I use those to manage my Toolboxes on Silverblue.

Does the proposed replacement support multiple terminal profiles? I use those to manage my Toolboxes on Silverblue.

Certainly not. You would need to install GNOME Terminal for that.

We seem to have consensus to do this among the WG members who were present at today's meeting. Might want to check again with the full WG after the holidays, but sticking with gnome-terminal (which we have to patch downstream) when upstream has moved on to gnome-console (which would not require Fedora patches) seems like it would be unusual.

We would need to patch glib to launch gnome-console if installed. This would have to be a downstream patch (background) but it would be a one-liner that is easy to rebase.

I'm a -1 to switching to gnome-console. I don't see a story about how this improves things for Fedora users, which leaves only the negative story about how we removed features people were using. I don't want us talking it up in the Fedora 36 release materials, if established users try it out, wonder what they are missing, and switch back.

I don't see a story about how this improves things for Fedora users

I think the story, as far as upstream is concerned, is that Console is more polished and has less clunky historical baggage. The specific things you could point to there are:

  • A better find UI (no dialog that obscures the content beneath)
  • The new tab widget instead of GtkNoteBook
  • Visual polish like overlaid scrollbars, window size indicator, coloured header bars

So maybe the question is less whether there is a user story, and more whether it is compelling enough?

how we removed features people were using

The main omission I've heard mentioned is profiles. Are there any others...?

In addition to profiles, some of the features that I'd expect to hear complaints about include:

  • Custom font [*] (can work around with Tweaks)
  • Pick between predefined color schemes [*]
  • Custom color schemes
  • Pick between predefined color palettes [*]
  • Make a custom color palette
  • Customize shortcuts
  • Disable terminal bell [*] (I could work around with ~/.inputrc)

[*] I personally use these options.

I'm not saying that we need to (or even want to) get to "nobody complaints about anything" but we really need to give people something to latch onto as positive benefits - and for something with that basically just a grid of characters with a thin interface around it - are going to care that much about UI polish?

Custom font [*] (can work around with Tweaks)
Pick between predefined color schemes [*]
Custom color schemes
Pick between predefined color palettes [*]
Make a custom color palette
Customize shortcuts
Disable terminal bell [*] (I could work around with ~/.inputrc)

I don't see issues upstream for a bunch of these, and I can reach out to see about the prospect of adding them. The new text editor has settings for custom fonts and colour schemes so there's a precedent for some of them.

we really need to give people something to latch onto as positive benefits ... are going to care that much about UI polish?

I do think that some users will welcome the new app. What proportion of users that will be, I'm less sure! I do think that there's value in having a more polished, forward-looking terminal - it sends a good message.

More features might help, though of course the question then becomes which features? Adding functionality that isn't relevant to the people we want to win over isn't going to help. And we need to be realistic about what can be achieved.

This discussion is very much about how users will react. Trying to do some research and get some initial feedback might be a good step.

Any suggestions how to install GNOME Console in Fedora 35?

Any suggestions how to install GNOME Console in Fedora 35?

There is a copr for the current stable version here: https://copr.fedorainfracloud.org/coprs/exalm/kgx/. This version predates the rename kgx -> gnome-console.

I understand the current development version has a few enhancements like light/dark theme switcher that are not available in this copr.

I've been using Console/kgx/King's Cross for a week and am very close to preferring it over Terminal. The two things I'm missing to give it a +1 for installation by default:

  • scrollback is too small and can't be configured;
  • selection above/below the visible area, i.e. using scrollback/forward to select more text than fits in the viewable portion, cannot be copy/pasted. It fails to copy any amount of the selected text.

scrollback is too small and can't be configured;

An infinite scrollback option would be nice. I use this on iTerm on macOS and it comes in really handy.

agrees with @otaylor would not switch to gnome-console/kgx as standard right now as its missing a lot of features and settings, also it comes from Posh Mobile GNOME, so would say keep gnome-terminal for now until gnome-console has more needed features

scrollback limit is too short https://gitlab.gnome.org/GNOME/console/-/issues/108

The selection copy/paste issue I mentioned, I can't reproduce today! I'll file a bug once I have a reproducer or at least if it's clearly transient and not just user error.

There is a --set-scrollback option to increase the limit, but like I mention in the bug 1000 lines seems short as a default for typical usage in Fedora. Terminal also has a short scrollback by default. I'm not sure which is less discoverable, Terminal's UI for changing the scrollback, or the cli flag for Console. But at this point I'm more on-board making Console the default than not.

Upstream issues:
- Less limited (or infinite) scrollback: https://gitlab.gnome.org/GNOME/console/-/issues/108
- Common preferences (color, font, bell): https://gitlab.gnome.org/GNOME/console/-/issues/105
- Toolbox integration: https://gitlab.gnome.org/GNOME/console/-/issues/42

This issue was discussed at yesterday's WG meeting. General conclusion was that, before we switch the default terminal to gnome-console, we'd like to see:

  • some of the most obvious gaps between console and gnome-terminal closed
  • more in the way of unique features/selling points in console
  • some communications around console - what its goals are, why it's a good default, why it doesn't have profiles, where we're going with the experience

This translates to a plan as follows:

  1. pursue upstream changes in line with what we'd like to see (see the previous comment)
  2. get console available for testing in Fedora
  3. after 2, do a magazine post about console (and possible gnome-text-editor too)
  4. hopefully make the switch from gnome-terminal to gnome-console for f37

All this is open to revision depending on how things go, of course.

Metadata Update from @aday:
- Issue untagged with: meeting-request

2 years ago

I think that @ngompa agreed to package gnome-console... - setting pending-action for that.

Metadata Update from @aday:
- Issue set to the milestone: Fedora 37
- Issue tagged with: pending-action

2 years ago

Hi @jadahl, is it good enough to submit to upstream?

It's "submitted"ish here: https://gitlab.gnome.org/GNOME/console/-/issues/27 but I'm not sure how the maintainer wants it to look schema wise and how it'd be configured.

I think that @ngompa agreed to package gnome-console... - setting pending-action for that.

Reminder: would be cool to see this packaged, even if it won't be default in F36.

Looks like there's been no progress on any of the priority issues we identified. I suppose that while we identified issues that we'd like to see fixed, we didn't actually find developers to do the fixing, with the exception of the color profile work that Jonas is handling.

BTW, Christian Persch has requested that we drop our gnome-terminal and vte patches if we switch from gnome-terminal -> gnome-console. That seems reasonable to me.

As it stands, it's unlikely that we'll switch to GNOME Console anytime soon.

GNOME Console has been packaged for five months by @ignatenkobrain: https://src.fedoraproject.org/rpms/gnome-console

The author of the app is appearing here as "Zander Brown" and the GitLab link is still https://gitlab.gnome.org/ZanderBrown/KGX. Also, Console appears as kgx in System Monitor.

Ah, nevermind. It isn't yet a stable release.

The WG discussed this issue during yesterday's meeting.

Since the packaging is done, the main outstanding issue is the functionality gaps we previously identified. We also saw that gnome-console didn't have a 42.0 stable release.

I'm going to look into the former issue, and @catanzaro is going to look into the latter.

Metadata Update from @aday:
- Issue untagged with: pending-action
- Issue assigned to aday

2 years ago

There is a Console 42.1 release available now (there was a mistake with releasing 42.0).

We agreed that Console isn't ready yet. Changing the milestone to F38 so we can evaluate it further then.

Metadata Update from @aday:
- Issue set to the milestone: Fedora 38 (was: Fedora 37)

2 years ago

I'm just a user here.

I'd like to comment that other than switching over to GTK4, I'm just not sure what the point is with replacing GNOME Terminal. It works fine for me and it doesn't seem to be advantageous to completely strip down a program that basically only advanced users are going to interact with much with "bash and tabs and that's all".

On top of the loss of all of the useful features (How many are being planned for adding back?), I'm unsure as to how GNOME Console could actually use more memory than GNOME Terminal while not really doing all that much.

Just lobbing another program in that doesn't do what I need it to and making me go through the package repository seeing if anyone makes a terminal emulator that works doesn't seem germane to the notion that the operating system should be useful out of the box. Terminal emulators are more complex than a simple text editor because they really need to be.

I installed Console and was amused that there doesn't even seem to be a way to run a custom shell (fish) without using chsh, much less making it look like I want it to (green screen), much less all of the things that otaylor mentioned 7 months ago which don't appear to have changed much.

If the only "cool" things it does are things that come from GTK4 or colored header bars, or a marginally improved find button, it may make more sense to just graft these on to Terminal and call it good.

I'm actually browsing replacement Terminals now so I know what to use if Console actually lands like this.

Can you create specific feature requests on the upstream issue tracker, please? I don't think Console is landing for F37, but it's almost certainly coming in the F38-F40 timeframe. Console is inherently simpler than Terminal, but should have all the basics needed to be useful.

I'm actually browsing replacement Terminals now so I know what to use if Console actually lands like this.

To be clear, GNOME Terminal is not going to be removed from Fedora. We'll probably drop Fedora's downstream patches, and it won't be installed by default in the future, but it won't disappear.

Console appears as "kgx" in System Monitor. Won't that be a problem?

No, it is not expected for project codenames and binary names to match the public user-facing name of the application.

I was toying around with Console some more and it seems it actually breaks some applications, like ELinks. The right click menu on ELinks (0.15.1) doesn't work. Console intercepts it and shows its own menu.

I should certainly hope this gets addressed.

@baronhk Please try to file an issue to the upstream here: https://gitlab.gnome.org/GNOME/console/-/issues

Is this going to happen in F38? The feature freeze is right around the corner, and I have not seen any proposal to change to GNOME Console in the self-contained changes.

https://fedoraproject.org/wiki/Releases/38/ChangeSet

Nope. Nobody has done any work towards the issues that we identified as important. We'll stick with GNOME Terminal indefinitely.

I gave Console a go, after trying it previously about a year ago, and it seems to be significantly better now. In general the UI seems more polished than Terminal.

Small details that are noticeable:

  • when changing font size with ctrl-+/-, only one tab is changed. This makes such resizing usable again on non-full-screen terminals with more than one tab.
  • the separations between tabs and corners match system style and generally look better
  • visual indication when reaching the end of scrolling
  • having the search window attached to the tab looks much better. It also works properly with multi-tab windows.
  • size is shown as rows×columns when resizing. This is quite a nice developer feature, when you need to know the exact size of the window.

Overall, I think it's at the level where for the features it supports, it is clearly better over Terminal. The question is whether we can add the other features that people requested. It doesn't seem to be that much that is missing.

So I looked through this thread and the Console issue tracker to summarize the issues we've reported or flagged as important. Here are the issues we've previously agreed to block on:

We might additionally want to block on Toolbox integration and Toolbx and Distrobox titlebar color overrides. Otherwise, we have a regression from Terminal: in Terminal, opening a new tab when inside a toolbx should open another tab in the same Toolbx, but in Console it opens the tab on the host system.

I notice Owen filed several additional enhancement requests upstream, but they are not regressions vs. Terminal and I doubt we want to block on them.

I've just edited the list above to replace Add common preferences with more specific issues.

Metadata Update from @aday:
- Issue set to the milestone: None (was: Fedora 38)

a year ago

Something I just noticed is that gnome-console is completely invisible to the screen reader. Using gnome-terminal it will read out the content correctly, but with gnome-console it doesn't utter a sound.

Can you report an upstream bug please (if one does not already exist)?

As a fairly bog-standard user of Fedora Silveblue, I'll pop in to say this:

If Console doesn't at the very least plan to support custom terminal launch commands, I will vehemently reject setting it as the default in any Fedora release.

This is on top of the many other (arguably) basic features from Terminal, which Console has no plans to support after some gaslighting and user blaming from the GNOME Matrix, like Profiles and custom color palettes.

Telling me to go use another terminal for such basic features is not how things work, and in fact, these very basic features are a requirement for many technologies used with Fedora such as toolbox and immutable systems.

@orowith2os if there's a reason you think that profiles or custom color palettes are needed, please provide a short statement of why. It's best to stick to the practical issues!

(Personally, I don't think that either of these features are desirable.)

In Fedora 38 I use Console daily for many months. It's okay.

Personally I would like to get the ability to set unlimited lines buffer in GUI. Currently I have to use dconf-editor or gsettings to set that. In my work I want to have as many output lines as possible, even with cost of more RAM usage.

However, I think Console is not ready because of missing accessibility. Without solving such basic problems this software should not be part of Fedora default installation. Take a look at:
https://gitlab.gnome.org/GNOME/console/-/issues/244. I am not sure how to check whether the problem is fully resolved

However, I think Console is not ready because of missing accessibility.

Hm, thanks for mentioning this, because nobody has brought it up yet earlier in this thread. I agree this should be a blocker too.

However, I think Console is not ready because of missing accessibility.

Hm, thanks for mentioning this, because nobody has brought it up yet earlier in this thread. I agree this should be a blocker too.

It was brought up here https://pagure.io/fedora-workstation/issue/261#comment-862150 and resulted in https://gitlab.gnome.org/GNOME/gtk/-/issues/5912 being reported upstream.

@orowith2os if there's a reason you think that profiles or custom color palettes are needed, please provide a short statement of why. It's best to stick to the practical issues!

(Personally, I don't think that either of these features are desirable.)

Silverblue encourages users to live mostly in toolbox containers. Profiles provide a natural way to manage one's toolboxes. I have set up one terminal profile for each toolbox on my system. Using profiles, I can not only launch a terminal directly in a toolbox but also specify different background colors or other graphical customizations for each toolbox to distinguish them visually.

So I looked through this thread and the Console issue tracker to summarize the issues we've reported or flagged as important. Here are the issues we've previously agreed to block on:

There are now preferences to change font size and fonts, and also a preference to disable the bell sound.

I think we also have a consensus to block on vte accessibility, so I will add that to the list of blocker issues.

We might additionally want to block on Toolbox integration and Toolbx and Distrobox titlebar color overrides. Otherwise, we have a regression from Terminal: in Terminal, opening a new tab when inside a toolbx should open another tab in the same Toolbx, but in Console it opens the tab on the host system.

Opinions on this? The lack of Toolbx support is unfortunate, but I'm a little hesitant to add these to the list of blockers as nobody is working on them.

With GNOME Terminal getting ported to GTK4, I don't think this is worth pursuing. The loss in features and weaker user experience just isn't worth the switch to GNOME Console.

The disadvantage of that is Terminal is no longer part of GNOME core, and I'd prefer not to diverge from GNOME indefinitely without a very strong reason. I'd think of Terminal more like a power user's terminal and Console as the default choice for most users.

Are there other problems you're concerned about besides the list of blocker issues identified above?

Also consider that the Terminal maintainers are not prioritizing work on GTK 4 specifically because Terminal is no longer part of GNOME core. That said, yes, there is indeed now a WIP effort to port to GTK 4.

The disadvantage of that is Terminal is no longer part of GNOME core

This is fixable, and should be fixed given that Fedora and Ubuntu both ship Terminal, not kgx/Console.

Work on the color palettes and a11y support is under way. There is still no progress on scrollback limit, but I've discussed it with Zander (the Console developer) and attempted to clarify the issue report. That is the easiest issue so I doubt it will be the last remaining blocker.

We seem to be on track. I think we can just keep waiting. Neal, do you have specific concerns? You mentioned "loss in features and weaker user experience," but I think Console seems to be shaping up fairly well?

We might additionally want to block on Toolbox integration and Toolbx and Distrobox titlebar color overrides. Otherwise, we have a regression from Terminal: in Terminal, opening a new tab when inside a toolbx should open another tab in the same Toolbx, but in Console it opens the tab on the host system.

Opinions on this? The lack of Toolbx support is unfortunate, but I'm a little hesitant to add these to the list of blockers as nobody is working on them.

There is color support proposed here but the Console developer says that any deeper integration is blocked on toolbx providing nice APIs. I don't think we need to continue tracking the toolbx integration; it's a bonus rather than a must-have.

Now that Christian released Prompt (https://blogs.gnome.org/chergert/2023/12/14/prompt/, https://gitlab.gnome.org/chergert/prompt), should we switch to that instead?

While this would be great for Fedora Workstation, this would be even more useful for Silverblue.

For now, let's wait and see what upstream GNOME does. But yeah, I'd say Prompt is fairly likely to be the winner here. Its design is heavily inspired by Console, but it has more features (session restore, tab overview, preferences) and fewer bugs. Honestly Prompt already feels shippable to me.

Metadata Update from @catanzaro:
- Assignee reset

10 months ago

Christian has decided not to submit Prompt to GNOME core for at least the time being. Maybe he will do so in the future, but for now, upstream has no plans to switch away from Console, so Console is what we should continue to evaluate. Currently the status has not changed since https://pagure.io/fedora-workstation/issue/261#comment-887844; we are still waiting on the issues discussed there.

Switching to Prompt brings all the advantages you get with Console, like the clean libadwaita UI and the coloured headerbar so you always know if you're using sudo or ssh - along with many nice features Console doesn't have - profiles, themes, and container awareness which makes it perfect for Silverblue. Prompt is basically the app Console should've been, I'd really rather Fedora Workstation switches to Prompt or just stays with Terminal especially now that its GTK 4 port is in the works. Console isn't acceptable.

Metadata Update from @ngompa:
- Issue tagged with: default-apps, experience

8 months ago

Metadata Update from @ngompa:
- Issue tagged with: packaging

8 months ago

We're not switching to GNOME Console. But let's see if we can get Ptyxis packaged and look at what shipping it would look like for further evaluation.

I'm going to create a new ticket for this, and close this one, since we're definitely not doing this.

Metadata Update from @ngompa:
- Issue close_status updated to: Won't fix
- Issue status updated to: Closed (was: Open)

8 months ago

New ticket about ptyxis is in #417

Log in to comment on this ticket.

Metadata
Attachments 1
Attached 2 years ago View Comment