Bug#1007263: Document upgrading dash will change the /bin/sh no matter what

2024-08-08 Thread Russ Allbery
Package: dash
Version: 0.5.12-9
Followup-For: Bug #1007263
X-Debbugs-Cc: r...@debian.org

This topic came up in Policy bug #1074014. It sounds like there is a plan
to document the transition in the release notes, but, going forward, the
mechanism to change the shell underlying /bin/sh sounds like it changed
as part of the current work and users should now do a local diversion of
/bin/sh and create a new symlink.

I think it would be a good idea to add user-facing documentation explaining
how to do that, and I wasn't able to find any in dash (or bash, which is
the most likely but not the only target shell). It probably should be in
more than just NEWS.Debian, as well, since this will continue to be
something some users need to do going forward, such as to handle local
#!/bin/sh scripts that have bashisms.

Maybe the README.Debian file of this package would be an appropriate place?


-- System Information:
Debian Release: trixie/sid
  APT prefers unstable
  APT policy: (990, 'unstable'), (500, 'unstable-debug'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 6.10.3-amd64 (SMP w/12 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages dash depends on:
ii  debianutils  5.20
ii  libc62.39-6

dash recommends no packages.

dash suggests no packages.

-- debconf information:
* dash/sh: true



Bug#1007263: Document upgrading dash will change the /bin/sh no matter what

2022-03-14 Thread 積丹尼 Dan Jacobson
Package: dash
Version: 0.5.11+git20210903+057cd650a4ed-8

/usr/share/doc/dash/ says

dash (0.5.5.1-2.1) unstable; urgency=low

  * The default system shell (/bin/sh) has been changed to dash for
new installations.  When upgrading existing installations, the
system shell will not be changed automatically.
  * One can see what the current default system shell on this machine
is by running 'readlink /bin/sh'.
  * Change it by running 'dpkg-reconfigure dash'. 

 -- Luk Claes   Wed, 22 Jul 2009 17:23:20 +0200

However, my /bin/sh -> bash got changed anyway, so the above is wrong.

# ls -l /bin/sh --full-time
lrwxrwxrwx 1 root root 4 2022-03-15 07:31:29.311937593 +0800 /bin/sh -> dash

# grep  dash /var/log/dpkg.log
2022-03-15 07:31:29 upgrade dash:amd64 0.5.11+git20210903+057cd650a4ed-3 
0.5.11+git20210903+057cd650a4ed-8
2022-03-15 07:31:29 status half-configured dash:amd64 
0.5.11+git20210903+057cd650a4ed-3
2022-03-15 07:31:29 status unpacked dash:amd64 0.5.11+git20210903+057cd650a4ed-3
2022-03-15 07:31:29 status half-installed dash:amd64 
0.5.11+git20210903+057cd650a4ed-3
2022-03-15 07:31:29 status unpacked dash:amd64 0.5.11+git20210903+057cd650a4ed-8
2022-03-15 07:31:29 configure dash:amd64 0.5.11+git20210903+057cd650a4ed-8 

2022-03-15 07:31:29 status unpacked dash:amd64 0.5.11+git20210903+057cd650a4ed-8
2022-03-15 07:31:29 status half-configured dash:amd64 
0.5.11+git20210903+057cd650a4ed-8
2022-03-15 07:31:29 status triggers-awaited dash:amd64 
0.5.11+git20210903+057cd650a4ed-8
2022-03-15 07:33:03 status installed dash:amd64 
0.5.11+git20210903+057cd650a4ed-8

# grep  dash /var/log/apt/term.log
Preparing to unpack .../dash_0.5.11+git20210903+057cd650a4ed-8_amd64.deb ...
Unpacking dash (0.5.11+git20210903+057cd650a4ed-8) over 
(0.5.11+git20210903+057cd650a4ed-3) ...
Setting up dash (0.5.11+git20210903+057cd650a4ed-8) ...
Adding 'diversion of /bin/sh to /bin/sh.distrib by dash'
Adding 'diversion of /usr/share/man/man1/sh.1.gz to 
/usr/share/man/man1/sh.distrib.1.gz by dash'