Instale el nuevo NANO (2.4) usando BREW pero aún usa versiones antiguas (¿no se creó el enlace simbólico?)

Instalé NANO 2.4 pero mi OS X todavía usa 2.0. Creo que tiene algo que ver con el enlace simbólico que no se creó.

Primero hice tapping en homebrew/dupes para poder preparar la instalación de nano

~  brew tap homebrew/dupes
==> Tapping homebrew/dupes

~  brew install nano
==> Installing nano from homebrew/homebrew-dupes

si hago un

which nano

yo obtengo

/usr/bin/nano

pero el brebaje se instaló en el directorio a continuación y lo confirmé como 2.4 ejecutando el programa directamente desde aquí

/usr/local/Cellar/nano/2.4.2_1/bin

Creo que no se creó un enlace simbólico porque nano ya está incluido en mac os x, ¿es seguro anularlo?

Recibí la siguiente advertencia en la instalación de cerveza de

==> Downloading https://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz
######################################################################## 100.0%
==> ./configure --prefix=/usr/local/Cellar/ncurses/6.0 --enable-pc-files --enable
==> make install
==> Caveats This formula is keg-only, which means it was not symlinked into /usr/local.

OS X already provides this software and installing another version in
parallel can cause all kinds of trouble.

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/ncurses/lib
    CPPFLAGS: -I/usr/local/opt/ncurses/include

==> Summary 🍺  /usr/local/Cellar/ncurses/6.0: 1970 files, 21M, built in 114 seconds

Respuestas (2)

Siempre puede crear un enlace simbólico /usr/local/binmanualmente, que (dependiendo del orden de los componentes de la ruta en $PATH) sombreará el binario estándar en /usr/bin. Como nanosolo se usa de forma interactiva, el riesgo de romper algo es probablemente bastante pequeño.

Hola. Sí, parece que ya existe un enlace simbólico en /usr/local/bin
31B 18 de octubre 10:42 nano -> ../Bodega/nano/2.4.2_1/bin/nano
pero usr/bin tiene prioridad sobre /usr/local/bin
¿La respuesta simple es eliminar NANO de /usr/bin? Me di cuenta de que mi ruta tiene /usr/local/bin primero, así que no sé por qué no lo detecta echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/ sbin
Simplemente inicie un nuevo shell entonces, la ruta anterior todavía está codificada
Úselo brew link --force nanopara hacer el enlace simbólico.
Para agregar al comentario de @nohillside: O ejecute "hash -r" para actualizar los hashes de ruta.

Estaba teniendo el mismo problema, el motivo era la prioridad del camino incorrecto.

Para solucionarlo, debe editar /etc/paths (archivo de sistema global) y establecer /usr/local/bin antes de /usr/bin.

En mi caso, mi archivo de rutas fue:

/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin

Y modifiqué a:

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

Luego guarde el archivo y reinicie la sesión de terminal. Todo bien después de eso.