Mc: Conflicto con Midnight Commander

Creado en 9 sept. 2016  ·  7Comentarios  ·  Fuente: minio/mc

El nombre binario entra en conflicto con Midnight Commander.

He leído los tickets anteriores sobre este tema y he evaluado su opinión. Aún así, creo que _deberías_ evitar usar el mismo nombre que mc . Es bueno que hayas buscado un nombre más corto aquí, pero chocar con otros nombres es inaceptable. Si el _usuario_ quiere un nombre más corto, puede configurar un alias en shell. Hay miles (https://qa.debian.org/popcon.php?package=mc) de usuarios que ya usan Midnight Commander.

En realidad, este caso conduce a una situación en la que no es posible instalar conjuntamente minio-mc y midnight commander a través de homebrew. Ver https://github.com/Homebrew/homebrew-core/commit/badeeeb5aced1cf9ef0cc9332453ac56a0db9df8#diff -c021a0c2c90326616e8d0c422a20d4fdR11

Les insto a que reconsideren el nombre de este proyecto.

wontfix

Comentario más útil

POSIX es irrelevante para las necesidades actuales.

Tú, yo y todos los demás lo usamos todos los días. ¿Cómo es eso irrelevante?

Los sistemas operativos modernos deben admitir binarios instalados por el usuario en su propio espacio de nombres

Ya lo están, pero esto no resuelve el caso cuando hay dos binarios en $ PATH usando el mismo nombre. Desafortunadamente, sus ilusiones no resolverán esto ahora ni en el futuro.

Esta es la razón por la que nodejs, Go, Python se han alejado de los módulos de paquetes proporcionados por la distribución.

Estás mezclando las cosas. Los lenguajes de programación nunca usaron paquetes específicos de distribución en primer lugar. Downstream los vuelve a empaquetar para que cumplan con las políticas existentes. Esto permite al usuario final instalar fácilmente cualquier paquete sin molestarse en configurar el entorno de desarrollo y construir todo desde cero.

También es poco probable que los usuarios de midnight commander también utilicen mc.

¿Qué? Soy un usuario activo de mc desde hace 12 años. Cada instancia de Mindnight Commander utiliza mc como nombre binario. Tu declaración no tiene ningún sentido.

Está bien que los paquetes binarios entren en conflicto en el momento de la instalación.

Te perdiste todo el punto. No está bien tener dos binarios diferentes con el mismo nombre en $ PATH. Esto ya está causando conflictos, vea el enlace de Homebrew.

Realmente deseo que haya una solución fácil aquí.

Hay. Cambie el nombre de este binario. No anime a los demás a hacer esto por usted. Su comportamiento pasivo agresivo no es la forma de resolver este problema. No es la última vez que le harán esta pregunta desafiante.

Todos 7 comentarios

También hay una buena lectura sobre un caso similar de conflicto de nombres entre node.js y node (Programa de nodo de radio de paquetes amateur), consulte https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=614907#108 .

Su ignorancia acerca de esta colisión de nombres causará muchos dolores de cabeza a los mantenedores posteriores.

Los empaquetadores son libres de elegir un nombre diferente si lo desean. Los sistemas operativos tipo Unix tienen que crecer. No entiendo por qué los usuarios tienen que ser root para instalar un paquete dentro de su propio espacio de nombres.

Simplemente 'vamos a buscar' o copiamos el binario mc a ~ / bin y lo ejecutamos. Realmente no dependemos de rpm o dpkg para instalar paquetes de Go.

Si anima a los mantenedores posteriores a cambiar el nombre de su binario y mantener el nombre mc en la documentación, entonces debe estar preparado para enfrentar la tormenta de preguntas como:
https://askubuntu.com/questions/235655/node-js-conflicts-sbin-node-vs-usr-bin-node
https://stackoverflow.com/questions/21168141/cannot-install-packages-using-node-package-manager-in-ubuntu

Mi pregunta no es sobre rpm, deb, go get . Los usuarios prefieren instalar el paquete provisto por el repositorio en lugar de construir binarios ellos mismos. La pregunta es acerca de tener dos binarios con mc name debajo de $ PATH.

Aquí hay un pequeño fragmento del error de Debian vinculado que es muy relevante aquí:

  The Technical Committee notes that the namespace of executable
  commands on $PATH is a resource shared among everyone writing software
  for POSIX-compatible systems, and that the combinations of packages
  that users may choose to install on a given system can easily surprise
  the authors of those packages.

  The Committee advises anyone writing widely-deployed software to
  consider its command name carefully at an early stage.  It is a good
  idea to search the web for your proposed name and try to ensure that
  it is unique.  It is likely to be a bad idea to use excessively short
  names or common words.  The conflict between LinuxNode and Node.js
  demonstrates that taking a little time early on can avoid a great deal
  of tedium later.

POSIX es irrelevante para las necesidades actuales. Los sistemas operativos modernos deben admitir binarios instalados por el usuario en su propio espacio de nombres. Esta es la razón por la que nodejs, Go, Python se han alejado de los módulos de paquetes proporcionados por la distribución.

También es poco probable que los usuarios de Midnight Commander también usen mc . Está bien que los paquetes binarios entren en conflicto en el momento de la instalación.

Realmente deseo que haya una solución fácil aquí.

POSIX es irrelevante para las necesidades actuales.

Tú, yo y todos los demás lo usamos todos los días. ¿Cómo es eso irrelevante?

Los sistemas operativos modernos deben admitir binarios instalados por el usuario en su propio espacio de nombres

Ya lo están, pero esto no resuelve el caso cuando hay dos binarios en $ PATH usando el mismo nombre. Desafortunadamente, sus ilusiones no resolverán esto ahora ni en el futuro.

Esta es la razón por la que nodejs, Go, Python se han alejado de los módulos de paquetes proporcionados por la distribución.

Estás mezclando las cosas. Los lenguajes de programación nunca usaron paquetes específicos de distribución en primer lugar. Downstream los vuelve a empaquetar para que cumplan con las políticas existentes. Esto permite al usuario final instalar fácilmente cualquier paquete sin molestarse en configurar el entorno de desarrollo y construir todo desde cero.

También es poco probable que los usuarios de midnight commander también utilicen mc.

¿Qué? Soy un usuario activo de mc desde hace 12 años. Cada instancia de Mindnight Commander utiliza mc como nombre binario. Tu declaración no tiene ningún sentido.

Está bien que los paquetes binarios entren en conflicto en el momento de la instalación.

Te perdiste todo el punto. No está bien tener dos binarios diferentes con el mismo nombre en $ PATH. Esto ya está causando conflictos, vea el enlace de Homebrew.

Realmente deseo que haya una solución fácil aquí.

Hay. Cambie el nombre de este binario. No anime a los demás a hacer esto por usted. Su comportamiento pasivo agresivo no es la forma de resolver este problema. No es la última vez que le harán esta pregunta desafiante.

También es poco probable que los usuarios de midnight commander también utilicen mc.

Por favor, lea esto nuevamente.

the combinations of packages that users may choose to install
on a given system can easily surprise the authors of those packages
¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

lavvy picture lavvy  ·  15Comentarios

tru2dagame picture tru2dagame  ·  6Comentarios

i0x71 picture i0x71  ·  5Comentarios

rafaelsierra picture rafaelsierra  ·  9Comentarios

ramosisw picture ramosisw  ·  4Comentarios