From Fedora Project Wiki


Color Bash Prompt

This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

Summary

Introduce a default colored prompt for Fedora's default shell bash.

Owner


Current status

  • Targeted release: Fedora Linux 39
  • Last updated: 2023-06-27
  • [<will be assigned by the Wrangler> devel thread]
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

For a long time the Fedora default shell prompt has been monochrome, which makes it difficult to find shell prompt commands between long command outputs when scrolling through terminal shell output. This Change introduces a simple default colored shell prompt, which users can also easily theme themselves.

screenshot of color bash prompt in gnome-terminal

Feedback

Initial devel list discussion thread

There seems to be a general desire to have a colored prompt like other popular distros, which commonly use green etc, though some concerns were raised about colorblind users. However given that the original prompt was black & white, and the new one while colored will still be essentially monochromatic, it should be less of a problem and users will easily be able to turn off or change any color introduced.


Benefit to Fedora

Fedora will have a more modern and distinct default shell prompt.

Scope

  • Proposal owners:
    • update the default bash PS1 to a simple essentially monochromatic prompt (restricted to interactive color terminals).
  • Other developers: bash and setup package maintainers to be consulted on the preferred implementation file location
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with Community Initiatives:

Upgrade/compatibility impact

No impact for rpm editions, ostree editions may gain the default color prompt if they include its package.


How To Test

  • install Fedora and test the new PS1 prompt in various terminals and scenarios
    • desktop default terminals should be expected to render the new prompt well
  • try customizing the prompt theme by setting `PROMPT_COLOR='1;33', etc

A proof of concept can be tested today with https://copr.fedorainfracloud.org/coprs/petersen/bash-color-prompt/ (source git repo)


User Experience

Fedora users will now benefit from a clear self-colored shell prompt, which should make the separation between command outputs and shell prompts much clearer and they can also easily customize the prompt coloring in real-time as they desire.


Dependencies

None


Contingency Plan

  • Contingency mechanism: Change owner will revert PS1 back to monochrome prompt
  • Contingency deadline: Beta freeze
  • Blocks release? Yes

Documentation

ANSI color attributes (Wikipedia)


Release Notes

The default shell prompt is now in a distinct color for increased clarity and the theme can be customized.