From Fedora Project Wiki
m (Skyeforeverblue moved page Changes/Enable pwfeedback in sudo by default to Changes/Enable pwfeedback in sudo by default in desktop editions: Clarifying the scope of this Change)
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 6: Line 6:


== Summary ==
== Summary ==
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release. Note that motivation for the change should be in the Benefit to Fedora section below, and this part should answer the question "What?" rather than "Why?". -->
This change enables visual feedback for sudo's password prompt by default.


== Owner ==
== Owner ==
<!--
For change proposals to qualify as self-contained, owners of all affected packages need to be included here. Alternatively, a SIG can be listed as an owner if it owns all affected packages.
This should link to your home wiki page so we know who you are.
-->
* Name: [[User:Skyeforeverblue|Skye Chappelle]]
* Name: [[User:Skyeforeverblue|Skye Chappelle]]
<!-- Include you email address that you can be reached should people want to contact you about helping with your change, status is requested, or technical issues need to be resolved. If the change proposal is owned by a SIG, please also add a primary contact person. -->
* Email: skyeforeverblue@tuta.io
* Email: skyeforeverblue@tuta.io
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
Line 71: Line 66:


== Benefit to Fedora ==
== Benefit to Fedora ==
This change will benefit Fedora by making sudo easier to use for both novice and advanced users. It will make Fedora Linux more friendly and approachable for everyone.<!-- What is the benefit to the distribution?  Will the software we generate be improved? How will the process of creating Fedora releases be improved?
This change will benefit Fedora by making sudo easier to use for both novice and advanced users. It will make Fedora Linux more friendly and approachable for everyone.
 
      Be sure to include the following areas if relevant:
      If this is a major capability update, what has changed?
          For example: This change introduces Python 5 that runs without the Global Interpreter Lock and is fully multithreaded.
      If this is a new functionality, what capabilities does it bring?
          For example: This change allows package upgrades to be performed automatically and rolled-back at will.
      Does this improve some specific package or set of packages?
          For example: This change modifies a package to use a different language stack that reduces install size by removing dependencies.
      Does this improve specific Spins or Editions?
          For example: This change modifies the default install of Fedora Workstation to be more in line with the base install of Fedora Server.
      Does this make the distribution more efficient?
          For example: This change replaces thousands of individual %post scriptlets in packages with one script that runs at the end.
      Is this an improvement to maintainer processes?
          For example: Gating Fedora packages on automatic QA tests will make rawhide more stable and allow changes to be implemented more smoothly.
      Is this an improvement targeted as specific contributors?
          For example: Ensuring that a minimal set of tools required for contribution to Fedora are installed by default eases the onboarding of new contributors.
 
    When a Change has multiple benefits, it's better to list them all.
 
    Consider these Change pages from previous editions as inspiration:
    https://fedoraproject.org/wiki/Changes/Annobin (low-level and technical, invisible to users)
    https://fedoraproject.org/wiki/Changes/ParallelInstallableDebuginfo (low-level, but visible to advanced users)
    https://fedoraproject.org/wiki/Changes/VirtualBox_Guest_Integration (primarily a UX change)
    https://fedoraproject.org/wiki/Changes/NoMoreAlpha (an improvement to distro processes)
    https://fedoraproject.org/wiki/Changes/perl5.26 (major upgrade to a popular software stack, visible to users of that stack)
-->


== Scope ==
== Scope ==

Latest revision as of 21:58, 17 October 2024


Enable pwfeedback in sudo by default

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

This change enables visual feedback for sudo's password prompt by default.

Owner


Current status

  • Targeted release: Fedora Linux 42
  • Last updated: 2024-10-17
  • [Announced]
  • [<will be assigned by the Wrangler> Discussion 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

Feedback

Several (most) of the users in the Fedora Discussion thread I made for this agree that this change makes sense, for several reasons:

- "Hmmm, I haven’t thought about this in years — thanks for bringing it up. I think it’s a reasonable suggestion, especially since other password prompts on the desktop act that way." (mattdm)

- "Even as an experienced Linux user there are times when I’m not sure I’m actually typing the password or not." (bcotton)

- "I think this is a reasonable distro-wide (that is, for all variants) change to consider, since it’s a strange default to not show feedback when typing. There are also implications for remote connectivity: if you don’t see feedback, you cannot tell if your typing actually made it over to the other side and that can result in you inadvertently mistyping." (ngompa)

Espionage724 had some differing opinions:

- "No since nobody else does it." (this is not true; several other distributions, notably Linux Mint, do this by default as well)

- "It can be an option for people that want it, but I don’t agree with it being a default. I believe it to be reducing a good security practice as a minor user “convenience”, and don’t like the idea of encouraging others to reduce good security practices/exposing others to reduced good security practices." (mattdm had earlier said "Also, in 2024, if you are worried enough about someone snooping over your shoulder to gain information about your password length… why are you still using passwords?", which I believe is valid. (Matthew said this before Espionage724 chimed in, but it works as a good response to Espionage724's statement here.))

Espionage724 suggested an alternative to enabling this by default:

"They could tie it behind a gsettings prop; I already have to mess with my mouse stuff through it with libinput. I’m not too sure how other DEs handle that, but iirc gsettings didn’t throw an error on Plasma 6, and was usable on Xfce also for mouse accel.". catanzaro replied to this with "GNOME is not going to expose a preference for whether sudo should display asterisks when you type your password or not. That’s way too niche.", which is unfortunately probably true.

vgaetera says, "I think we should more carefully consider this change. The silent prompt behavior is consistent for most CLI tools.", which I think is worth considering; however, I still think the usability benefit outweighs this.

Benefit to Fedora

This change will benefit Fedora by making sudo easier to use for both novice and advanced users. It will make Fedora Linux more friendly and approachable for everyone.

Scope

  • Proposal owner: Skye Chappelle
  • Other developers:
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with the Fedora Strategy:

I think this aligns with the Fedora Strategy because it makes Fedora Linux slightly more usable for everyone, new and old users alike.

Upgrade/compatibility impact

According to ngompa, RPM should handle this in exactly the way I wanted without much effort. The change will only take effect if someone hasn't modified their sudoers file(s) manually.


Early Testing (Optional)

Do you require 'QA Blueprint' support? N (not system wide change)

How To Test

Edit /etc/sudoers, replacing "Defaults !visiblepw" with "Defaults pwfeedback". Run a command with sudo. Your password should be displayed as asterisks in the prompt.

User Experience

This will make sudo password prompts more friendly and consistent with other password prompts a normal user is likely to encounter. This will make it easier for novices and advanced users to use the system. -->

Dependencies

N/A

Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change)


Documentation

N/A (not a System Wide Change)

Release Notes

sudo now shows visual feedback for passwords by default on Desktop releases.