This proposal is about moving bash out of the Essential:yes set. The initial discussion can be found in https://lists.debian.org/debian-devel/2011/04/msg00185.html.
TODO: Fill in the reasons, advantages and disadvantages here.
The following is a list of things (possibly non-exhaustive) that would need to be done before considering removing the Essential:yes field.
Check how many packages contain scripts and binaries using bash. Lars posted some scripts and numbers but only for scripts using bash in their shebang.
- Turn the above into a lintian check.
- Either:
- Switch bash scripts that do not use any bashism to POSIX shell scripts.
- Rewrite bash script to POSIX shell scripts.
- Switch implicit dependencies on bash to explicit ones.
Handle the login issue. 620898
- Change all shell packages to abort on removal when they are any users' shell.
- This will not work if restricted only to root. Many systems do not have a root login, and are administered using a normal user account and “sudo”. --mirabilos, guillem
- Make sure login will fallback to /bin/sh if the user shell is not available. There's a patch in the bug report which should cover most of the issue.
- Change all shell packages to abort on removal when they are any users' shell.
- Handle the loss of essentialness for root's shell when unpacking. Guarantee any shell package is always functional.