Re: git: 8cfbeb56aa16 - main - bsdinstall services: Improve mouse configuration
Date: Thu, 06 Oct 2022 20:38:34 UTC
On 21 May 2022, at 15:42, Alfonso S. Siciliano <asiciliano@FreeBSD.org> wrote:
>
> The branch main has been updated by asiciliano:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=8cfbeb56aa160de1ea4f492abeb3aa029e84269f
>
> commit 8cfbeb56aa160de1ea4f492abeb3aa029e84269f
> Author: Alfonso S. Siciliano <asiciliano@FreeBSD.org>
> AuthorDate: 2022-05-21 14:37:53 +0000
> Commit: Alfonso S. Siciliano <asiciliano@FreeBSD.org>
> CommitDate: 2022-05-21 14:42:23 +0000
>
> bsdinstall services: Improve mouse configuration
>
> bsdinstall(8) has an option to enable moused support.
> However, if it is not selected, moused is still started
> through the configuration of nondefault devices.
> So, automatically add the moused_nondefault_enable="NO"
> setting to rc.conf unless moused support is selected.
>
> PR: 227999
> Reported by: bcran
> Reviewed by: bapt
> Differential Revision: https://reviews.freebsd.org/D35193
I question the wisdom of this change. The text specifically says “PS/2
mouse pointer”, because moused_enable controls only the default mouse,
which rc.conf sets to /dev/psm0. Turning this option on or off would
therefore affect specifically the PS/2 mouse, precisely as described in
the dialog menu entry. USB mice would always remain enabled.
However, now, leaving the explicitly-PS/2 mouse option disabled *also*
disables non-default, i.e. USB, mice. Moreover, if you go and enable
the option so USB mice work, PS/2 mice are always enabled, but you may
not have a /dev/psm0. You may even be on an architecture where PS/2
does not exist; atkbdc, and thus psm, only exists for x86. This means
that, in those cases, enabling the option gives an error during boot
because /dev/psm0 doesn’t exist.
I can understand that some people want to turn off console mouse
support completely; however, with the current way moused works, that
cannot just be a single option that governs both moused_enable and
moused_nondefault_enable.
Jess
> ---
> usr.sbin/bsdinstall/scripts/services | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/usr.sbin/bsdinstall/scripts/services b/usr.sbin/bsdinstall/scripts/services
> index f9141a523a31..1ac69fa63b2d 100755
> --- a/usr.sbin/bsdinstall/scripts/services
> +++ b/usr.sbin/bsdinstall/scripts/services
> @@ -61,11 +61,17 @@ if [ $retval -ne $BSDDIALOG_OK ]; then
> fi
>
> havedump=
> +havemouse=
> for daemon in $DAEMONS; do
> [ "$daemon" = "dumpdev" ] && havedump=1 continue
> + [ "$daemon" = "moused" ] && havemouse=1
> echo ${daemon}_enable=\"YES\" >> $BSDINSTALL_TMPETC/rc.conf.services
> done
>
> +if [ ! "$havemouse" ]; then
> + echo moused_nondefault_enable=\"NO\" >> $BSDINSTALL_TMPETC/rc.conf.services
> +fi
> +
> echo '# Set dumpdev to "AUTO" to enable crash dumps, "NO"' \
> 'to disable' >> $BSDINSTALL_TMPETC/rc.conf.services
> if [ "$havedump" ]; then