ports/145657: The completion for mount(8) doesn't include the output from `glabel list'

Frédéric Perrin frederic.perrin at resel.fr
Mon Apr 12 17:10:02 UTC 2010

>Number:         145657
>Category:       ports
>Synopsis:       The completion for mount(8) doesn't include the output from `glabel list'
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Apr 12 17:10:01 UTC 2010
>Originator:     Frédéric Perrin
>Release:        FreeBSD 8.0 RELEASE
FreeBSD girafe 8.0-RELEASE FreeBSD 8.0-RELEASE #0: Sat Nov 21 15:48:17 UTC 2009     root at almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i386

The zsh port (zsh-4.3.10_3 right now) installs a couple of FreeBSD-specific completion functions. One of them, for mount(8), gives the list of devices that may be mounted (as the first argument to mount).  The output from `glabel list' should be included, but isn't because of a typo.

Additionnaly, `glabel list|grep Name' doesn't include the /dev prefix; this may be because of a change in the way `glabel' prints its information (FreeBSD 7.2 RELEASE doesn't either; I'm too young to remember older releases).
Make sure you have a device such as `/dev/ufs/something', not listed in /etc/fstab/.

Using zsh-4.3.10_3, type `mount /dev/[TAB]'. `/dev/ufs/something' should be suggested for completion, but isn't.
--- patch-Completion-Unix-Command-_mount.orig	2010-04-12 19:03:06.000000000 +0200
+++ patch-Completion-Unix-Command-_mount	2010-04-12 18:47:53.000000000 +0200
@@ -117,7 +117,7 @@
 +    # add glabel devices
 +    _glabel=(${(M)${(f)"$(/sbin/glabel list)"}:#*Name:[[:space:]]*/*})
 +    for mline ($_glabel);do
-+	    dev_tmp+=( mline[(w)3] )
++	    dev_tmp+=( /dev/$mline[(w)3] )
 +    done
      _alternative \


More information about the freebsd-ports-bugs mailing list