Comment la chose ~ / .local / bin a-t-elle commencé? Est-il répandu?

22

Je trouve de plus en plus d'outils qui mettent les exécutables dans ~ / .local / bin. Je suis vieux et pour moi ~ / bin est la place dans mon $ HOME pour les exécutables.

D'où est née cette nouvelle mode folle? Pourquoi les gens font ça? Est-il répandu? Est-ce formalisé quelque part? Ce n'est pas dans la spécification du répertoire XDG.

Il y a une question connexe: quelles distributions ont $ HOME / .local / bin dans $ PATH?

Un commentaire à une autre question se réfère à https://www.python.org/dev/peps/pep-0370 qui l'avait déjà en 2008: pourquoi ce programme s'est-il installé dans ~ / .local / bin ... c'est le premier fois que j'ai vu cela se produire?

Thomas Koch
la source
Voici une supposition: pour éviter de gêner les gens avec la création de nombreux sous-répertoires étranges dans $ HOME, 'bin' était caché dans ~ / .local Mais que diriez-vous de ~ / Desktop et ~ / Downloads demander?
hschou
1
Ce n'est pas dans $ PATH dans Ubuntu 14.04 - mais il est là dans 16.04. Jusqu'à présent, je n'ai aucun package utilisant ce ~ / .local / bin, mais je ne pense pas qu'aucun package ait automatiquement mis les fichiers dans ~ / bin non plus. Peut-être que le principe derrière elle - peut - être les paquets ne doivent pas installer automatiquement les fichiers dans ~ / bin qui est pour l' utilisateur à utiliser?
Joe P
@hschou, bien que je sois d'accord avec vous en ce qui concerne ~ / Downloads et ~ / Desktop, je pense que cacher un répertoire contenant des binaires est une très mauvaise idée. Qu'est-ce qui était si mauvais à propos de ~ / bin ou à la longue, ~ / bin / python?
Graham Nicholls

Réponses:

8

Vous avez déjà la réponse: Python est le principal utilisateur de ~/.local. C'est le seul dont je me souvienne avoir rencontré. En Python, il a été adopté comme PEP 370 .

Le PEP 370 donne une justification de la raison pour laquelle il a ~/.localété choisi. Certaines parties sont évidentes: il devait se trouver dans le répertoire personnel de l'utilisateur, car il s'agit d'une installation par utilisateur. Ce devait être un fichier dot afin qu'il soit caché aux yeux superficiels, tout comme les autres fichiers de configuration. Le nom .localimite /usr/local.

L'emplacement avait été utilisé par FreeDesktop . Je ne connais aucune application qui l'utilise.

Gilles 'SO- arrête d'être méchant'
la source