Mc: Conflit avec le commandant de minuit

Créé le 9 sept. 2016  ·  7Commentaires  ·  Source: minio/mc

Le nom binaire est en conflit avec Midnight Commander.

J'ai lu les billets précédents concernant ce problème et évalué votre opinion. Néanmoins, je pense que vous _devriez_ éviter d'utiliser le même nom que mc . C'est bien que vous ayez cherché un nom plus court ici, mais le conflit avec d'autres noms est inacceptable. Si l'_utilisateur_ veut un nom plus court, il est libre de créer un alias dans le shell. Il y a des milliers (https://qa.debian.org/popcon.php?package=mc) d'utilisateurs qui utilisent déjà Midnight Commander.

En fait, ce cas conduit à une situation où il n'est pas possible de co-installer minio-mc et minuit commander via homebrew. Voir https://github.com/Homebrew/homebrew-core/commit/badeeeb5aced1cf9ef0cc9332453ac56a0db9df8#diff -c021a0c2c90326616e8d0c422a20d4fdR11

Je vous invite à reconsidérer le nom de ce projet.

wontfix

Commentaire le plus utile

POSIX n'est pas pertinent pour les besoins d'aujourd'hui.

Vous et moi et tout le monde l'utilisons tous les jours. En quoi est-ce sans importance ?

Les systèmes d'exploitation modernes doivent prendre en charge les binaires installés par l'utilisateur dans leur propre espace de noms

Ils le sont déjà, mais cela ne résout pas le cas où il y a deux binaires dans $PATH utilisant le même nom. Malheureusement, vos vœux pieux ne résoudront pas ce problème maintenant ou à l'avenir.

C'est la raison pour laquelle nodejs, Go, Python se sont éloignés des modules de package fournis par la distribution.

Vous mélangez les choses. Les langages de programmation n'ont jamais utilisé de packages spécifiques à une distribution en premier lieu. En aval les reconditionne afin qu'ils soient conformes aux politiques existantes. Cela permet à l'utilisateur final d'installer facilement n'importe quel package sans se soucier de configurer l'environnement de développement et de tout construire à partir de zéro.

Il est également peu probable que les utilisateurs de Midnight Commander utilisent également mc.

Quoi? Je suis un utilisateur mc actif depuis 12 ans. Chaque instance de Mindnight Commander utilise mc pour le nom binaire. Votre déclaration n'a aucun sens.

Il est normal que les packages binaires entrent en conflit au moment de l'installation.

Vous avez raté l'essentiel. Il n'est pas acceptable d'avoir deux binaires différents avec le même nom sous $PATH. Cela provoque déjà des conflits, voir le lien homebrew.

Je souhaite vraiment qu'il y ait une solution facile ici.

Il y a. Changez le nom de ce binaire. N'encouragez pas tout le monde à le faire pour vous. Votre comportement passif agressif n'est pas le moyen de résoudre ce problème. Ce n'est pas la dernière fois qu'on vous posera cette question osée.

Tous les 7 commentaires

Il existe également une bonne lecture sur un cas similaire de conflit de noms entre node.js et node (Amateur Packet Radio Node Program), voir https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=614907#108 .

Votre ignorance de cette collision de noms causera beaucoup de maux de tête aux mainteneurs en aval.

Les emballeurs sont libres de choisir un nom différent s'ils le souhaitent. Les systèmes d'exploitation comme Unix doivent grandir. Je ne comprends pas pourquoi les utilisateurs doivent être root pour installer un package dans son propre espace de nom.

Nous allons simplement « aller chercher » ou copier le binaire mc dans ~/bin et exécuter. Nous ne dépendons pas vraiment de rpm ou de dpkg pour installer les packages Go.

Si vous encouragez les responsables en aval à renommer votre binaire et à conserver le nom mc dans la documentation, alors vous devez être prêt à faire face à la tempête de questions telles que :
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

Ma question ne concerne pas rpm, deb, go get . Les utilisateurs préfèrent installer le package fourni par le référentiel plutôt que de créer eux-mêmes le binaire. La question est d'avoir deux binaires avec le nom mc sous $PATH.

Voici un petit extrait du bogue Debian lié qui est très pertinent ici :

  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 n'est pas pertinent pour les besoins d'aujourd'hui. Les systèmes d'exploitation modernes doivent prendre en charge les binaires installés par l'utilisateur dans leur propre espace de noms. C'est la raison pour laquelle nodejs, Go, Python se sont éloignés des modules de package fournis par la distribution.

Il est également peu probable que les utilisateurs de Midnight Commander utilisent également mc . Il est normal que les packages binaires entrent en conflit au moment de l'installation.

Je souhaite vraiment qu'il y ait une solution facile ici.

POSIX n'est pas pertinent pour les besoins d'aujourd'hui.

Vous et moi et tout le monde l'utilisons tous les jours. En quoi est-ce sans importance ?

Les systèmes d'exploitation modernes doivent prendre en charge les binaires installés par l'utilisateur dans leur propre espace de noms

Ils le sont déjà, mais cela ne résout pas le cas où il y a deux binaires dans $PATH utilisant le même nom. Malheureusement, vos vœux pieux ne résoudront pas ce problème maintenant ou à l'avenir.

C'est la raison pour laquelle nodejs, Go, Python se sont éloignés des modules de package fournis par la distribution.

Vous mélangez les choses. Les langages de programmation n'ont jamais utilisé de packages spécifiques à une distribution en premier lieu. En aval les reconditionne afin qu'ils soient conformes aux politiques existantes. Cela permet à l'utilisateur final d'installer facilement n'importe quel package sans se soucier de configurer l'environnement de développement et de tout construire à partir de zéro.

Il est également peu probable que les utilisateurs de Midnight Commander utilisent également mc.

Quoi? Je suis un utilisateur mc actif depuis 12 ans. Chaque instance de Mindnight Commander utilise mc pour le nom binaire. Votre déclaration n'a aucun sens.

Il est normal que les packages binaires entrent en conflit au moment de l'installation.

Vous avez raté l'essentiel. Il n'est pas acceptable d'avoir deux binaires différents avec le même nom sous $PATH. Cela provoque déjà des conflits, voir le lien homebrew.

Je souhaite vraiment qu'il y ait une solution facile ici.

Il y a. Changez le nom de ce binaire. N'encouragez pas tout le monde à le faire pour vous. Votre comportement passif agressif n'est pas le moyen de résoudre ce problème. Ce n'est pas la dernière fois qu'on vous posera cette question osée.

Il est également peu probable que les utilisateurs de Midnight Commander utilisent également mc.

Veuillez relire ceci.

the combinations of packages that users may choose to install
on a given system can easily surprise the authors of those packages
Cette page vous a été utile?
0 / 5 - 0 notes