#275623 sync root's .bashrc and .profile with bash's skeletons

Package:
base-files
Source:
base-files
Description:
Debian base system miscellaneous files
Submitter:
Jaap Haitsma
Date:
2024-04-17 12:15:05 UTC
Severity:
wishlist
Tags:
#275623#5
Date:
2004-04-05 19:41:12 UTC
From:
To:
The standard .bashrc files after a fresh install have very common
options such as aliases for ll, l, la commented out. The root account
doesn't even have color ls set and also doesn't update the title bar of
an xterm.
New users used to other distros would expect these things to work out of
the box. Power users can comment these things out if they do not want
it. So my suggestion is to have these features enabled by default.

#275623#12
Date:
2004-06-11 11:37:52 UTC
From:
To:
Being a user for normal work makes me comfortable with
in the information that "COLOR_OPTIONS" provides.

When I'm root, I do miss the information that the colors provide.

On new installed systems ( chroot also ) I find myself
enabling the --color option for ls.

Please enable it the same (consitend) way
and will means color for root  :-)


Cheers
Geert Stappers

#275623#33
Date:
2005-04-18 22:11:38 UTC
From:
To:
Hi,

what's the status of this wishlist item? Any chance to get it into the
official package?

Thanks,

Free

#275623#38
Date:
2005-04-18 22:31:02 UTC
From:
To:
If I had to decide right now what to do about this bug, I would
probably close it. Policy says dotfiles should be as empty as possible.
Asking that root's dotfiles have things that they should not have to
begin with is simply wrong.

I have to think about this carefully. Don't expect this to be "fixed"
as I do not consider it to be a bug.

#275623#43
Date:
2010-04-21 12:36:58 UTC
From:
To:
Hi.

What's the status on this?

I'd also say root's .profile/.bashrc should be rather empty per default, a
user can still copy the files from bash's /etc/skel/-stuff if he wants.

But another thing. Although bash is required/essential, I guess:
base-files should be rather neutral on the used shell, shouldn't it?

So does it make sense to remove /usr/share/base-files/dot.bashrc
completely from it, as .bashrc is stricly speaking only for bash?
It's empty anway nowadays (everything is commented)...

Is root created by adduser during installation? If so, wouldn't it make
sense to move responsibility of the installation of root's
.profile/.bashrc/etc. to that?

Than base-files could drop both files completely.


Cheers,
Chris.

#275623#48
Date:
2011-11-23 15:11:31 UTC
From:
To:
Hi,

I prefer ".profile" and ".bashrc" files in /root to be in sync with
skeleton or not created at all. The current situation is an
unnecessary third way.

Regards

#275623#53
Date:
2016-07-09 11:07:53 UTC
From:
To:
Please, make /etc/skel/.bashrc and root's .bashrc identical. Yes, you may make them both as empty as you want. But there is no any need in keeping them different.

When I create new system, I edit this files using my scripts. This is part of my scripts:

sed -i 's/^#force_color_prompt=yes$/force_color_prompt=yes/' ~/.bashrc
sudo sed -i 's/^\(# \|\)PS1=.*$/PS1='\''\\[\\033[1m\\]\\u@\\h:\\w\\$\\[\\033[0m\\] '\''/' /root/.bashrc

As you can see, I have to handle this bashrc's different, because they are different.
Yes, I can just copy /etc/skel/.bashrc into /root/.bashrc. But then this would be kludge. Why users of the system have to do such copy? Why not just make this files identical upstream?
Please, fix this in stretch or at least in buster. So that when new debian release is deployed, I will not use such kludges any more.

Also, please, make whole /etc/skel be copied into /root at installation time. This will merge /etc/skel/.bashrc with /root/.bashrc and same for .profile etc.

==
Askar Safin

#275623#58
Date:
2022-07-06 13:19:42 UTC
From:
To:
Dear Maintainer,

the current behavior is very inconsistent in regards to
`bash_completion`:

- if you login as user `root` on the console or via `ssh` and get an
  *interactive login shell*, which first executes `/etc/profile` and
  thus sources `/etc/profile.d/bash_completion.sh`.

- For a regular user `/etc/skel/.bashrc` is used instead, which
  *explicitly* sources bash completion.

- if you use `sudo -s` to become `root` or use `screen` as `root`, you
  get an interactive *non*-login shell instead, which skip
  `/etc/profile` and use `/root/.bashrc` only.
  It does *not* source bash completion.

So everyone except `root` gets bash completion by default.
`root` also gets completion but *not* when using `screen` or `sudo`.

So if `root` should have a "minimal" environment, `/etc/profile` would
need an exception to skip things if run by `root`.
Instead I prefer `root` to have bash completion by default.

Your fellow DD
Philipp

PS: also see my analysis at
<https://forge.univention.org/bugzilla/show_bug.cgi?id=54717#comment3>

#275623#63
Date:
2023-04-20 12:15:14 UTC
From:
To:
Yes, current situation breaks bash-completion. Moreover, it breaks
bash-completion in standard debian images for docker. Because in this
images you enter the container as root via non-login shell. So,
bash-completion in docker simply doesn't work.

So, please, copy /etc/skel/.bashrc to /root/.bashrc . I can write a
patch, if you want.

#275623#72
Date:
2023-04-20 22:24:55 UTC
From:
To:
El 20/4/23 a las 14:15, Askar Safin escribió:

I want to keep dotfiles for root as simple as possible.
If you need to change them, you can always change them
in your system, and the changes will be preserved.

The feature which you are asking to be enabled by default is an
optional feature which in no way it's necessary to be present.

Therefore, this is really a wontfix, but for now I prefer to keep it as wishlist.

Thanks.